; Auto-commit of ChangeLog files.
[emacs.git] / ChangeLog.2
blob07a6c0eeff9eaaad6181e8800301b2cab854f593
1 2015-12-03  Glenn Morris  <rgm@gnu.org>
3         * Makefile.in: Avoid duplication.
5         (have-tests): New rule.
6         (check, check-maybe): Use it.
8 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
10         make check unconditional, check-maybe top-level.
12          * Makefile.in: Add check-maybe target.
13          * test/Makefile.in: Restore unconditional behaviour to make check.
15 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
17         Tests now support out-of-source-build.
19          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
20            about current working directory.
22 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
24         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
26 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
28         Improve documentation and clean up.
30          * test/Makefile.in: Improve documentation, use EMACS variable
31            correctly, and clean up makefile rules.
33 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
35         Update file headers for name change.
37          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
39 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
41         Test files renamed to new scheme.
43          * (finalizer-tests.el): Now renamed alloc-tests.el
44          * (zlib-tests.el): Now renamed decompress-tests.el.
46 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
48         Tests now depend on source files
50          * test/Makefile.in: Include dependences from tests to source files.
51          * test/make-test-deps.emacs-lisp: New file
52          * .gitignore: Ignore generated make include file
54 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
56         * lisp/progmodes/which-func.el: Improve disabling the mode
58         Use lexical-binding.
59         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
60         (which-func, which-func-format): Remove redundant :group arg.
61         (which-func-try-to-enable): New function.
62         (which-func-ff-hook, which-function-mode): Use it.
63         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
64         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
66 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
68         * lisp/calculator.el (calculator-define-key): Silence warning
70         ...about unknown calculator-mode-map.
72 2015-11-29  Eli Barzilay  <eli@barzilay.org>
74         * lisp/calculator.el: more improvements and bugfixes.
76         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
77           effect anyway.)
79         - Simplify `calculator-number-to-string' by throwing most of the work
80           onto `number-to-string', leaving just some tweaks for decimal inputs.
81           This leads to some minor changes, for example, pasting "1x1" in hex
82           mode would warn that "x" is ignored and result in "11" (and it wasn't
83           done in decimal mode), whereas now it just ignores everything from the
84           "x" and on and result in a "1" just like in decimal input mode.  Also,
85           overflows are left for `number-to-string' to deal with.
87         - `calculator-paste' is very simple as a result.
89         - Extend the simplified `calculator-paste': with a prefix argument it
90           pastes a string as if the characters were entered.  This can be used
91           to reduce expressions, but note that it's a simple literal operation,
92           so precedence can be messed, a number can be paster while entering a
93           number, spaces and newlines matter, etc.
95         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
96           operator.
98         - Fix a bug in `calculator-put-value': avoid grouping in the display
99           that is used to construct `calculator-curnum'.  This would trigger
100           when pasting or getting a value from a register in some radix mode
101           with a large enough value.  Another fix: make the output radix equal
102           the input one, otherwise numbers could be converted twice.
104 2015-11-29  Eli Barzilay  <eli@barzilay.org>
106         * lisp/calculator.el: Re-do key bindings.
108         Use a helper function that arranges a parent keymap that binds alternate
109         case keys so if some letter key is unbound and it's un/shifted version
110         is, it will get used.  This makes the global-map trickery unnecessary.
112         Also switch to passing strings that name keys through `kbd'.
114 2015-11-29  Eli Barzilay  <eli@barzilay.org>
116         * lisp/calculator.el: improve radix modes
118         Fix prompt for some input radix with decimal output (eg, "BD" instead of
119         the incorrect "B="); also, some minor docstring tweaks for these.
121 2015-11-29  Eli Barzilay  <eli@barzilay.org>
123         * lisp/calculator.el: better reading of register names
125         Use `register-read-with-preview' with a dynamically bound
126         `register-alist' and a proper preview function to read register names.
128 2015-11-29  Eli Barzilay  <eli@barzilay.org>
130         * lisp/calculator.el: General improvements
132         Use things like `when', `unless', and `push'.
134         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
135         non-electric mode.
137 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
139         Fix a problem with gfilenotify in filenotify-tests.el
141         * test/lisp/filenotify-tests.el
142         (file-notify--test-expected-events): Remove.
143         (file-notify--test-cleanup): Do not set that variable.
144         (file-notify--test-with-events): EVENTS can also be a list of lists.
145         (file-notify-test02-events, file-notify-test04-file-validity):
146         Adapt expected result.
148 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
150         * .gitignore: Adjust to changes in 'test' directory structure.
152 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
154         Fix test/manual/etags/Makefile
156         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
157         changes in 'test' directory structure.
159 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
161         Exclude resource dirs from search for tests.
163         * test/Makefile.in: Test file locations are now found with find
164           rather than using finds native functions.
166 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
168         Add test targets without directory names.
170          * (test/Makefile.in): Extend test_template to add two targets for each
171            file.
173 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
175         * lisp/emacs-lisp/package.el: Require url-handlers
177 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
179         Move elisp-mode-tests to new function names.
181          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
182          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
184 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
186         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
188 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
190         Merge branch 'feature/standard-test-location'
192 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
194         * lisp/emacs-lisp/eieio.el: Add some default implementations
196         (standard-class): Mark it obsolete.
197         (slot-missing): Give it a default implementation.
198         (destructor): Simplify and mark it obsolete.
199         (object-print): Give it a default implementation.
200         (eieio-change-class): Rename from change-class.
201         (change-class): Redefine as obsolete alias.
203 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
205         Some final fixes in file notification before merging with master
207         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
208         (file-notify-callback): Improve check for `stopped' event.  Call
209         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
210         (file-notify-add-watch): In case FILE is not a directory, call the
211         file monitor for the kqueue backend.  Otherwise, call the
212         directory monitor for the upper directory.
214         * src/inotify.c (inotifyevent_to_event): Extract file name from
215         watch_object if the event doesn't provide it.
216         (Finotify_add_watch): Add file name to watch_object.
218         * test/automated/file-notify-tests.el (file-notify--test-timeout):
219         Use different timeouts for different libraries.
220         (file-notify--test-with-events): Suppress lock files.  Flush
221         outstanding events before running the body.
222         (file-notify-test02-events, file-notify-test04-file-validity): Do
223         not skip cygwin tests.  Add additional test for file creation.
224         Adapt expected result for different backends.
225         (file-notify-test03-autorevert): Some of the tests don't work for
226         w32notify.
227         (file-notify-test06-many-events): Rename into both directions.
229 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
231         Rework file notifications, kqueue has problems with directory monitors
233         * lisp/filenotify.el (file-notify-add-watch): Call the native
234         add-watch function on the file, not on the dir.
236         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
237         about already deleted entries.
239         * test/automated/auto-revert-tests.el
240         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
241         since this deletes the target file first.
243         * test/automated/file-notify-tests.el (file-notify--test-event-test):
244         Make stronger checks.
245         (file-notify-test01-add-watch, file-notify-test02-events)
246         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
247         Rewrite in order to call file monitors but directory monitors.
248         (file-notify-test06-many-events): Ler rename work in both directions.
250 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
252         Continue with pending events
254         * src/kqueue.c (pending_events): Remove global variable.
255         (kqueue_compare_dir_list): Create `write' event for not used
256         pending events.
257         (globals_of_kqueue): Remove initialization of pending_events.
259 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
261         Improve loops in file-notify-test06-many-events
263         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
264         Use `read-event' pauses for the `write-file' loops; otherwise
265         events are lost in inotify and gfilenotify cases.
267 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
269         Handle more complex rename operation in kqueue
271         * src/kqueue.c (pending_events): New variable.
272         (kqueue_compare_dir_list): Handle more complex rename operation.
273         (globals_of_kqueue): Initialize pending_events.
275         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
276         Adapt expected events in the `rename-file' case.
277         (file-notify-test06-many-events-remote): Declare.
279 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
281         New test with a larger number of events
283         * test/automated/file-notify-tests.el (file-notify--test-with-events):
284         Make timeout heuristically depend on the number of events.
286         (file-notify-test06-many-events): Use it for new test.
288 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
290         Further fixes for kqueue
292         * lisp/filenotify.el (file-notify-callback): Raise also event if
293         directory name matches.
294         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
296         * src/kqueue.c (kqueue_generate_event): Use watch_object as
297         argument instead of ident.  Remove callback argument.  Adapt
298         callees.  Check actions whether they are monitored flags.
300         * test/automated/file-notify-tests.el (file-notify--test-library):
301         New defun.
302         (file-notify-test00-availability, file-notify-test02-events)
303         (file-notify-test04-file-validity)
304         (file-notify-test05-dir-validity): Use it.
305         (file-notify-test02-events, file-notify-test04-file-validity): Add
306         `read-event' calls between different file actions, in order to
307         give the backends a chance to rais an event.  Needed especially
308         for kqueue.  In case of deleting a directory, there are two
309         `deleted' events.
311 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
313         Code cleanup of kqueue.c
315         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
316         (kqueue_compare_dir_list): Do not loop when calling
317         directory_files_internal.  Remove checks for "." and "..", this is
318         done in kqueue_directory_listing now.
319         (Fkqueue_add_watch): Check for proper emacs_open flags.
321 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
323         Doc changes for kqueue
325         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
326         Fix some glitches in the example.
328 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
330         Finish implementation in kqueue.c
332         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
333         Simplify access to list.
334         (kqueue_compare_dir_list): Simplify access to list.  Raise
335         `delete' event if directory does not exist any longer.  Otherwise,
336         wait until directory contents has changed.  Fix error in check.
338 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
340         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
342 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
344         More work on kqueue
346         * lisp/filenotify.el (file-notify-callback): Handle also the
347         `rename' event from kqueue.
348         (file-notify-add-watch): Do not register an entry twice.
350         * src/kqueue.c (kqueue_directory_listing): New function.
351         (kqueue_generate_event): New argument FILE1.  Adapt callees.
352         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
354 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
356         Implement directory events
358         * lisp/filenotify.el (file-notify-handle-event)
359         (file-notify-callback): Remove traces.
361         * src/kqueue.c: Include <sys/time.h>.
362         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
363         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
364         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
365         Compute initial directory listing.  Close file descriptor in case
366         of errors.
367         (syms_of_kqueue): Declare Qcreate.
369 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
371         Build fixes for kqueue support
373         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
374         flag.
376         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
377         kqueue on *BSD.
379 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
381         Continue kqueue implementation
383         * lisp/filenotify.el (file-notify-handle-event)
384         (file-notify-callback): Enable trace messages.
386         * src/kqueue.c: Include also <sys/types.h>.
387         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
388         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
389         (syms_of_kqueue): Add them.
391 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
393         Work on kqueue
395         * lisp/filenotify.el (file-notify--library)
396         (file-notify-descriptors, file-notify-callback)
397         (file-notify-add-watch, file-notify-rm-watch)
398         (file-notify-valid-p): Add kqueue support.
400         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
402 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
404         Add kqueue support
406         * configure.ac (--with-file-notification): Add kqueue.
407         (top): Remove special test for "${HAVE_NS}" and
408         ${with_file_notification}, this is handled inside gfilenotify
409         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
410         instead of library specific variables.
412         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
414         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
416         * src/kqueue.c: New file.
418         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
420 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
422         Update elisp-mode-tests for changed file location.
424          * test/lisp/progmodes/elisp-mode-tests.el:
426 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
428         Exclude manual tests from Makefile
430          * test/Makefile.in:
432 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
434         Move package test files to new directory.
436          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
437          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
439 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
441         Restore delete Makefiles and fix .gitignore.
443          * .gitignore: Update Makefiles to changed locations
444          * test/lisp/progmodes/flymake-resources/Makefile,
445            test/manual/etags/Makefile,
446            test/manual/etags/make-src/Makefile,
447            test/manual/indent/Makefile: Restored and moved to new location.
449 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
451         Test infrastructure: updates after directory move
453          * (test/Makefile.in): Support directories several levels deep.
454          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
455          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
457 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
459         Rename all test files to reflect source layout.
461          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
462            test directory moves.
463          * test/file-organisation.org: New file.
464          * test/automated/Makefile.in
465            test/automated/data/decompress/foo.gz
466            test/automated/data/epg/pubkey.asc
467            test/automated/data/epg/seckey.asc
468            test/automated/data/files-bug18141.el.gz
469            test/automated/data/flymake/test.c
470            test/automated/data/flymake/test.pl
471            test/automated/data/package/archive-contents
472            test/automated/data/package/key.pub
473            test/automated/data/package/key.sec
474            test/automated/data/package/multi-file-0.2.3.tar
475            test/automated/data/package/multi-file-readme.txt
476            test/automated/data/package/newer-versions/archive-contents
477            test/automated/data/package/newer-versions/new-pkg-1.0.el
478            test/automated/data/package/newer-versions/simple-single-1.4.el
479            test/automated/data/package/package-test-server.py
480            test/automated/data/package/signed/archive-contents
481            test/automated/data/package/signed/archive-contents.sig
482            test/automated/data/package/signed/signed-bad-1.0.el
483            test/automated/data/package/signed/signed-bad-1.0.el.sig
484            test/automated/data/package/signed/signed-good-1.0.el
485            test/automated/data/package/signed/signed-good-1.0.el.sig
486            test/automated/data/package/simple-depend-1.0.el
487            test/automated/data/package/simple-single-1.3.el
488            test/automated/data/package/simple-single-readme.txt
489            test/automated/data/package/simple-two-depend-1.1.el
490            test/automated/abbrev-tests.el
491            test/automated/auto-revert-tests.el
492            test/automated/calc-tests.el
493            test/automated/icalendar-tests.el
494            test/automated/character-fold-tests.el
495            test/automated/comint-testsuite.el
496            test/automated/descr-text-test.el
497            test/automated/electric-tests.el
498            test/automated/cl-generic-tests.el
499            test/automated/cl-lib-tests.el
500            test/automated/eieio-test-methodinvoke.el
501            test/automated/eieio-test-persist.el
502            test/automated/eieio-tests.el
503            test/automated/ert-tests.el
504            test/automated/ert-x-tests.el
505            test/automated/generator-tests.el
506            test/automated/let-alist.el
507            test/automated/map-tests.el
508            test/automated/advice-tests.el
509            test/automated/package-test.el
510            test/automated/pcase-tests.el
511            test/automated/regexp-tests.el
512            test/automated/seq-tests.el
513            test/automated/subr-x-tests.el
514            test/automated/tabulated-list-test.el
515            test/automated/thunk-tests.el
516            test/automated/timer-tests.el
517            test/automated/epg-tests.el
518            test/automated/eshell.el
519            test/automated/faces-tests.el
520            test/automated/file-notify-tests.el
521            test/automated/auth-source-tests.el
522            test/automated/gnus-tests.el
523            test/automated/message-mode-tests.el
524            test/automated/help-fns.el
525            test/automated/imenu-test.el
526            test/automated/info-xref.el
527            test/automated/mule-util.el
528            test/automated/isearch-tests.el
529            test/automated/json-tests.el
530            test/automated/bytecomp-tests.el
531            test/automated/coding-tests.el
532            test/automated/core-elisp-tests.el
533            test/automated/decoder-tests.el
534            test/automated/files.el
535            test/automated/font-parse-tests.el
536            test/automated/lexbind-tests.el
537            test/automated/occur-tests.el
538            test/automated/process-tests.el
539            test/automated/syntax-tests.el
540            test/automated/textprop-tests.el
541            test/automated/undo-tests.el
542            test/automated/man-tests.el
543            test/automated/completion-tests.el
544            test/automated/dbus-tests.el
545            test/automated/newsticker-tests.el
546            test/automated/sasl-scram-rfc-tests.el
547            test/automated/tramp-tests.el
548            test/automated/obarray-tests.el
549            test/automated/compile-tests.el
550            test/automated/elisp-mode-tests.el
551            test/automated/f90.el
552            test/automated/flymake-tests.el
553            test/automated/python-tests.el
554            test/automated/ruby-mode-tests.el
555            test/automated/subword-tests.el
556            test/automated/replace-tests.el
557            test/automated/simple-test.el
558            test/automated/sort-tests.el
559            test/automated/subr-tests.el
560            test/automated/reftex-tests.el
561            test/automated/sgml-mode-tests.el
562            test/automated/tildify-tests.el
563            test/automated/thingatpt.el
564            test/automated/url-future-tests.el
565            test/automated/url-util-tests.el
566            test/automated/add-log-tests.el
567            test/automated/vc-bzr.el
568            test/automated/vc-tests.el
569            test/automated/xml-parse-tests.el
570            test/BidiCharacterTest.txt
571            test/biditest.el
572            test/cedet/cedet-utests.el
573            test/cedet/ede-tests.el
574            test/cedet/semantic-ia-utest.el
575            test/cedet/semantic-tests.el
576            test/cedet/semantic-utest-c.el
577            test/cedet/semantic-utest.el
578            test/cedet/srecode-tests.el
579            test/cedet/tests/test.c
580            test/cedet/tests/test.el
581            test/cedet/tests/test.make
582            test/cedet/tests/testdoublens.cpp
583            test/cedet/tests/testdoublens.hpp
584            test/cedet/tests/testfriends.cpp
585            test/cedet/tests/testjavacomp.java
586            test/cedet/tests/testnsp.cpp
587            test/cedet/tests/testpolymorph.cpp
588            test/cedet/tests/testspp.c
589            test/cedet/tests/testsppcomplete.c
590            test/cedet/tests/testsppreplace.c
591            test/cedet/tests/testsppreplaced.c
592            test/cedet/tests/testsubclass.cpp
593            test/cedet/tests/testsubclass.hh
594            test/cedet/tests/testtypedefs.cpp
595            test/cedet/tests/testvarnames.c
596            test/etags/CTAGS.good
597            test/etags/ETAGS.good_1
598            test/etags/ETAGS.good_2
599            test/etags/ETAGS.good_3
600            test/etags/ETAGS.good_4
601            test/etags/ETAGS.good_5
602            test/etags/ETAGS.good_6
603            test/etags/a-src/empty.zz
604            test/etags/a-src/empty.zz.gz
605            test/etags/ada-src/2ataspri.adb
606            test/etags/ada-src/2ataspri.ads
607            test/etags/ada-src/etags-test-for.ada
608            test/etags/ada-src/waroquiers.ada
609            test/etags/c-src/a/b/b.c
610            test/etags/c-src/abbrev.c
611            test/etags/c-src/c.c
612            test/etags/c-src/dostorture.c
613            test/etags/c-src/emacs/src/gmalloc.c
614            test/etags/c-src/emacs/src/keyboard.c
615            test/etags/c-src/emacs/src/lisp.h
616            test/etags/c-src/emacs/src/regex.h
617            test/etags/c-src/etags.c
618            test/etags/c-src/exit.c
619            test/etags/c-src/exit.strange_suffix
620            test/etags/c-src/fail.c
621            test/etags/c-src/getopt.h
622            test/etags/c-src/h.h
623            test/etags/c-src/machsyscalls.c
624            test/etags/c-src/machsyscalls.h
625            test/etags/c-src/sysdep.h
626            test/etags/c-src/tab.c
627            test/etags/c-src/torture.c
628            test/etags/cp-src/MDiagArray2.h
629            test/etags/cp-src/Range.h
630            test/etags/cp-src/burton.cpp
631            test/etags/cp-src/c.C
632            test/etags/cp-src/clheir.cpp.gz
633            test/etags/cp-src/clheir.hpp
634            test/etags/cp-src/conway.cpp
635            test/etags/cp-src/conway.hpp
636            test/etags/cp-src/fail.C
637            test/etags/cp-src/functions.cpp
638            test/etags/cp-src/screen.cpp
639            test/etags/cp-src/screen.hpp
640            test/etags/cp-src/x.cc
641            test/etags/el-src/TAGTEST.EL
642            test/etags/el-src/emacs/lisp/progmodes/etags.el
643            test/etags/erl-src/gs_dialog.erl
644            test/etags/f-src/entry.for
645            test/etags/f-src/entry.strange.gz
646            test/etags/f-src/entry.strange_suffix
647            test/etags/forth-src/test-forth.fth
648            test/etags/html-src/algrthms.html
649            test/etags/html-src/index.shtml
650            test/etags/html-src/software.html
651            test/etags/html-src/softwarelibero.html
652            test/etags/lua-src/allegro.lua
653            test/etags/objc-src/PackInsp.h
654            test/etags/objc-src/PackInsp.m
655            test/etags/objc-src/Subprocess.h
656            test/etags/objc-src/Subprocess.m
657            test/etags/objcpp-src/SimpleCalc.H
658            test/etags/objcpp-src/SimpleCalc.M
659            test/etags/pas-src/common.pas
660            test/etags/perl-src/htlmify-cystic
661            test/etags/perl-src/kai-test.pl
662            test/etags/perl-src/yagrip.pl
663            test/etags/php-src/lce_functions.php
664            test/etags/php-src/ptest.php
665            test/etags/php-src/sendmail.php
666            test/etags/prol-src/natded.prolog
667            test/etags/prol-src/ordsets.prolog
668            test/etags/ps-src/rfc1245.ps
669            test/etags/pyt-src/server.py
670            test/etags/tex-src/gzip.texi
671            test/etags/tex-src/nonewline.tex
672            test/etags/tex-src/testenv.tex
673            test/etags/tex-src/texinfo.tex
674            test/etags/y-src/atest.y
675            test/etags/y-src/cccp.c
676            test/etags/y-src/cccp.y
677            test/etags/y-src/parse.c
678            test/etags/y-src/parse.y
679            test/indent/css-mode.css
680            test/indent/js-indent-init-dynamic.js
681            test/indent/js-indent-init-t.js
682            test/indent/js-jsx.js
683            test/indent/js.js
684            test/indent/latex-mode.tex
685            test/indent/modula2.mod
686            test/indent/nxml.xml
687            test/indent/octave.m
688            test/indent/pascal.pas
689            test/indent/perl.perl
690            test/indent/prolog.prolog
691            test/indent/ps-mode.ps
692            test/indent/ruby.rb
693            test/indent/scheme.scm
694            test/indent/scss-mode.scss
695            test/indent/sgml-mode-attribute.html
696            test/indent/shell.rc
697            test/indent/shell.sh
698            test/redisplay-testsuite.el
699            test/rmailmm.el
700            test/automated/buffer-tests.el
701            test/automated/cmds-tests.el
702            test/automated/data-tests.el
703            test/automated/finalizer-tests.el
704            test/automated/fns-tests.el
705            test/automated/inotify-test.el
706            test/automated/keymap-tests.el
707            test/automated/print-tests.el
708            test/automated/libxml-tests.el
709            test/automated/zlib-tests.el: Files Moved.
711 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
713         Rework file notifications, kqueue has problems with directory monitors
715         * lisp/filenotify.el (file-notify-add-watch): Call the native
716         add-watch function on the file, not on the dir.
718         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
719         about already deleted entries.
721         * test/automated/auto-revert-tests.el
722         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
723         since this deletes the target file first.
725         * test/automated/file-notify-tests.el (file-notify--test-event-test):
726         Make stronger checks.
727         (file-notify-test01-add-watch, file-notify-test02-events)
728         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
729         Rewrite in order to call file monitors but directory monitors.
730         (file-notify-test06-many-events): Ler rename work in both directions.
732 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
734         Continie with pending events
736         * src/kqueue.c (pending_events): Remove global variable.
737         (kqueue_compare_dir_list): Create `write' event for not used
738         pending events.
739         (globals_of_kqueue): Remove initialization of pending_events.
741 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
743         Improve loops in file-notify-test06-many-events
745         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
746         Use `read-event' pauses for the `write-file' loops; otherwise
747         events are lost in inotify and gfilenotify cases.
749 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
751         Handle more complex rename operation in kqueue
753         * src/kqueue.c (pending_events): New variable.
754         (kqueue_compare_dir_list): Handle more complex rename operation.
755         (globals_of_kqueue): Initialize pending_events.
757         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
758         Adapt expected events in the `rename-file' case.
759         (file-notify-test06-many-events-remote): Declare.
761 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
763         New test with a larger number of events.
765         * test/automated/file-notify-tests.el (file-notify--test-with-events):
766         Make timeout heuristically depend on the number of events.
768         (file-notify-test06-many-events): Use it for new test.
770 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
772         Further fixes for kqueue.
774         * lisp/filenotify.el (file-notify-callback): Raise also event if
775         directory name matches.
776         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
778         * src/kqueue.c (kqueue_generate_event): Use watch_object as
779         argument instead of ident.  Remove callback argument.  Adapt
780         callees.  Check actions whether they are monitored flags.
782         * test/automated/file-notify-tests.el (file-notify--test-library):
783         New defun.
784         (file-notify-test00-availability, file-notify-test02-events)
785         (file-notify-test04-file-validity)
786         (file-notify-test05-dir-validity): Use it.
787         (file-notify-test02-events, file-notify-test04-file-validity): Add
788         `read-event' calls between different file actions, in order to
789         give the backends a chance to rais an event.  Needed especially
790         for kqueue.  In case of deleting a directory, there are two
791         `deleted' events.
793 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
795         Code cleanup of kqueue.c
797         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
798         (kqueue_compare_dir_list): Do not loop when calling
799         directory_files_internal.  Remove checks for "." and "..", this is
800         done in kqueue_directory_listing now.
801         (Fkqueue_add_watch): Check for proper emacs_open flags.
803 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
805         Doc changes for kqueue
807         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
808         Fix some glitches in the example.
810 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
812         Finish implementation in kqueue.c
814         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
815         Simplify access to list.
816         (kqueue_compare_dir_list): Simplify access to list.  Raise
817         `delete' event if directory does not exist any longer.  Otherwise,
818         wait until directory contents has changed.  Fix error in check.
820 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
822         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
824 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
826         More work on kqueue
828         * lisp/filenotify.el (file-notify-callback): Handle also the
829         `rename' event from kqueue.
830         (file-notify-add-watch): Do not register an entry twice.
832         * src/kqueue.c (kqueue_directory_listing): New function.
833         (kqueue_generate_event): New argument FILE1.  Adapt callees.
834         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
836 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
838         Implement directory events
840         * lisp/filenotify.el (file-notify-handle-event)
841         (file-notify-callback): Remove traces.
843         * src/kqueue.c: Include <sys/time.h>.
844         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
845         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
846         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
847         Compute initial directory listing.  Close file descriptor in case
848         of errors.
849         (syms_of_kqueue): Declare Qcreate.
851 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
853         Build fixes for kqueue support.
855         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
856         flag.
858         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
859         kqueue on *BSD.
861 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
863         Continue kqueue implementation
865         * lisp/filenotify.el (file-notify-handle-event)
866         (file-notify-callback): Enable trace messages.
868         * src/kqueue.c: Include also <sys/types.h>.
869         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
870         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
871         (syms_of_kqueue): Add them.
873 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
875         Work on kqueue
877         * lisp/filenotify.el (file-notify--library)
878         (file-notify-descriptors, file-notify-callback)
879         (file-notify-add-watch, file-notify-rm-watch)
880         (file-notify-valid-p): Add kqueue support.
882         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
884 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
886         Add kqueue support
888         * configure.ac (--with-file-notification): Add kqueue.
889         (top): Remove special test for "${HAVE_NS}" and
890         ${with_file_notification}, this is handled inside gfilenotify
891         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
892         instead of library specific variables.
894         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
896         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
898         * src/kqueue.c: New file.
900         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
902 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
904         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
906         * verilog-mode.el (verilog-save-font-no-change-functions):
907         Commentary and fix pre-Emacs 21 behavior.
909 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
911         Use obarray functions from obarray.
913         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
914           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
915           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
916           delegate to obarray.el functions.
917         * lisp/loadup.el: load obarray before abbrev
918         * test/automated/abbrev-tests.el: new tests
920 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
922         epa.el: Add option to replace original text
924         * lisp/epa.el (epa-replace-original-text): New user option.
925         (Bug#21947)
927 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
929         Add interactive seek command.
931         * lisp/mpc.el (mpc-cmd-seekcur): New function.
932         (mpc-seek-current): New command.
933         (mpc-mode-menu): Add entry for mpc-seek-current
934         (mpc-mode-map): Bind mpc-seek-current to "g"
936 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
938         Fix issue where a new tempfile was created every refresh
940         * lisp/mpc.el (mpc-format): Leave dir as relative path
942 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
944         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
946         (c-save-buffer-state): Use with-silent-modifications when available.
947         (c--macroexpand-all): Check macroexpand-all directly rather than
948         c--mapcan-status.
950 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
952         * lisp/loadup.el: Set max-lisp-eval-depth here
954         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
955         (BYTE_COMPILE_FLAGS): Adjust accordingly.
957 2015-11-17  João Távora  <joaotavora@gmail.com>
959         Minor fix to comment indentation and typo in last commit
961         * linum.el (linum-update-window): Fix comment indentation and a
962         typo.
964 2015-11-17  João Távora  <joaotavora@gmail.com>
966         linum-mode plays more nicely with other margin-setting extensions
968         linum.el will only modify the left margin if it needs to, and will
969         only reset the it back to 0 if it guesses that no-one has touched that
970         margin in the meantime.
972         As such, this is a more of a workaround than an actual fix, but fixes
973         the problems described in bug#20674 regarding the interaction with
974         modes such as darkroom-mode and olivetti-mode.
976         A similar fix was commited to nlinum.el in ELPA.git's
977         e7f5f549fbfb740b911fb7f33b42381ecece56d8
979         * linum.el (linum-delete-overlays): Restore margins more
980         criteriously.
981         (linum-update-window): Set margins more criteriously.
983 2015-11-16  Daiki Ueno  <ueno@gnu.org>
985         * lisp/image-mode.el: Support encrypted file
987         (image-toggle-display-image): Read content from the buffer instead
988         of the file, if the buffer holds a decrypted data.  (Bug#21870)
990 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
992         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
994 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
996         * lisp/emacs-lisp/package.el: Fix a decoding issue
998         (package--with-response-buffer): Use `url-insert-buffer-contents'.
999         The previous code had some issues with decoding. Refactoring that
1000         function allows us to use the decoding from url-handlers while still
1001         treating both sync and async requests the same.
1003         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
1004         `url-insert-buffer-contents'.
1005         (url-insert-buffer-contents): New function
1007 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1009         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
1011         (package--with-work-buffer-async): Reimplement as
1012         `package--with-response-buffer'.
1013         (package--with-work-buffer): Mark obsolete.
1014         (package--with-response-buffer): New macro. This is a more self
1015         contained and less contrived version of
1016         `package--with-work-buffer-async'.  It uses keyword arguments,
1017         doesn't have async on the name, doesn't fallback on
1018         `package--with-work-buffer', and has _much_ simpler error
1019         handling.
1021         (package--check-signature, package--download-one-archive)
1022         (package-install-from-archive, describe-package-1): Use it.
1024         (package--download-and-read-archives): Let
1025         `package--download-one-archive' take care of calling
1026         `package--update-downloads-in-progress'.
1028 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
1030         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
1032         (verilog-save-buffer-state): Use with-silent-modifications when available.
1033         (verilog-save-font-no-change-functions): Don't bind
1034         before/after-change-functions if it's not needed.
1036 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1038         * CONTRIBUTE: Remove information about feature freeze.
1040         Merge branch 'release-process-lowercase'
1042 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1044         Document the release process
1046         * admin/notes/versioning: Add information about RC releases.
1047         * admin/release-process: Document the release process.
1048         * admin/authors.el (authors-ignored-files):
1049         * admin/README: Change FOR-RELEASE to release-process.
1050         * CONTRIBUTE:
1051         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
1053 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1055         * admin/release-process: Rename from admin/FOR-RELEASE.
1057 2015-11-14  David Engster  <deng@randomsample.de>
1059         gitmerge: Fix git log command
1061         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
1062         only want commits from the branch that is to be merged.
1063         (gitmerge-setup-log-buffer): Use the same symmetric range as in
1064         `gitmerge-missing'.
1066 2015-11-14  David Engster  <deng@randomsample.de>
1068         gitmerge: Try to detect cherry-picks
1070         * admin/gitmerge.el (gitmerge-default-branch): Change to
1071         origin/emacs-25.
1072         (gitmerge-missing): Use symmetric difference ('...') between
1073         branch and master so that cherry-picks can be detected.
1075 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
1077         Increment Emacs version on master branch
1079         * lisp/cus-edit.el (customize-changed-options-previous-release):
1080         Increase previous version to 24.5.
1082         * configure.ac:
1083         * msdos/sed2v2.inp: Bump version to 25.1.50.
1085 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1087         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
1088         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
1089         * README: Mention CONTRIBUTE.
1091 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
1093         Update verilog-mode.el to 2015-11-09-b121d60-vpo
1095         * verilog-mode.el (verilog-auto, verilog-delete-auto)
1096         (verilog-modi-cache-results, verilog-save-buffer-state)
1097         (verilog-save-font-no-change-functions): When internally suppressing
1098         change functions, use `inhibit-modification-hooks' and call
1099         `after-change-funtions' to more nicely work with user hooks.
1100         Reported by Stefan Monnier.
1101         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
1102         Create `verilog-delete-auto-buffer' to avoid double-calling
1103         fontification hooks.
1104         (verilog-restore-buffer-modified-p, verilog-auto)
1105         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
1106         set-buffer-modified-p.  Reported by Stefan Monnier.
1107         (verilog-diff-auto, verilog-diff-buffers-p)
1108         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
1109         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
1110         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
1111         by Amol Nagapurkar.
1112         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
1113         properties inside internal structures.  No functional change
1114         intended.
1116 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1118         Use generic dispatch for xref backends
1120         * lisp/progmodes/xref.el (xref-backend-functions):
1121         New variable.
1122         (xref-find-function): Remove.
1123         (xref-find-backend)
1124         (xref--etags-backend): New functions.
1125         (xref-identifier-at-point-function)
1126         (xref-identifier-completion-table-function): Remove.
1127         (xref-backend-definitions, xref-backend-references)
1128         (xref-backend-apropos, xref-backend-identifier-at-point)
1129         (xref-backend-identifier-completion-table):
1130         New generic functions.
1132         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
1133         Add `elisp--xref-backend' to the beginning of
1134         `xref-backend-functions', locally.  Delete references to
1135         removed functions and vars.
1136         (elisp-xref-find): Remove.
1137         (elisp--xref-backend): New function.
1138         (elisp--xref-find-references, elisp--xref-find-apropos)
1139         (elisp--xref-identifier-completion-table):
1140         Turn into appropriately named generic methods.
1142         * lisp/progmodes/etags.el (etags-xref-find): Remove.
1143         (xref-backend-identifier-completion-table)
1144         (xref-backend-references, xref-backend-definitions)
1145         (xref-backend-apropos): New generic methods.
1147 2015-11-13  Juri Linkov  <juri@linkov.net>
1149         Support rectangular regions for more commands
1151         * lisp/simple.el (region-extract-function): Handle the arg
1152         value ‘bounds’.
1153         (region-insert-function): New function.
1154         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
1155         If non-nil, operate on multiple chunks.
1156         (region-noncontiguous-p): New function.
1158         * lisp/rect.el: Add function rectangle--insert-region
1159         around region-insert-function.
1160         (extract-rectangle-bounds): New function.
1161         (rectangle--extract-region): Handle the arg value ‘bounds’.
1162         (rectangle--insert-region): New function.
1164         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
1165         around region-insert-function.
1166         (cua--extract-rectangle-bounds): New function.
1167         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
1169         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
1170         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
1171         (query-replace-regexp-eval, map-query-replace-regexp)
1172         (replace-string, replace-regexp): Use ‘use-region-p’.
1173         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
1174         (perform-replace): Add arg ‘region-noncontiguous-p’.
1175         If non-nil, operate on multiple chunks.
1177         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
1178         If non-nil, operate on multiple chunks.  (Bug#19829)
1180 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1182         Handle multiple matches on the same line; add highlighting
1184         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
1185         column value in characters.
1186         (xref--collect-matches): Rename from `xref--collect-match'.
1187         Search for all matches in the hit line.  Add `highlight' face to
1188         the matched region in the summary.  Update both callers.
1190 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1192         Replace xref-match-bounds with xref-match-length
1194         Relying on xref-location-marker to point to the beginning of the match
1196         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
1197         (xref-match-length): Add.
1198         (xref-make-match): Change the arguments.
1199         (xref--match-buffer-bounds): Remove.
1200         (xref-match-item): Store length, instead of end-column.
1201         (xref-pulse-momentarily)
1202         (xref--collect-match)
1203         (xref--query-replace-1): Update accordingly.
1204         (xref-query-replace): Ditto.  And check that the search results
1205         are up-to-date.
1207 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1209         Merge from gnulib
1211         This incorporates:
1212         2015-11-13 xalloc-oversized: improve performance with GCC 5
1213         * lib/xalloc-oversized.h: Copy from gnulib.
1215 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1217         Spruce up ftfont.c memory allocation
1219         * src/ftfont.c (setup_otf_gstring):
1220         Avoid O(N**2) behavior when reallocating.
1221         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
1222         reallocating buffers; this simplifies the code.  Do not trust
1223         mflt_run to leave the output areas unchanged on failure, as
1224         this isn’t part of its interface spec.
1226 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1228         Port recent XCB changes to 64-bit ‘long int’
1230         For historical reasons, libX11 represents 32-bit values like Atoms as
1231         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
1232         do that, so adapt the recent XCB code to behave properly on 64-bit
1233         platforms.  Also, fix what appears to be a bug in the interpretation
1234         of xcb_get_property_value_length, at least on my Fedora platform
1235         which is running libxcb-1.11-5.fc21.
1236         * src/xfns.c (x_real_pos_and_offsets):
1237         * src/xterm.c (get_current_wm_state):
1238         xcb_get_property_value_length returns a byte count, not a word count.
1239         For 32-bit quantities, xcb_get_property_value returns a vector
1240         of 32-bit words, not of (possibly 64-bit) long int.
1242 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1244         * src/undo.c (run_undoable_change): Now static.
1246 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1248         Remove support for ':timeout' from w32 tray notifications
1250         * src/w32fns.c (Fw32_notification_notify): Delete the code that
1251         supports ':timeout'.
1252         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
1253         with dbusbind.c when D-Bus is compiled in.
1255         * doc/lispref/os.texi (Desktop Notifications): Don't mention
1256         ':timeout'.
1258 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1260         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
1261         (simple-test--transpositions): New macro.
1262         (simple-transpose-subr): New test.
1264 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1266         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
1268 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1270         * src/undo.c: Small fixes for previous change
1271         (run_undoable_change): Mark void argument list.
1272         (record_property_change): Remove unused variable `boundary'.
1274 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1276         Add a few more variables to redisplay--variables
1278         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
1279         and bidi-display-reordering to the list.
1281 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1283         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
1285 2015-11-13  Eli Barzilay  <eli@barzilay.org>
1287         Fix point positioning after transposing with negative arg
1289         * lisp/simple.el (transpose-subr): When invoked with a negative
1290         argument, move point to after the transposed text, like we do
1291         when invoked with a positive argument.  (Bug#21885)
1293 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1295         Fix last change in shr.el
1297         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
1298         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
1300 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1302         Fix last change
1304         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
1305         Don't DEFSYM tray notification symbols if D-Bus is being used.
1307 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1309         Another fix for MinGW64 and Cygwin builds due to notifications
1311         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
1312         being compiled into Emacs.
1313         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
1314         Sw32_notification_notify and Sw32_notification_close if the code
1315         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
1317 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1319         Remove intern calls and XXX comments from Fx_export_frames
1321         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
1322         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
1323         for consistency with image types.  Remove XXX comments.
1324         (syms_of_xfns) <Qpdf>: DEFSYM it.
1326 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
1328         shr: don't invoke unbound function (Bug#21895)
1330         * lisp/net/shr.el (have-fringes-p): New function.
1331         (shr-insert-document, shr-fill-text): Use it.
1333 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1335         * test/automated/keymaps-test.el: Fix test to make it repeatable
1337         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
1338         entry to its initial value to make the test repeatable in interactive
1339         sessions (assuming it doesn't fail and crashes Emacs, of course).
1341 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
1343         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
1344         Small fix.
1346 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
1348         The heuristic that Emacs uses to add an `undo-boundary' has been
1349         reworked, as it interacts poorly with functions on `post-command-hook'
1350         or `after-change-functions'.
1352         * lisp/simple.el: New section added.
1353         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
1354         (self_insert_command): Calls simple.el to amalgamate.
1355         (delete_char): Calls simple.el to amalgamate.
1356         * src/keyboard.c (last_undo_boundary): Removed.
1357         * src/undo.c (run_undoable_change): New function.
1359 2015-11-12  Juri Linkov  <juri@linkov.net>
1361         Bind [?\S-\ ] to previous line command in Dired-like modes
1363         * lisp/arc-mode.el (archive-mode-map):
1364         * lisp/dired.el (dired-mode-map):
1365         * lisp/proced.el (proced-mode-map):
1366         * lisp/vc/vc-dir.el (vc-dir-mode-map):
1367         Bind [?\S-\ ] to previous line command.
1368         (Bug#20790)
1370 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
1372         Fix the MinGW64 and Cygwin-w32 builds
1374         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
1375         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
1376         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
1377         which cause trouble with MinGW42 headers.  Ifdef away tray
1378         notifications code for Cygwin.  Reported by Andy Moreton
1379         <andrewjmoreton@gmail.com>.
1381 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
1383         Enable sorting of JSON object keys when encoding
1385         * lisp/json.el (json-encoding-object-sort-predicate): New variable
1386         for specifying a sorting predicate for JSON objects during encoding.
1387         (json--plist-to-alist): New utility function.
1388         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
1389         are to be sorted.
1390         (json-encode-alist): Sort output by
1391         `json-encoding-object-sort-predicate, when set.
1392         (json-encode-plist): Re-use `json-encode-alist' when object keys are
1393         to be sorted.
1394         (json-pretty-print-buffer-ordered): New command to pretty print the
1395         buffer with object keys sorted alphabetically.
1396         (json-pretty-print-ordered): New command to pretty print the region
1397         with object keys sorted alphabetically.
1399         * test/automated/json-tests.el (test-json-plist-to-alist)
1400         (test-json-encode-plist, test-json-encode-hash-table)
1401         (test-json-encode-alist-with-sort-predicate)
1402         (test-json-encode-plist-with-sort-predicate): New tests.
1404         * etc/NEWS: Add an entry for the new commands.
1406 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1408         * test/automated/keymap-tests.el: New test file.
1410 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1412         Speed up x_real_pos_and_offsets using XCB
1414         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
1415         all X calls, and pipeline requests when possible, collecting results
1416         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
1418 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1420         Enable use of XCB for checking window manager state
1422         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
1423         of XGetWindowProperty plus error-catching, since we can explicitly
1424         check for errors in the XCB version.  This eliminates 3 XSync calls on
1425         top of the round-trip actually fetching the information.
1427 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1429         Detect XCB and save a connection handle
1431         * configure.ac: If using X11, check for XCB libraries and header.
1432         * src/Makefile.in (XCB_LIBS): Define.
1433         (LIBX_EXTRA): Include it.
1435         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
1436         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
1437         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
1439 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1441         Reduce some data dependencies between X calls
1443         Gains nothing in the traditional-Xlib code, but more closely aligns
1444         with how the XCB version will work.
1446         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
1447         send coordinates (0,0) to the X server and add in the real coordinates
1448         after getting the response.  Move XGetGeometry for outer window inside
1449         error-trapping block.  Use DPY variable more, since it's available.
1451 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1453         Use color cache for creating bitmap
1455         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
1456         Set attributes to use the caching color allocator.  Initialize and
1457         free the cache.
1459 2015-11-12  Eli Barzilay  <eli@barzilay.org>
1461         Add "^" to the interactive specs of `dired-next/previous-line'
1463         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
1464         to bind these commands to the arrow keys, and that means that they work
1465         better with a "^" in the `interactive' declaration so selection works
1466         as expected.
1468 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1470         Sync with soap-client repository, version 3.0.2
1472         * soap-client.el: Bump version to 3.0.2.
1474         * soap-client.el (soap-warning): Use format, not format-message.
1476         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
1477         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
1479         * soap-client.el: Support Emacs versions that do not have
1480         define-error.
1482         * soap-inspect.el: Remove version header.
1484         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
1485         format.
1487 2015-11-11  Alan Mackenzie  <acm@muc.de>
1489         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
1491         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
1492         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
1493         (c-guess-basic-syntax):
1494         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
1495         (c-get-fallback-scan-pos): "New" function (existed several years ago).
1496         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
1497         c-get-fallback-scan-pos.
1498         (c-parse-state-1): Handle 'BOD strategy.
1500         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
1501         (c-font-lock-fontify-region): Remove bindings of
1502         open-paren-in-column-0-is-defun-start to nil.
1504         * doc/misc/cc-mode.texi (Performance Issues)
1505         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
1507 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
1509         * lisp/obarray.el: Fix shadowed variables.
1510         (obarray-map, obarray-remove, obarray-put, obarray-get):
1511         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
1513 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1515         Avoid error in submitting a form with EWW
1517         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
1518         CHUNK to be nil.  (Bug#21881)
1520 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1522         Rename seq-p and map-p to seqp and mapp
1524         * lisp/emacs-lisp/seq.el (seqp): New name.
1525         * lisp/emacs-lisp/map.el (mapp): New name.
1526         * doc/lispref/sequences.texi: Update the documentation for seqp.
1527         * test/automated/map-tests.el: Update the tests for mapp.
1529 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1531         Rename obarray-p to obarrayp
1533         * lisp/obarray.el (obarrayp): New name.
1534         * test/automated/obarray-tests.el: Update the tests.
1536 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1538         Rename obarray-foreach to obarray-map
1540         * lisp/obarray.el (obarray-map): New name.
1541         * test/automated/obarray-tests.el: Update the corresponding tests.
1543 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
1545         New file with obarray functions
1547         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
1548         * test/automated/obarray-tests.el: New file.
1550 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1552         Implement tray notifications for MS-Windows
1554         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
1555         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
1556         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
1557         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
1558         (EMACS_NOTIFICATION_MSG): New macros.
1559         (NI_Severity): New enumeration.
1560         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
1561         (delete_tray_notification, Fw32_notification_notify)
1562         (Fw32_notification_close): New functions.
1563         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
1564         keywords used by w32-notification-notify.
1566         * doc/lispref/os.texi (Desktop Notifications): Describe the native
1567         w32 tray notifications.
1569 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1571         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
1573         * lisp/net/tramp.el (tramp-handle-file-equal-p)
1574         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
1575         Harvey Chapman <hchapman@3gfp.com>.
1577         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
1578         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
1579         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
1580         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
1582 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
1584         * CONTRIBUTE: Encourage adding tests.
1586         Based on this post from John Wiegley:
1588           From: "John Wiegley" <johnw@newartisans.com>
1589           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
1590           To: Juanma Barranquero <lekktu@gmail.com>
1591           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
1592               emacs-devel <emacs-devel@gnu.org>
1593           Date: Wed, 28 Oct 2015 18:45:29 -0700
1594           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
1596           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
1598 2015-11-10  David Reitter  <david.reitter@gmail.com>
1600         Avoid creating notification objects when possible
1602         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
1603         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
1604         functions that do not require a notification object.  When needed,
1605         define NSWindowDidEnterFullScreenNotification to allow for compilation
1606         on OS X 10.6.8.
1608 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1610         Move INTEGER_TO_CONS body out of .h file
1612         * src/data.c (INTBIG_TO_LISP): New macro, with most
1613         of the contents of the old INTEGER_TO_CONS.
1614         (intbig_to_lisp, uintbig_to_lisp): New functions.
1615         * src/lisp.h (INTEGER_TO_CONS):
1616         Simplify by using EXPR_SIGNED and the new functions.
1617         This shrinks code size a bit, and makes it easier to
1618         put a breakpoint on handling of large integers.
1620 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1622         Merge from gnulib
1624         This incorporates:
1625         2015-11-10 intprops: new public macro EXPR_SIGNED
1626         2015-11-10 intprops: fix typo in clang port
1627         * lib/intprops.h: Copy from gnulib.
1629 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1631         Spelling fixes
1633         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
1634         Fix misspelling in output.
1636 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1638         * doc/lispref/variables.texi (Directory Local Variables):
1639         Document dir-locals wildcards.
1641         * lisp/files.el (dir-locals-file): Point to Info node.
1643         * doc/emacs/custom.texi (Directory Variables):
1644         Document dir-locals wildcards.
1646         * etc/NEWS: Document new functionality.
1648 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1650         * lisp/files.el: Don't allow customization of dir-locals sorting.
1651         In retrospect, this is not a good idea for the same reason that
1652         `dir-locals-file' is a defconst, because it is important that this
1653         behaviour be "uniform across different environments and users".
1654         Sure, the user can still change the sorting with a hack, but we
1655         shouldn't encourage them to change it.
1656         (dir-locals--all-files): Return list in the order returned by
1657         `file-expand-wildcards'.
1658         (file-expand-wildcards): Document the sorting predicate used.
1659         (dir-locals-sort-predicate): Delete variable.
1661 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1663         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
1665         * lisp/isearch.el (search-default-regexp-mode): Change default value.
1667 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1669         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
1670         `locate-dominating-file' will now keep looking if the files it finds in
1671         a given directory are unreadable (or not files).
1673 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1675         * lisp/files.el (dir-locals-file): Allow wildcards.
1676         (dir-locals-find-file, dir-locals-collect-variables)
1677         (dir-locals-read-from-file): Update accordingly.
1678         (hack-dir-local-variables): Rename a local variable.
1680         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
1682         * lisp/help-fns.el (describe-variable): Update accordingly.
1684         * .gitignore: Add .dir-locals?.el.
1686 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1688         * lisp/emacs-lisp/map.el (map-merge-with): New function.
1690         * test/automated/map-tests.el (test-map-merge-with): New test.
1692 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
1694         Fix some recently-perturbed bookmark autoloads
1696         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
1697         (bookmark-set): Restore autoload.
1698         (bookmark-set-no-overwrite): Add autoload.
1700         Thanks to Juanma Barranquero for noticing the autoload problems
1701         introduced by my recent commit adding/changing the above functions
1702         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
1704 2015-11-09  Noah Friedman  <friedman@splode.com>
1706         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
1707         the start of buffer.  I don't recall if older versions of gdb were
1708         less strict but you cannot dump a 0-length range in gdb 7.9.1.
1710 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
1712         * lisp/progmodes/project.el: Update Commentary.
1714         Merge branch 'project-next'
1716 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
1718         Fold `project-ask-user' into `project-current'
1720         * lisp/progmodes/project.el (project-find-functions):
1721         Remove `project-ask-user'.
1722         (project-ask-user): Remove function and the corresponding
1723         `project-roots' implementation.
1724         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
1725         user in case there's no project in the current directory.  Update
1726         all callers.
1728 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
1730         When VC detects a conflict, specify which file
1732         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
1733         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
1734         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
1735         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
1736         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
1737           to display a standard message that specifies the conflicted file.
1739         Before this change, the message VC used for indicating a conflicted
1740         file was just "There are unresolved conflicts in this file" without
1741         naming the file (and this language was duplicated in several places).
1742         After this change, it's "There are unresolved conflicts in file FOO"
1743         (and this language is now centralized in one function in vc.el).
1745         Justification: It's important for the message to name the conflicted
1746         file because the moment when VC realizes a file is conflicted does not
1747         always come interactively.  For example, some people automatically
1748         find a set of Org Mode files on startup, and may keep those .org files
1749         under version control.  If any of the files are conflicted, the user
1750         just sees some messages fly by, and might later check the "*Messages*"
1751         buffer to find out what files were conflicted.  I'm not saying this
1752         happened to me or anything; it's a purely hypothetical example.
1754 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
1756         Fix assertion violation in define-key
1758         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
1759         objects.  Reported by Drew Adams <drew.adams@oracle.com>
1760         and Juanma Barranquero <lekktu@gmail.com>.
1762 2015-11-09  Dima Kogan  <dima@secretsauce.net>
1764         Fix a memory leak in GC of font cache
1766         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
1767         entities if some of the fonts it references are marked.  This
1768         plugs a memory leak.  (Bug#21556)
1770 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
1772         Use INT_ADD_WRAPV etc. to check integer overflow
1774         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
1775         * src/buffer.c (record_overlay_string, overlay_strings):
1776         * src/casefiddle.c (casify_object):
1777         * src/ccl.c (Fccl_execute_on_string):
1778         * src/character.c (char_width, c_string_width, lisp_string_width)
1779         (count_size_as_multibyte, string_escape_byte8):
1780         * src/coding.c (coding_alloc_by_realloc, produce_chars):
1781         * src/data.c (arith_driver):
1782         * src/dispnew.c (realloc_glyph_pool, init_display):
1783         * src/editfns.c (styled_format):
1784         * src/fns.c (Ffillarray):
1785         * src/ftfont.c (ftfont_shape_by_flt):
1786         * src/gnutls.c (gnutls_hex_string):
1787         * src/gtkutil.c (get_utf8_string):
1788         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
1789         * src/keymap.c (Fkey_description):
1790         * src/lisp.h (SAFE_ALLOCA_LISP):
1791         * src/term.c (encode_terminal_code):
1792         * src/tparam.c (tparam1):
1793         * src/xselect.c (x_property_data_to_lisp):
1794         * src/xsmfns.c (smc_save_yourself_CB):
1795         * src/xterm.c (x_term_init):
1796         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
1797         more-complicated code involving division and/or
1798         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
1799         subtraction and/or INT_ADD_OVERFLOW.
1800         * src/casefiddle.c (casify_object): Simplify multibyte size check.
1801         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
1802         * src/data.c (arith_driver): Also check for division overflow,
1803         as that’s now possible given that the accumulator can now contain
1804         any Emacs integer.
1805         * src/lisp.h (lisp_word_count): Remove; no longer used.
1807 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
1809         Make sure that the ignore file exists
1811         * lisp/vc/vc.el (vc-default-ignore-completion-table):
1812         Make sure that the ignore file exists.
1814 2015-11-08  Michael Sperber  <mike@xemacs.org>
1816         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
1817         `gnus-summary-delete-article` in a way that also works on XEmacs.
1819 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
1821         Add support for retrieving paths to JSON elements
1823         Add support for retrieving the path to a JSON element. This can for
1824         instance be useful to retrieve paths in deeply nested JSON
1825         structures.
1827         * lisp/json.el (json-pre-element-read-function)
1828         (json-post-element-read-function): New variables to hold pre- and post
1829         read callback functions for `json-read-array' and `json-read-object'.
1830         (json--path): New variable used internally by `json-path-to-position'.
1831         (json--record-path, json--check-position): New functions used
1832         internally by `json-path-to-position'.
1833         (json-path-to-position): New function for retrieving the path to a
1834         JSON element at a given position.
1835         (json-read-object, json-read-array): Call
1836         `json-pre-element-read-function' and `json-post-element-read-function'
1837         when set.
1839         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
1840         (test-json-path-to-position-with-arrays)
1841         (test-json-path-to-position-no-match): New tests for
1842         `json-path-to-position'.
1844 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
1846         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
1848         This really should been part of my previous commit
1849         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
1851 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
1853         Offer non-overwrite bookmark setter (Bug#15746)
1855         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
1856         what `bookmark-set' used to do, but with more choices for overwrite
1857         vs push, and with minor changes to the interactive prompt format.
1858         (bookmark-set): Rewrite as wrapper around above.
1859         If overwriting, inform the user of that in the prompt.
1860         (bookmark-set-no-overwrite): New function, also done as wrapper.
1861         Bind to "M" in `ctl-x-r-map' autoloads.
1862         (bookmark-map): Similarly bind "M" here.
1864 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1866         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
1868 2015-11-08  Alan Modra  <amodra@gmail.com>
1870         ELF unexec: Don't insert a new section
1872         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
1873         don't need to mess with symbol st_shndx, or section sh_link and
1874         sh_info.
1876         This does lead to eu-elflint complaints about symbols defined in .bss
1877         with a needed version, because normally it is undefined symbols that
1878         have needed versions;  Defined symbols have version definitions.
1879         The exception is symbols defined by the linker in .dynbss for
1880         variables copied from a shared library in order to avoid text
1881         relocations, with copy relocs to copy their initial values from the
1882         shared library.  These symbols are both defined and have needed
1883         versions, and eu-elflink only expects to see them in SHT_NOBITS
1884         sections.  Of course there is no real problem with having such symbols
1885         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
1887         * src/unexelf.c: Delete outdated comments.
1888         (PATCH_INDEX): Delete.
1889         (find_section): Delete.
1890         (unexec): Don't add a new section.  Instead reuse the last bss
1891         section, extending it to cover dumped data.  Make bss sections
1892         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
1893         st_shndx.  Rename bss sections.
1895 2015-11-08  Alan Modra  <amodra@gmail.com>
1897         ELF unexec: Drive from PT_LOAD header rather than sections
1899         This rewrites bss handling in the ELF unexec code.  Finding bss
1900         sections by name results in complicated code that
1901         - does not account for all names of possible bss sections,
1902         - assumes specific ordering of bss sections,
1903         - can wrongly choose a SHT_NOBITS section not in the bss segment,
1904         - incorrectly calculates bss size (no accounting for alignment gaps),
1905         - assumes .data and .bss are in the same segment.
1907         All of these problems and more are solved by finding the bss segment
1908         in PT_LOAD headers, ie. the address range included in p_memsz but not
1909         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
1910         in that address range.
1912         * src/unexelf.c: Delete old ppc comment.
1913         (OLD_PROGRAM_H): Define.
1914         (round_up): Delete.
1915         (unexec): Don't search for bss style sections by name.  Instead,
1916         use the last PT_LOAD header address range covered by p_memsz
1917         but not p_filesz and match any SHT_NOBITS section in that
1918         address range.  Simplify initialisation of section header vars.
1919         Don't assume that section headers are above bss segment.  Move
1920         copying of bss area out of section loop.  Align .data2 section
1921         to 1, since it now covers the entire bss area.  For SHT_NOBITS
1922         sections in the bss segment, leave sh_addr and sh_addralign
1923         unchanged, but correct sh_offset.  Clear memory corresponding
1924         to SHT_NOBITS .plt section.  Delete comment and hacks for
1925         sections partly overlapping bss range now that the full range
1926         is properly calculated.  Delete now dead .sbss code.
1927         (Bug#20614)
1929 2015-11-08  Alan Modra  <amodra@gmail.com>
1931         ELF unexec: R_*_NONE relocs
1933         These should be ignored on all targets.
1935         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
1936         not just Alpha.  Comment on reloc size assumption.
1938 2015-11-08  Alan Modra  <amodra@gmail.com>
1940         ELF unexec: _OBJC_ symbols in bss sections
1942         This code assumed that there was only one bss section.  Rather than
1943         checking for a particular index, check the section type.  Also, handle
1944         the possibility that the section was SHT_NOBITS originally and is
1945         unchanged, in which case no clearing is needed (and sh_offset isn't
1946         necessarily valid, which can lead to a wild memset).
1948         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
1949         bss sections.
1951 2015-11-08  Alan Modra  <amodra@gmail.com>
1953         ELF unexec: Symbol table patching
1955         No st_shndx value larger than SHN_LORESERVE should be changed.
1956         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
1957         SHN_LORESERVE.  Error on SHN_XINDEX.
1959 2015-11-08  Alan Modra  <amodra@gmail.com>
1961         ELF unexec: Merge Alpha and MIPS COFF debug handling
1963         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
1964         Don't find .mdebug section index, find the section in the loop.
1965         Allow for unlikely possibility that .mdebug is located at sh_offset
1966         before bss segment, by calculating move from difference in
1967         sh_offset rather than just assuming new_data2_size.  Simplify
1968         cbLineOffset handling.
1970 2015-11-08  Alan Modra  <amodra@gmail.com>
1972         ELF unexec: Tidy code
1974         Separate out some of the more mechanical changes so following patches
1975         are smaller.
1977         * src/unexelf.c (unexec): Rearrange initialisation of program
1978         header vars.  Use pointer vars in loops rather than indexing
1979         section header array via macros.  Simplify _OBJC_ sym code
1980         and reloc handling code.
1982 2015-11-08  Alan Modra  <amodra@gmail.com>
1984         ELF unexec: Correct section header index
1986         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
1987         it should have been using "NEW_SECTION_H (nn)" to find the name of the
1988         section currently being processed.  Of course, before the bss
1989         sections, n and nn have the same value, so this doesn't matter except
1990         in the case of .sbss.  For .sbss this probably meant .bss (most likely
1991         the next section) was copied from memory.  A later patch removes the
1992         bogus .sbss handling anyway.
1994         * src/unexelf.c (unexec): Use correct index to look up names.
1996 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
1998         Fix Bug#21841
2000         * lisp/filenotify.el (file-notify--rm-descriptor):
2001         Use `descriptor' instead of computing its value.
2002         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
2003         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
2004         (Bug#21841)
2006 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
2008         Remove dirs in vc project roots from the the vc project library roots
2010         * lisp/progmodes/project.el (project-library-roots):
2011         Remove directories inside the project roots from the result.
2012         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
2014 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
2016         Move and rename xref-find-regexp to the project package
2018         * lisp/progmodes/project.el (project-find-regexp)
2019         (project--read-regexp)
2020         (project--find-regexp-in): New functions.
2022         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
2023         xref--show-xrefs.  Use in existing callers in place of that
2024         function.
2025         (xref--show-xrefs): Only do the "show" part.
2026         (xref-find-regexp): Rename, more or less, to
2027         project-or-libraries-find-regexp.
2029 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
2031         Abolish temporary buffer management for xref
2033         * lisp/progmodes/xref.el (xref--temporary-buffers)
2034         (xref--current)
2035         (xref--inhibit-mark-current)
2036         (xref--mark-selected): Remove.  Remove all references.
2037         (xref--show-xrefs): Do not construct the
2038         list of the temporary buffers, nor pass it along.
2040 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
2042         Rename "search path" to "library roots"
2044         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
2045         of the elements from CL-LIST1.
2047         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
2048         Update WRT to the above change.
2050         * lisp/progmodes/project.el (project-search-path-function): Rename
2051         to project-library-roots-function, update the documentation and
2052         references.
2053         (project-search-path): Likewise, to project-library-roots.
2054         (project-roots): Clarify documentation.
2055         (project-vc-search-path): Likewise, to project-vc-library-roots.
2056         (project-library-roots): In addition to the renames, thread the
2057         results through file-name-as-directory.
2058         (project-prune-directories): Accept a variable number of
2059         arguments.  Rename to project-combine-directories.
2060         (project-subtract-directories): New function.
2062         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
2063         Append project-roots and project-library-roots together.
2065         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
2067 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2069         Prefer xpalloc to doubling buffers by hand
2071         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
2072         (read1): Use it for simplicity.
2073         * src/macros.c (store_kbd_macro_char):
2074         * src/minibuf.c (read_minibuf_noninteractive):
2075         * src/term.c (encode_terminal_code):
2076         * src/xrdb.c (magic_db):
2077         Prefer xpalloc to growing buffers by hand.
2078         This doesn’t fix any bugs, but simplifies the code a bit.
2080 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2082         Merge from gnulib
2084         This incorporates:
2085         2015-11-05 timespec-sub: fix overflow bug; add tests
2086         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
2087         2015-11-03 intprops: add parentheses
2088         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
2089         Copy from gnulib.
2091 2015-11-07  David Reitter  <david.reitter@gmail.com>
2093         Provide NS notification objects where required to eliminate warnings
2095         * nsterm.m (windowDidResize:, toggleFullScreen:):
2096         Call notification functions with notification objects
2097         as per delegate APIs.
2099 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
2101         Add test for bug #21824
2103         * test/automated/buffer-tests.el: New file.
2104         (overlay-modification-hooks-message-other-buf): New test.
2106 2015-11-07  Kelvin White  <kwhite@gnu.org>
2108         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
2110 2015-11-07  David Reitter  <david.reitter@gmail.com>
2112         Ignore fullscreen exit notifications on NS when frame is dead
2114         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
2115         (windowDidExitFullScreen:): Return if frame is dead.
2116         These functions may be called when a fullscreen frame
2117         is closed; they are called before, not after.
2119         May address Bug#21428.
2121 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2123         Speed up lookup in redisplay--variables
2125         * lisp/frame.el (redisplay--variables): Make it a hash-table.
2127         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
2128         as a hash-table.  This speeds up this function by an order of
2129         magnitude: where previously a setq was slowed down by 100% by
2130         introducing the maybe_set_redisplay test, it is now only 5%
2131         slower.
2132         (syms_of_xdisp) <redisplay--variables>: Doc fix.
2134 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
2136         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
2138         The defsubst was being created as:
2139             (cl-defsubst name (args) ("DOC") ...)
2141         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
2142         Add test.
2144 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
2146         Update doc string of hexl-mode
2148         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
2150 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2152         Fix error in copy-abbrev-table
2154         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
2155         property of the abbrev-table.  (Bug#21828)
2157         * test/automated/abbrev-tests.el: New file.
2159 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
2161         Add test to auto-revert-tests.el for Bug#21841
2163         * test/automated/auto-revert-tests.el
2164         (auto-revert-test01-auto-revert-several-files): New test.
2165         (auto-revert-test02-auto-revert-tail-mode)
2166         (auto-revert-test03-auto-revert-mode-dired): Rename them.
2168 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2170         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
2172 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2174         In x_consider_frame_title don't set title of tooltip frames
2176         * src/xdisp.c (x_consider_frame_title): Return immediately for
2177         tooltip frames to avoid displaying empty tooltips.
2179 2015-11-06  Anders Lindgren  <andlind@gmail.com>
2181         Fixed NextStep fullscreen problem (bug#21770).
2183         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
2184         fullscreen frames.
2186 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2188         Ensure redisplay after evaluation
2190         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
2191         Revert last change.
2192         * lisp/frame.el (redisplay--variables): Populate the
2193         redisplay--variables list.
2194         * src/xdisp.c (maybe_set_redisplay): New function.
2195         (syms_of_xdisp) <redisplay--variables>: New variable.
2196         * src/window.h (maybe_set_redisplay): Declare prototype.
2197         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
2199 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2201         * test/automated/subr-tests.el (subr-test-when): Fix again.
2203 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2205         Don't invoke overlay modification hooks in wrong buffer
2207         * src/buffer.c (report_overlay_modification): When called with
2208         AFTER non-zero, don't invoke overlay modification hooks if the
2209         buffer recorded in last_overlay_modification_hooks is different
2210         from the current buffer.  (Bug#21824)
2212 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
2214         * admin/notes/repo: Fix a few obsolete references to Bazaar.
2216 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2218         * test/automated/subr-tests.el (subr-test-when): Fix test.
2220 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
2222         Avoid division by zero crash observed by Yuan MEI
2224         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
2226         * src/dispnew.c (required_matrix_height, required_matrix_width):
2227         Avoid division by zero.
2228         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
2229         dpyinfo->smallest_char_width to 1.
2231 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2233         Ensure redisplay after "C-x C-e"
2235         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
2236         redisplay happens to account for any side effects of the evaluated
2237         sexp.  (Bug#21835)
2239 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
2241         Skip some file notification tests for cygwin
2243         * test/automated/file-notify-tests.el (file-notify--test-with-events):
2244         Remove argument TIMEOUT.  Adapt all callees.
2245         (file-notify-test02-events, file-notify-test04-file-validity):
2246         Skip for cygwin.  (Bug#21804)
2248 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
2250         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
2252 2015-11-05  Daiki Ueno  <ueno@gnu.org>
2254         Suppress redundant Pinentry startup messages
2256         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
2257         * lisp/epg.el: Declare `pinentry-start'.
2258         (epg--start): Call `pinentry-start' with QUIET argument set.
2260 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
2262         * doc/emacs/ack.texi (Acknowledgments): Updates.
2264 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2266         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
2267         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
2269 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
2271         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
2272         Add prettification support for \times.
2274 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2276         * test/automated/process-tests.el: Skip tests when bash is unavailable.
2277         (process-test-sentinel-accept-process-output)
2278         (process-test-sentinel-sit-for): skip-unless bash executable found.
2280 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
2282         Add test for bug #21831
2284         * test/automated/process-tests.el
2285         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
2286         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
2288 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
2290         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
2292         (eieio--generic-static-object-generalizer): Fix typo.
2293         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
2294         like the underlying cause of bug#17852 was fixed in the mean time.
2296 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2298         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
2300         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
2301         It breaks bootstrapping (duh).
2303 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2305         * lisp/files.el (report-errors): Obsolete.
2307         (normal-mode, hack-local-variables, dir-locals-find-file):
2308         Use `with-demoted-errors' instead.
2310 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2312         * lisp/subr.el (when): Use `macroexp-progn'.
2314         * test/automated/subr-tests.el (subr-test-when): New test.
2316 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
2318         * lisp/progmodes/xref.el: Doc fixes.
2319         (xref-make-file-location, xref-make-buffer-location, xref-make)
2320         (xref-make-bogus-location, xref-make-match): Add cross-references.
2321         (xref--insert-xrefs): Fix typo in docstring.
2323 2015-11-04  Anders Lindgren  <andlind@gmail.com>
2325         Render fringe bitmaps correctly on NextStep (bug#21301)
2327         The fringe bitmaps were inverted, the background was not transparent,
2328         the image data was horizontally mirrored, and periodic fringe bitmaps
2329         were not supported.
2331         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
2332         When both background and foreground colors are 0, set the background
2333         alpha channel to 0 (making the background transparent).  When
2334         copying the image data, do this from the most significant bit
2335         (leftmost) to the least (rightmost), to avoid mirroring.
2336         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
2337         Add support for periodic images (e.g. the empty line indicator).
2339 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
2341         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
2343 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
2345         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
2347         * admin/MAINTAINERS: Add thunk.el.
2349 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
2351         * lisp/calc/calc (calc-bug-address): Change maintainer address.
2353 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
2355         Fix a stupid error in gfilenotify.c
2357         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
2358         if we've got a `deleted' signal AND the file name is the watched one.
2360 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
2362         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
2364         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
2365         Use case-insensitive string compare for file names.
2366         (emacs-test-dir): Add 'downcase' to cause case differences (at
2367         least on my system).
2369 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
2371         flymake-tests.el (warning-predicate-rx-gcc): Fix check
2373         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
2374         Also check that "make" is available, not just "gcc".
2376 2015-11-02  Ken Brown  <kbrown@cornell.edu>
2378         Document behavior of collation on Cygwin
2380         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
2381         expected failure on Cygwin.
2382         * doc/lispref/strings.texi (Text Comparison): Document that
2383         punctuation and whitespace are not ignored for sorting on Cygwin.
2385 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
2387         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
2389 2015-11-01  Glenn Morris  <rgm@gnu.org>
2391         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
2392         (Bug#21794)
2393         * test/automated/f90.el (f90-test-bug21794): New test.
2395 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
2397         Fix incompatibility with TCC in test for bug#18745
2399         * test/automated/process-tests.el (process-test-quoted-batfile):
2400         Remove spaces unrelated to the bug being tested.
2402 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
2404         Improve completion in tramp-gvfs.el
2406         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
2407         Rename from `tramp-zeroconf-parse-service-device-names'.
2408         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
2409         with `tramp-zeroconf-parse-device-names'.
2410         (tramp-gvfs-parse-device-names): New defun.
2411         (top): Use it when `tramp-zeroconf-parse-device-names' is not
2412         applicable.
2414         * lisp/net/tramp.el (tramp-set-completion-function): The argument
2415         could also be a zeroconf service type.
2417 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2419         * lisp/net/ntlm.el: Change version to 2.0.0.
2421 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2423         Fix bug#21762
2424         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
2425         `eql' instead of `=' to accommodate the case that (syntax-after (point))
2426         returns nil.
2427         * test/automated/python-tests.el (python-indent-inside-paren-7):
2428         New test.
2430 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2432         * test/automated/python-tests.el: Avoid warnings.
2433         (python-tests-with-temp-buffer, python-tests-with-temp-file):
2434         Bind `python-indent-guess-indent-offset' to nil.
2436 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2438         * src/alloc.c: Silence compiler warnings.
2439         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
2441 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2443         * etc/NEWS: Fix js-jsx-mode entry punctuation.
2445 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2447         Add JSX indentation via js-jsx-mode  (Bug#21799)
2449         * progmodes/js.el: Add JSX indentation support.
2450         (js--jsx-end-tag-re)
2451         (js--jsx-after-tag-re): New variables.
2452         (js--jsx-find-before-tag)
2453         (js--jsx-indented-element-p)
2454         (js--as-sgml)
2455         (js--expression-in-sgml-indent-line)
2456         (js-jsx-indent-line)
2457         (js-jsx-mode): New functions.
2458         * test/indent/js-jsx.el: New file.
2459         * etc/NEWS: Add information about js-jsx-mode.
2461 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
2463         Minor fix in filenotify.el
2465         * lisp/filenotify.el (file-notify--event-file-name)
2466         (file-notify--event-file1-name): Normalize result with
2467         `directory-file-name'.
2469 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
2471         Avoid errors in redisplay--pre-redisplay-functions
2473         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
2474         use 'bobp', instead compare window-point with 1.  (Bug#21730)
2476 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
2478         Merge from gnulib
2480         This incorporates:
2481         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
2482         2015-10-25 stdalign: port to Sun C 5.9
2483         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
2484         Copy from gnulib.
2486 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2488         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
2489         (w32_compare_strings): Adjust for the correction.
2491 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2493         * test/automated/vc-tests.el (vc-test--state)
2494         (vc-test--working-revision, vc-test--checkout-model):
2495         Add result messages.
2497 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2499         * test/automated/faces-tests.el: Add another test
2501 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2503         * lisp/faces.el (faces--attribute-at-point): Fix bug
2504         introduced by previous commit.
2506 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2508         * test/automated/faces-tests.el: New file.
2510 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2512         * lisp/faces.el: Refactor common code and fix a bug.
2513         (faces--attribute-at-point): New function.  Fix a bug when the
2514         face at point is a list of faces and the desired attribute is not
2515         on the first one.
2516         (foreground-color-at-point, background-color-at-point): Use it.
2518 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
2520         * etc/tutorials/TUTORIAL.translators: Fix PL names.
2522 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
2524         * lisp/character-fold.el: Provide `character-fold'.
2526 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2528         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
2529         for Gnus and ivy.
2531 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2533         Some minor fixes for tramp-gvfs.el
2535         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2536         An attribute returned by gvfs-info might be empty.  In case of
2537         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
2538         (tramp-zeroconf-parse-service-device-names): New defun.
2539         Derived from `tramp-zeroconf-parse-workstation-device-names'.
2540         (top): Add completion functions for "afp" and "smb" methods.
2542 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2544         * test/automated/character-fold-tests.el: New file
2546 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2548         * test/automated/sort-tests.el: New file.
2549         Tests in this file are randomly generated and then tested with
2550         regular, reverse, and case-fold sorting.
2552 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2554         Describe known problems with pinning Emacs to taskbar
2556         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
2557         on Windows 10.  For the details, see the discussion starting at
2558         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
2560 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2562         * lisp/isearch.el: Avoid an error that blocks isearch.
2563         (isearch-update): Don't error if `isearch--current-buffer' has
2564         been killed.
2566         * test/automated/isearch-tests.el (isearch--test-update):
2567         New file.
2569 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
2571         Fix documentation of 'beginning/end-of-buffer'
2573         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
2574         conditions under which the mark will be pushed at the previous
2575         position.  (Bug#21748)
2577 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2579         Add RefTeX feature idea: editing RefTeX TOC buffers
2581         More face defs for ivy, swiper, ace-window, eshell
2583 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2585         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
2586         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
2587         just VAR.
2588         (auth-source-backend-parse): Use make-instance.
2589         (auth-source-search): Remove unused key args.
2590         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
2591         (auth-source-search-backends): Use slot names rather than their initarg.
2592         (auth-source-netrc-create):
2593         (auth-source-delete):
2594         (auth-source-secrets-create, auth-source-plstore-search)
2595         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
2596         (auth-source-plstore-create, auth-source-netrc-search)
2597         (auth-source-netrc-parse): Remove unused key args.
2598         (auth-source-forget+): Simplify the arglist.
2599         (auth-source-macos-keychain-search-items)
2600         (auth-source-token-passphrase-callback-function): Mark unused args.
2601         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
2602         (pp-escape-newlines): Declare.
2603         (auto-source--symbol-keyword): New function.
2604         (auth-source-plstore-create, auth-source-netrc-create)
2605         (auth-source-netrc-normalize): Use it.
2606         (auth-source-netrc-search): Don't pass :delete to
2607         auth-source-netrc-parse since it doesn't use it.
2608         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
2609         symbol-value to index in keyword args.
2610         (auth-source-macos-keychain-result-append): Avoid setq.
2611         (auth-source-netrc-create): Remove unused vars `file' and `add'.
2612         (auth-source-user-or-password): Remove unused var `cname'.
2614 2015-10-29  Juri Linkov  <juri@linkov.net>
2616         * lisp/dired.el (dired-unmark-all-files-query): Declare.
2617         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
2618         (Bug#21746)
2620 2015-10-29  Juri Linkov  <juri@linkov.net>
2622         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
2623         to go to the beginning of text line instead of command line.
2624         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
2626 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
2628         Fix encoding of saving *Help* buffers
2630         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
2631         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
2633 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2635         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
2636         (cl--generic-derived-specializers): New function.
2637         (cl--generic-derived-generalizer): New generalizer.
2638         (cl-generic-generalizers): New specializer (derived-mode MODE).
2639         (cl--generic-split-args): Apply the rewriter, if any.
2640         (cl-generic-define-context-rewriter): New macro.
2641         (major-mode): Use it to define a new context-rewriter, so we can write
2642         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
2644         * lisp/frame.el (window-system): New context-rewriter so we can write
2645         `(window-system VAL)' instead of (window-system (eql VAL)).
2646         (cl--generic-split-args): Apply the rewriter, if any.
2647         (frame-creation-function): Use the new syntax.
2649         * lisp/term/x-win.el (window-system-initialization)
2650         (handle-args-function, frame-creation-function)
2651         (gui-backend-set-selection, gui-backend-selection-owner-p)
2652         (gui-backend-selection-exists-p, gui-backend-get-selection):
2653         * lisp/term/w32-win.el (window-system-initialization)
2654         (handle-args-function, frame-creation-function)
2655         (gui-backend-set-selection, gui-backend-get-selection)
2656         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
2657         * lisp/term/pc-win.el (gui-backend-get-selection)
2658         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
2659         (gui-backend-set-selection, window-system-initialization)
2660         (frame-creation-function, handle-args-function):
2661         * lisp/term/ns-win.el (window-system-initialization)
2662         (handle-args-function, frame-creation-function)
2663         (gui-backend-set-selection, gui-backend-selection-exists-p)
2664         (gui-backend-get-selection):
2665         * lisp/startup.el (handle-args-function):
2666         * lisp/term/xterm.el (gui-backend-get-selection)
2667         (gui-backend-set-selection): Use the new syntax.
2669 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2671         * test/indent/css-mode.css: Add tests for url(...) syntax.
2673 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2675         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
2676         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
2677         (smie-prec2->grammar): Use `declare'.
2679 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2681         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
2682         (cl--generic-generalizer): Add `name' field.
2683         (cl-generic-make-generalizer): Add corresponding `name' argument.
2684         (cl-generic-define-generalizer): New macro.
2685         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
2686         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
2687         (cl--generic-t-generalizer): Use it.
2688         (cl-generic-ensure-function): Add `noerror' argument.
2689         (cl-generic-define): Use it so we don't follow aliases.
2690         (cl-generic-define-method): Preserve pre-existing ordering of methods.
2691         (cl--generic-arg-specializer): New function.
2692         (cl--generic-cache-miss): Use it.
2693         (cl-generic-generalizers): Only fset a temporary definition
2694         during bootstrap.
2695         (cl--generic-struct-tag, cl--generic-struct-specializers):
2696         Allow extra arguments.
2698         * lisp/emacs-lisp/eieio-compat.el
2699         (eieio--generic-static-symbol-generalizer)
2700         (eieio--generic-static-object-generalizer):
2701         Use cl-generic-define-generalizer.
2702         (eieio--generic-static-symbol-specializers): Allow extra arguments.
2704         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
2705         (eieio--generic-subclass-generalizer):
2706         Use cl-generic-define-generalizer.
2707         (eieio--generic-subclass-specializers): Allow extra arguments.
2709 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2711         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
2713 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
2715         Add "afp" method to Tramp
2717         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
2719         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
2720         (tramp-gvfs-handle-expand-file-name)
2721         (tramp-gvfs-handler-mounted-unmounted)
2722         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
2723         (tramp-gvfs-maybe-open-connection): Support also "afp".
2724         (tramp-gvfs-handle-file-attributes): Handle the case of empty
2725         "owner::user" and "owner::group" entries.
2727 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
2729         Handle negative coordinates in ‘x_calc_absolute_position’
2731         * src/w32term.c (x_calc_absolute_position): Find display origin to
2732         allow for negative coordinates.
2734 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2736         (internal--syntax-propertize): Save match-data here (bug#21766)
2738         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
2739         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
2741 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
2743         Don't require default-directory to end with a slash
2745         * doc/lispref/files.texi (Magic File Names): Document the change
2746         in unhandled-file-name-directory.
2748         * lisp/url/url-handlers.el
2749         (url-handler-unhandled-file-name-directory): Update accordingly.
2751         * src/buffer.c (default-directory): Update the docsting.
2753         * src/fileio.c (unhandled-file-name-directory): Default to calling
2754         `file-name-as-directory'
2755         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
2757 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2759         * lisp/isearch.el: Delete some outdated comments.
2761 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
2763         Fix eshell/clear not working if the output has a small line count
2765         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
2766         number of newlines to be inserted. This fixes the issue where
2767         eshell/clear wouldn't work if the prompt was not at the bottom of the
2768         window, and the output wasn't too long.
2770 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2772         * lisp/files.el (write-file): Use vc-refresh-state.
2774         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
2776         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
2778 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2780         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
2781         (macroexp-unprogn): Make sure we never return an empty list.
2782         (macroexp-if): Remove unused (and unsafe) optimization.
2783         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
2784         occur occasionally.
2786 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
2788         Fix bug#21766 and add test
2789         * lisp/simple.el (delete-trailing-whitespace): Save match data when
2790         calling `skip-syntax-backward'.
2791         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
2792         New test.
2794 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2796         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
2798 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
2800         * src/dispnew.c (init_display): Simplify overflow checking.
2802 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2804         * lisp/character-fold.el (character-fold-to-regexp): Fix case
2805         where string ends in space
2807 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2809         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
2811         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
2813 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2815         * lisp/character-fold.el: Make compatible with lax-whitespace.
2816         (character-fold-to-regexp): Rework internals to play nice with
2817         lax-whitespacing.
2819         When the user types a space, we want to match the table entry for
2820         ?\s, which is generally a regexp like "[ ...]".  However, the
2821         `search-spaces-regexp' variable doesn't "see" spaces inside these
2822         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
2823         manually expose a space).
2825         Furthermore, the lax search engine acts on a bunch of spaces, not
2826         on individual spaces, so if the string contains sequential spaces
2827         like "  ", we need to keep them grouped together like this:
2828         "\\(  \\|[ ...][ ...]\\)".
2830 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2832         * lisp/isearch.el: Refactor momentary messages.
2833         (isearch--momentary-message): New function.
2834         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
2835         (isearch-toggle-invisible): Use it.
2837 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2839         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
2840         (isearch-define-mode-toggle): New macro.
2841         (isearch-toggle-invisible): Rename to
2842         `isearch-define-mode-toggle'.
2843         (isearch-toggle-case-fold, isearch-toggle-invisible)
2844         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
2845         with `isearch-define-mode-toggle'.
2847 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
2849         Avoid using `add-to-list' on a let-local var in tramp-smb.el
2851         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
2852         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
2854 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2856         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
2858         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
2860         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
2862 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
2864         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
2865         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
2866         does not exist in XEmacs 21.4.
2868 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2870         Fixed OS X startup crash
2872         Input events started to arrive before ns_term_init() was finished.
2873         Solved by blocking input.  This also seems to correct the "You
2874         can't open the application "Emacs" because it may be damaged or
2875         incomplete" error issued when double-clicking on the Emacs
2876         application.
2878         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
2879         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
2881 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2883         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
2885 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2887         * src/process.c (Fget_buffer_process): Improve docstring.
2888         Document the fact that it doesn't return dead processes.
2890 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2892         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
2894         * nsterm.h (struct ns_output): New flag, in_animation.
2895         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
2896         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
2897         in_animation flag around call to "setVisible". Set new tool bar
2898         height before call to setVisible.
2899         * nsterm.m (x_set_window_size): Don't call [view setRow:
2900         andColumns:] as this fools the subsequent call to updateFrameSize
2901         from performing the real resize.
2902         (windowDidResize): Don't update anything when in_animation is
2903         non-zero.
2905         Trace output.
2907         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
2908         (EmacsToolbar):
2909         * nsterm.m (x_set_window_size, updateFrameSize)
2910         ([EmacsView setRows: andColumns:])
2912 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
2914         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
2916 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
2918         Prettify TeX macros not ending in a word char
2920         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
2921         Prettify macros which don't end in a word character.
2923 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2925         Pipe Hg commit descriptions through 'tabindent'
2927         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
2928         through 'tabindent'.
2929         (vc-hg-log-view-mode): Set tab-width to 2 locally.
2930         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
2932 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2934         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
2935         (tramp-smb-handle-directory-files): Use `delete-dups'.
2937         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
2939 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2941         * lisp/international/ccl.el: Use lexical-binding.
2942         (ccl-compile-if): Remove unused var `false-ic'.
2943         (ccl-compile-write-repeat): Remove unused var `i'.
2944         (ccl-compile-map-single): Remove unused var `id'.
2945         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
2946         dynamic var `ccl-code'.
2948 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2950         * lisp/json.el (json-new-object): Optimize trivial `list' call.
2952 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2954         * lisp/help.el: Fix bug with incorrect arglist string.
2955         (help-add-fundoc-usage): Don't mistake a mis-formatted string
2956         for a list.
2958 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2960         * lisp/gnus/gnus-topic.el: Silence some warnings.
2961         (gnus-topic-prepare-topic): Remove unused var `topic'.
2962         (gnus-topic-remove-topic): Mark unused arg `hide'.
2963         (gnus-tmp-header): Declare.
2964         (gnus-topic-goto-missing-group): Remove unused var `entry'.
2965         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
2966         (gnus-topic-copy-matching): Mark unused arg `copyp'.
2967         Move initialization of `topic' into its declaration.
2969 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
2971         Minor CEDET fixes
2973         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
2974         Handle warnings from gtags about invalid options.
2975         (cedet-gnu-global-create/update-database): Do incremental update
2976         properly.
2978         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
2979         Get monotone root right.
2981 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
2983         Fall back to polling in autorevert when needed
2985         * lisp/autorevert.el (auto-revert-notify-handler): When a
2986         `stopped' event arrives from file notification, fall back to polling.
2988         * test/automated/file-notify-tests.el
2989         (file-notify-test03-autorevert): Extend test for polling when file
2990         notification ceases to work.
2992 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2994         Show full commit messages in 'hg log' when appropriate
2996         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
2997         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
2998         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
3000 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
3002         Use a plain SVG file for the icon
3004         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
3005           format instead of the Inkscape SVG format.
3007 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
3009         Fix subtle bug in auto-revert-tests.el
3011         * test/automated/auto-revert-tests.el
3012         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
3013         buffer where it belongs to.  (Bug#21668)
3015 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
3017         * lisp/emacs-lisp/map.el: Better docstrings.
3019         * lisp/emacs-lisp/seq.el: Better docstrings.
3021         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
3023 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
3025         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
3027 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
3029         Clarify that load-path contents should be directory file names
3031         * doc/lispref/files.texi (Directory Names): Define and use "directory
3032         file name".  Recommend `expand-file-name'.
3034         * src/lread.c (load-path): Fix doc string; elements are directory file
3035         names.
3037 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
3039         Fix simple-test.el test
3041         * test/automated/simple-test.el (simple-test--dummy-buffer):
3042         Make sure indentation doesn't use TABs, otherwise the 6th test
3043         might fail.
3045 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
3047         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
3048         `substring' does not account for full width characters.
3050 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
3052         Further work on `stopped' events in filenotify.el
3054         * doc/lispref/os.texi (File Notifications): Rework examples.
3056         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
3057         (file-notify--rm-descriptor, file-notify-callback): Improve check
3058         for sending `stopped' event.
3059         (file-notify-add-watch): Check for more events for `inotify'.
3061         * test/automated/file-notify-tests.el
3062         (file-notify--test-expected-events): New defvar.
3063         (file-notify--test-with-events): Use it.
3064         (file-notify--test-cleanup): Make it more robust when deleting
3065         directories.
3066         (file-notify--test-event-test): Check also for watched directories.
3067         (file-notify--test-event-handler): Suppress temporary .#files.
3068         (file-notify-test02-events, file-notify-test04-file-validity):
3069         Rework `stopped' events.
3070         (file-notify-test05-dir-validity): Wait for events when appropriate.
3072 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
3074         * src/keyboard.c (post-command-hook): Shorten docstring.
3076 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
3078         Fix infinite loop in sh-script's SMIE code
3080         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
3081         loop (bug#21747).
3083 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3085         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
3086         Character-fold search _still_ doesn't play well with
3087         lax-whitespace.  So disable it by default (again) for now.
3089 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3091         * lisp/isearch.el: No visual feedback for default search mode.
3092         During an isearch where character-folding is the default, we don't
3093         want to take up minibuffer space just to tell the user that
3094         "Char-fold " is on.  The same goes for other modes, if the user
3095         changes the default.  In contrast, if the user toggles OFF the
3096         default mode, they should see "Literal", to distinguish it from
3097         the default mode.
3098         (isearch--describe-regexp-mode): Return "" if describing the
3099         default mode, and return "literal " if describing a plain search
3100         and it is not default.
3102 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3104         * test/automated/simple-test.el: New file.
3105         Define tests for `newline' and `open-line'.
3107 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3109         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
3110         Also run `post-self-insert-hook' when called interactively.
3112 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3114         * lisp/simple.el (open-line): Fix docstring.
3115         Also explain apparently redundant line.
3117 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3118             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3120         Sync with soap-client repository, version 3.0.1
3122         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3123         Bump version to 3.0.1.
3125         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
3127 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
3129         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
3131 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3133         * src/keyboard.c (post-command-hook): Extend the docstring.
3134         Mainly, explain how to use it without hanging Emacs, or giving the
3135         impression that it is hanging.  Also mention `pre-command-hook'.
3136         (pre-command-hook): Mention `post-command-hook'.
3138 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3140         * lisp/custom.el (custom-declare-variable): Shorten code again.
3141         Without using pcase this time.  We can't use pcase because it is
3142         loaded after custom in loadup.el.  Also add a comment explaining
3143         this to future dummies like me.
3145 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3147         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
3149 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3151         Introduce `stopped' event in file notification
3153         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
3154         (file-notify-rm-watch): Use it.
3155         (file-notify-callback): Implement `stopped' event.
3156         (file-notify-add-watch): Mention `stopped' in the docstring.
3157         Check, that upper directory exists.
3159         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
3160         Add two test cases.
3161         (file-notify-test02-events): Handle also `stopped' event.
3162         (file-notify-test04-file-validity): Add another test case.
3164 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3166         Revert commit that broke 'make bootstrap'
3168         * lisp/custom.el (custom-declare-variable): Revert commit
3169         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
3170         even when pcase has not been defined yet, when doing bootstrapping.
3172 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3174         Port recent inline functions fix to Standard C
3176         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
3177         All uses rewritten to define the function directly rather than to
3178         use a macro to define the function.  This conforms to Standard C,
3179         which does not allow stray semicolons at the top level.  I hope it
3180         also avoids the problems with TAGS.  Those macros, though clever,
3181         were pretty confusing anyway, and it wasn’t clear they were worth
3182         the aggravation even without the TAGS problem.
3184 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3186         * lisp/isearch.el: Make character-fold search the default again.
3188 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3190         * lisp/character-fold.el: Many improvements.
3191         (character-fold-search-forward, character-fold-search-backward):
3192         New command.
3193         (character-fold-to-regexp): Remove lax-whitespace hack.
3194         (character-fold-search): Remove variable.  Only isearch and
3195         query-replace use char-folding, and they both have their own
3196         variables to configure that.
3198 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3200         * lisp/isearch.el: Generalize definition of regexp-function toggles.
3201         (isearch-specify-regexp-function): New macro for specifying
3202         possible values of `isearch-regexp-function'.
3203         (isearch-toggle-character-fold, isearch-toggle-symbol)
3204         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
3206 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3208         * lisp/isearch.el (search-default-regexp-mode): New variable.
3209         (isearch-mode): Use it.
3211 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3213         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
3214         (search-slow-speed, search-upper-case)
3215         (search-nonincremental-instead, search-whitespace-regexp)
3216         (search-invisible, isearch-hide-immediately)
3217         (isearch-resume-in-command-history, search-ring-max)
3218         (regexp-search-ring-max, search-ring-update, search-highlight)
3219         (isearch-fail): Delete :group entries.
3221 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3223         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
3225 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3227         addpm.c: Silence some warnings.
3229         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
3230         to LPBYTE.
3231         (add_registry): Pass NULL to optional lpClass argument of
3232         RegCreateKeyEx, not an empty string.
3234 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3236         addpm.c: Do not add obsolete GTK libraries to the path.
3238         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
3239         (add_registry): Remove variables `size' and `gtk_key'.
3240         Do not add the GTK DLL directory to the library search path; it is
3241         confusing behavior (in particular, the same Emacs version with and
3242         without invoking addpm will use a different path), and the GTK image
3243         libraries are obsolete anyway.
3245 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3247         addpm.c: Replace existing registry entries, but do not create new ones
3249         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
3250         existing values from previous versions, but do not add new ones; the
3251         key could exist for other reasons unrelated to old Emacsen, like X-style
3252         resources, or to set some environment variables like HOME or LANG, and
3253         in that case we don't want to populate it with obsolete values.
3255 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3257         * nt/addpm.c (add_registry): Do not compute unused return value.
3259 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3261         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
3263         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
3264         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
3265         current behavior because REG_OPTION_NON_VOLATILE is defined to
3266         be 0L anyway, but that option is actually documented only for
3267         RegCreateKeyEx.
3269 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3271         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
3273 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3275         Update frame title when redisplay scrolls selected window
3277         * src/xdisp.c (redisplay_window): Reconsider the frame's title
3278         when the mode-line of the frame's selected window needs to be
3279         updated.
3281 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3283         Update frame title when scrolling the selected window
3285         * src/window.c (wset_update_mode_line): New function, sets either
3286         the window's update_mode_line flag or the global update_mode_lines
3287         variable.
3288         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
3289         (window_scroll_line_based): Call it instead of only setting the
3290         window's update_mode_line flag.
3292 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3294         An even better fix for bug#21739
3296         * src/window.c (set_window_buffer): If the window is the frame's
3297         selected window, set update_mode_lines, not the window's
3298         update_mode_line flag.
3299         * src/buffer.c (Fkill_buffer): Undo last change.
3300         (set_update_modelines_for_buf): Function deleted.
3302 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3303             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3305         Sync with soap-client repository, version 3.0.0
3307         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3308         Bump version to 3.0.0.
3310         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
3312         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
3314         * lisp/net/soap-inspect.el: Shorten first line description.
3316         * lisp/net/soap-client.el: Make a small whitespace fix.
3318         * lisp/net/soap-inspect.el: Update copyright years.
3320         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
3321         first use in soap-encode-xs-element.
3323         * lisp/net/soap-client.el (soap-type-is-array?): new defun
3324         (soap-encode-xs-element): handle array elements in this function
3325         (soap-encode-xs-complex-type): flag error if asked to encode an
3326         array type, this is handled in `soap-encode-xs-element'
3328         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
3329         Do not print type for attribute group.
3331         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
3332         New function.
3333         (soap-inspect-xs-attribute-group): Likewise.
3335         * lisp/net/soap-inspect.el
3336         (soap-resolve-references-for-xs-attribute-group): Resolve
3337         references of attributes in an attribute group.
3339         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
3340         type directly, not through soap-wsdl-get.
3342         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
3343         nil if reference attribute is nil.
3345         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3346         Convert XML schema attributes to xsd:string.
3348         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
3349         New function.
3350         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
3351         (soap-sample-value-for-xs-complex-type): Likewise.
3352         (soap-inspect-xs-attribute): New function.
3353         (soap-inspect-xs-simple-type): Print attributes.
3354         (soap-inspect-xs-complex-type): Likewise.
3356         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
3357         Resolve references for attributes.
3358         (soap-resolve-references-for-xs-complex-type): Likewise.
3360         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
3361         Rename from soap-xml-node-first-child.
3362         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
3363         (soap-xs-parse-simple-type): Likewise.
3365         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
3367         * lisp/net/soap-client.el (soap-invoke-internal): New function.
3368         (soap-invoke-async): Call soap-invoke-internal.
3369         (soap-invoke): Likewise.
3371         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
3372         url-retrieve callback is killed.
3374         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
3375         Rename function.
3376         (soap-parse-wsdl-phase-fetch-imports): Likewise.
3377         (soap-parse-wsdl-phase-parse-schema): Likewise.
3378         (soap-parse-wsdl-phase-fetch-schema): Likewise.
3379         (soap-parse-wsdl-phase-finish-parsing): Likewise.
3380         (soap-parse-wsdl): Update calls.
3382         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
3384         * lisp/net/soap-client.el (soap-invoke-async): New function.
3385         (soap-invoke): Reimplement using soap-invoke-async.
3387         * lisp/net/soap-client.el (soap-parse-server-response):
3388         Improve docstring.
3389         (soap-invoke): Inline call to soap-parse-server-response.
3391         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3392         Prevent incorrect warning.
3394         * lisp/net/soap-client.el (soap-parse-server-response):
3395         Rename soap-process-url-response.  Destroy the mime part.
3396         (soap-invoke): Call soap-parse-server-response.
3398         * lisp/net/soap-client.el: Update copyright date.
3400         * lisp/net/soap-client.el: Fix checkdoc issues.
3402         * lisp/net/soap-client.el: Fix indentation and long lines.
3404         * lisp/net/soap-client.el (soap-time-format): Remove variable.
3405         (soap-encode-xs-basic-type): Simplify date-time format detection.
3406         (soap-decode-xs-basic-type): Remove soap-time-format support.
3408         * lisp/net/soap-client.el (soap-process-url-response): New function.
3409         (soap-fetch-xml-from-url): Call soap-process-url-response.
3410         (soap-parse-wsdl-phase-1): New function.
3411         (soap-parse-wsdl-phase-2): Likewise.
3412         (soap-parse-wsdl-phase-3): Likewise.
3413         (soap-parse-wsdl-phase-4): Likewise.
3414         (soap-parse-wsdl-phase-5): Likewise.
3415         (soap-parse-wsdl): Call phase functions.
3417         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
3418         Remove one-argument and call.
3420         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
3422         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
3423         (soap-parse-schema): Add wsdl argument.  Look up XML schema
3424         imports from wsdl.
3425         (soap-load-wsdl): Do not set soap-xmlschema-imports.
3426         (soap-parse-wsdl): Get XML schema imports from wsdl.
3428         * lisp/net/soap-client.el (soap-current-file): Remove variable.
3429         (soap-wsdl): Add current-file slot.
3430         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
3431         file from wsdl.
3432         (soap-fetch-xml-from-file): Likewise.
3433         (soap-fetch-xml): Likewise.
3434         (soap-load-wsdl): Always create wsdl object first.
3435         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
3437         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
3438         (soap-xs-parse-element): Set is-group slot.
3439         (soap-resolve-references-for-xs-element): Skip is-group elements.
3440         (soap-xs-complex-type): Add is-group slot.
3441         (soap-xs-parse-complex-type): Set is-group slot.
3442         (soap-xs-parse-sequence): Parse xsd:group elements.
3443         (soap-resolve-references-for-xs-complex-type): Inline elements
3444         from referenced xsd:group nodes.
3445         (soap-parse-schema): Parse xsd:group nodes.
3447         * lisp/net/soap-client.el (soap-invoke):
3448         Don't set url-http-version to 1.0.
3450         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3451         Allow choice nodes to accept multiple values.
3453         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
3454         for extra header values.
3456         * lisp/net/soap-client.el (soap-well-known-xmlns):
3457         Add wsa and wsaw tags.
3458         (soap-operation): Add input-action and output-action slots.
3459         (soap-parse-operation): Parse wsaw:Action nodes.
3460         (soap-encode-body): Encode service-url for WS-Addressing.
3461         (soap-create-envelope): Likewise.
3462         (soap-invoke): Update soap-create-envelope call to provide
3463         service-url argument.
3465         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3466         Support xsi:type override attribute.
3467         (soap-decode-array): Likewise.
3469         * lisp/net/soap-client.el (soap-parse-schema):
3470         Handle location attribute.
3472         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
3473         matched validation regexp.
3475         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
3476         Encode xsd:list nodes.
3477         (soap-decode-xs-simple-type): Decode xsd:list nodes.
3479         * lisp/net/soap-client.el (soap-get-candidate-elements):
3480         Fix reference handling.
3482         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
3483         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
3484         (soap-xs-add-list): New function.
3486         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
3487         expected, interpret nil as "false".
3489         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
3490         gYear, gMonthDay, gDay and gMonth.
3492         * lisp/net/soap-client.el (soap-time-format): New variable.
3493         (soap-encode-xs-basic-type): Handle dateTime, time, date,
3494         gYearMonth, gYear, gMonthDay, gDay and gMonth.
3495         (soap-decode-date-time): New function.
3496         (soap-decode-xs-basic-type): Use soap-decode-date-time.
3498         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
3499         after encoding.
3500         (soap-decode-xs-basic-type): Validate value before decoding.
3502         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
3503         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
3505         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
3506         instead of overwriting it.
3507         (soap-validate-xs-simple-type): Add union support.
3509         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
3510         to Emacs regexp using xsdre-translate.
3511         (soap-validate-xs-simple-type): Validate value against pattern.
3513         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
3514         inline simpleType nodes.
3515         (soap-decode-type): Handle union types.
3517         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
3518         attributes.
3520         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
3521         from soap-xs-attribute-group-consolidate, all callers updated
3522         (soap-get-xs-attributes): Rename from
3523         soap-xs-attributes-consolidate, all callers updated
3525         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
3526         (soap-xs-attribute-group): New type.
3527         (soap-xs-parse-attribute-group): New function.
3528         (soap-resolve-references-for-xs-attribute-group): Likewise.
3529         (soap-xs-add-extension): Handle attribute groups.
3530         (soap-resolve-references-for-xs-simple-type): Likewise.
3531         (soap-xs-parse-complex-type): Likewise.
3532         (soap-xs-parse-extension-or-restriction): Likewise.
3533         (soap-resolve-references-for-xs-complex-type): Likewise.
3534         (soap-xs-attribute-group-consolidate): New function.
3535         (soap-xs-attributes-consolidate): Handle attribute groups.
3536         (soap-parse-schema): Likewise.
3538         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
3539         Fix boolean encoding.
3541         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
3542         element names in warnings.
3544         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
3546         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3547         Eliminate invalid warnings for choice types.
3549         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3550         Also encode base type attributes.
3552         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
3553         warning.  Print e-name in warnings, or element if e-name is nil.
3555         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
3556         (soap-xs-parse-element): Set substitution-group.
3557         (soap-resolve-references-for-xs-element): Populate alternatives slot.
3558         (soap-get-candidate-elements): New function.
3559         (soap-encode-xs-complex-type): Iterate through all candidate elements.
3560         Handle types with nil type indicator.  Fix warning logic.
3562         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
3563         earlier in the file to prevent compiler warning.
3565         * lisp/net/soap-client.el (soap-node-optional): New function.
3566         (soap-node-multiple): Likewise.
3567         (soap-xs-parse-element): Call soap-node-optional and
3568         soap-node-multiple.
3569         (soap-xs-complex-type): Add optional? and multiple? slots.
3570         (soap-xml-get-children-fq): New function.
3571         (soap-xs-element-get-fq-name): Likewise.
3572         (soap-xs-complex-type-optional-p): Likewise.
3573         (soap-xs-complex-type-multiple-p): Likewise.
3574         (soap-xs-attributes-consolidate): Likewise.
3575         (soap-decode-xs-attributes): Likewise.
3576         (soap-decode-xs-complex-type): Decode types with nil type indicator.
3577         Support children that use local namespaces.  Decode attributes.
3578         Add type considerations to optional? and multiple? warnings.
3580         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
3581         Store parsed attributes.
3582         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
3584         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3585         Don't add the xsi:type attribute (Exchange refuses requests which have
3586         this attribute).
3588         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
3589         correct compiler warnings about unused function arguments and
3590         local variables.
3592         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
3593         type indicator.
3594         (soap-parse-envelope): Handle response headers.
3595         (soap-parse-response): Likewise.  Only return non-nil decoded values.
3597         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
3598         Return validated value.
3600         * lisp/net/soap-client.el (soap-xs-parse-element)
3601         (soap-xs-parse-simple-type)
3602         (soap-xs-parse-complex-type)
3603         (soap-parse-message)
3604         (soap-parse-operation): Add the current namespace to the element
3605         being created.
3606         (soap-resolve-references-for-xs-element)
3607         (soap-resolve-references-for-xs-simple-type)
3608         (soap-resolve-references-for-xs-complex-type)
3609         (soap-resolve-references-for-operation): Resolve the namespace to
3610         the namespace tag.
3611         (soap-make-wsdl): specify a namespace tag when creating the xsd
3612         and soapenc namespaces
3613         (soap-wsdl-resolve-references): don't update namespace tags in
3614         elements here
3615         (soap-parse-port-type): bind the urn: to soap-target-xmlns
3616         (soap-encode-body): don't add nil namespace tags to
3617         soap-encoded-namespaces
3619         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
3620         for registering the soap-inspect method.  Make debbugs tests pass.
3621         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
3622         type name, also skip string only nodes when decoding a structure.
3623         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
3624         types too.
3625         (soap-encode-body): Grab the header value from the param table.
3627         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
3628         New function.
3629         (soap-encode-xs-element): Don't encode nil value unless needed.
3631         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
3632         (soap-parse-binding): Parse the message parts required in the body.
3633         (soap-encode-body): Encode only the parts that are declared to be
3634         part of the body.
3636         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
3637         when writing out the tag.
3638         (soap-encode-body): Remove hack that inserts the xmlns in the
3639         element attributes list.
3641         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
3642         (soap-xs-parse-attribute): Default slot is set from the XML
3643         "fixed" attribute.
3644         (soap-encode-xs-complex-type-attributes): Encode any attributes
3645         that have a default value.  Also, don't put the xsi:nil attribute
3646         when the complex type has no content anyway.
3648         * lisp/net/soap-client.el (soap-well-known-xmlns):
3649         Add the xml namespace.
3650         (soap-local-xmlns): Start with the xml namespace.
3651         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
3652         (soap-make-xs-basic-types): More xsd types added.
3653         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3654         Handle "language", "time", "date", "nonNegativeInteger".
3655         (soap-resolve-references-for-xs-element): Don't signal an error if
3656         the element does not have a type.
3657         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
3658         added stum for xsd:list.
3659         (soap-xs-add-union): Call soap-l2fq on all union members.
3660         (soap-xs-add-extension): Call soap-l2fq on the base member.
3661         (soap-resolve-references-for-xs-simple-type): Don't signal an
3662         error if the simple type has no base.
3663         (soap-resolve-references-for-xs-simple-type): Bugfix, call
3664         soap-wsdl-get on each type of the base.
3666         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3667         Referenced type can be eiher a simple type or a basic type.
3668         (soap-xs-add-restriction)
3669         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
3670         (soap-make-xs-basic-types)
3671         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3672         Add support for more XMLSchema basic types.
3673         (soap-current-file, soap-xmlschema-imports): New defvars.
3674         (soap-parse-schema): Add locations from xsd:import tags to
3675         `soap-xmlschema-imports'.
3676         (soap-wsdl): Make destructor private.
3677         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
3678         (soap-wsdl-add-alias): Check if we try to replace aliases.
3679         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
3680         (soap-fetch-xml): New defuns.
3681         (soap-load-wsdl): Update to load the WSDL from either a file or
3682         an url.
3683         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
3684         (soap-parse-wsdl): Process wsdl:import tags and imports from
3685         `soap-xmlschema-imports'.
3686         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
3687         symbol-name.
3688         (soap-l2fq): Make the name part always a string.
3689         (soap-name-p): New defun, used for name tests.
3691         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
3692         Supply sample values for choice types with a special tag.
3693         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
3694         Handle anonymous elements correctly.
3695         (soap-encode-value): Accept nodes that have no namespace tag.
3697         * lisp/net/soap-client.el (soap-invoke): Encode the string for
3698         `url-request-data' as UTF-8.  Fixes issue 16.
3700 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
3702         Update the new icon
3704         Move the E slightly to the right in the circle.
3706         * etc/images/icons/hicolor/128x128/apps/emacs.png:
3707         * etc/images/icons/hicolor/16x16/apps/emacs.png:
3708         * etc/images/icons/hicolor/24x24/apps/emacs.png:
3709         * etc/images/icons/hicolor/32x32/apps/emacs.png:
3710         * etc/images/icons/hicolor/48x48/apps/emacs.png:
3711         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
3712         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
3713         * nt/icons/emacs.ico: New icom update.
3715 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3717         Avoid missing inline functions from lisp.h in TAGS
3719         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
3720         need to end each invocation with a semi-colon.
3721         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
3722         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
3723         inline functions defined immediately after each invocation, and
3724         also avoid tagging every invocation of these macros.
3726 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3728         A better fix for bug#21739
3730         * src/buffer.c (set_update_modelines_for_buf): New function.
3731         (Fkill_buffer): Use it to set the global variable
3732         update_mode_lines if the killed buffer was displayed in some
3733         window.  Don't set windows_or_buffers_changed.  This is a better
3734         fix for bug#21739 than the previous fix, since it will cause only
3735         redisplay of mode lines, not of entire windows, but will still
3736         catch attention of x_consider_frame_title in xdisp.c, which
3737         redraws the frame title.
3739 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
3741         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
3742         tar.bz2 and tar.xz archives.
3744 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3746         Fix infloop in redisplay introduced by a recent change
3748         * src/xdisp.c (redisplay_internal): Avoid inflooping when
3749         redisplaying the selected window sets the selected frame's
3750         redisplay flag.  (Bug#21745)
3752 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3754         * lisp/emacs-lisp/thunk.el: Better documentation.
3756 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3758         Replace the old icon for Windows and Mac OSX
3760         * nt/icons/emacs.ico:
3761         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
3762         Use the new icons.
3764 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
3766         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
3767         `load-path' should contain only directory names.
3769 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3771         New library thunk.el
3773         thunk.el is extracted from stream.el in ELPA, with additional tests.
3775         * lisp/emacs-lisp/thunk.el: New file.
3776         * test/automated/thunk-tests.el: New file.
3777         * etc/NEWS: Add information about thunk.el
3779 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
3781         Fix bug#21669
3783         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
3784         calling low-level functions.
3786         * test/automated/file-notify-tests.el (file-notify--test-timeout):
3787         Decrase to 6 seconds for remote directories.
3788         (file-notify-test02-events): Expect different number of
3789         `attribute-changed' events for the local and remote cases.  Apply
3790         short delays between the operations, in order to receive all
3791         events in the remote case.  Combine `attribute-change' tests.
3792         (Bug#21669)
3794 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3796         Decode the HTML source when displaying it in EWW
3798         * lisp/net/eww.el (eww-view-source): Decode the HTML source
3799         according to its headers.
3801 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3803         New default icon
3805         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
3806         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
3807         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
3808         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
3809         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
3810         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
3811         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
3812         Move the old logo files to emacs23.*.
3813         * etc/images/icons/hicolor/128x128/apps/emacs.png:
3814         * etc/images/icons/hicolor/16x16/apps/emacs.png:
3815         * etc/images/icons/hicolor/24x24/apps/emacs.png:
3816         * etc/images/icons/hicolor/32x32/apps/emacs.png:
3817         * etc/images/icons/hicolor/48x48/apps/emacs.png:
3818         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
3819         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
3820         New files.
3821         * etc/images/icons/README: Update the copyright information.
3823 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3825         Fix redisplay of frame title when current buffer is killed
3827         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
3828         non-zero value, to redisplay more than just the affected windows.
3829         (Bug#21739)
3831 2015-10-23  Anders Lindgren  <andlind@gmail.com>
3833         NextStep maximization and NSTRACE rewrite
3835         Full-height, full-width, and maximized windows now cover the
3836         entire screen (except the menu bar), including the part where the
3837         system dock is placed.  The system zoom animation is no longer
3838         used.
3840         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
3841         original size.
3843         * src/nsterm.m (ns_menu_bar_height): New function, return height of
3844         the menu bar, or 0 when it's hidden.
3845         (constrain_frame_rect): New function for constraining a frame.
3846         (ns_constrain_all_frames): Set frame size explicitly rather than
3847         relying on the system doing it for us by writing back the current
3848         frame size.
3849         (windowWillUseStandardFrame): Register non-maximized width or
3850         height as new user size.  When entering full width or height,
3851         the other size component is taken from the user size.
3852         (fullscreenState): New method for accessing the fullscreen state.
3853         (constrainFrameRect): Restrict frame to be placed under the menu bar,
3854         if present.  The old version, sometimes, restricted the height of a
3855         frame to the screen, this version never does this.
3856         (zoom): Perform zoom by setting the frame to the full size of the
3857         screen (minus the menu bar).  The default system function, with the
3858         zoom animation, is no longer used, as the final frame size doesn't
3859         cover the entire screen.
3861         Rework how to constrain resizing to the character grid.  The old
3862         system used "resizeIncrements" in NSWindows.  However, once a frame
3863         was resized so that it was not aligned to the text grid, it
3864         remained unaligned even after a resize.  In addition, it conflicted
3865         when resizing a fullheight window.
3867         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
3868         unless when pixelwise frame resizing is enabled.
3869         (updateFrameSize, initFrameFromEmacs)
3870         (toggleFullScreen, handleFS): Don't set resizeIncrements.
3872         Redesign the NS trace system.  The call structure is represented
3873         using indentations and vertical lines.  The NSTRACE macro accepts
3874         printf-style arguments.  New macros for printing various
3875         information.
3877         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
3878         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
3879         block (typically a function), accept printf-style arguments.
3880         (NSTRACE_MSG): Macro for extra information, accepts
3881         printf-style arguments.
3882         (NSTRACE_what): Macros for printing various types.
3883         (NSTRACE_FMT_what): Macro with printf format string snippets.
3884         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
3885         corresponds to NSTRACE_FMT_what.
3886         (NSTRACE_RETURN): Macro to print return value, accept
3887         printf-style arguments.
3888         (NSTRACE_RETURN_what): Macros to print return value for
3889         various types.
3891         * nsterm.m: Remove old NSTRACE macro
3892         * src/nsterm.m (nstrace_num): Trace counter.
3893         (nstrace_depth): Current call depth.
3894         (nstrace_leave): NSTRACE support function, called when the
3895         local variable "nstrace_enabled" goes out of scope using the
3896         "cleanup" extension.
3897         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
3898         (constrain_frame_rect, ns_constrain_all_frames)
3899         (ns_update_auto_hide_menu_bar, ns_update_begin)
3900         (ns_update_window_begin, update_window_end, ns_update_end)
3901         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
3902         (ns_frame_rehighlight, x_make_frame_visible)
3903         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
3904         (x_destroy_window, x_set_offset, x_set_window_size)
3905         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
3906         (ns_defined_color, frame_set_mouse_pixel_position)
3907         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
3908         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
3909         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
3910         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
3911         (dumpcursor, ns_draw_vertical_window_border)
3912         (ns_draw_window_divider, ns_draw_relief)
3913         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
3914         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
3915         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
3916         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
3917         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
3918         (ns_create_terminal, ns_term_init, sendEvent)
3919         (applicationDidFinishLaunching, applicationDidBecomeActive)
3920         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
3921         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
3922         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
3923         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
3924         (mouse_autoselect_window, in_window, mouseDragged)
3925         (rightMouseDragged, otherMouseDragged, windowShouldClose)
3926         (updateFrameSize, windowWillResize, windowDidResize)
3927         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
3928         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
3929         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
3930         (windowDidEnterFullScreen, windowWillExitFullScreen)
3931         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
3932         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
3933         (draggingEntered, performDragOperation, validRequestorForSendType)
3934         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
3935         (EmacsScroller_initFrame, EmacsScroller_setFrame)
3936         (EmacsScroller_dealloc, condemn, reprieve, judge)
3937         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
3938         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
3940         * nsfns.m: Remove old NSTRACE macro
3941         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
3942         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
3943         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
3945         * nsimage.m: Remove old NSTRACE macro
3946         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
3947         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
3949         * nsmenu.m: Remove old NSTRACE macro
3950         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
3951         Use new trace system.
3953 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3955         No need to use eval-and-compile
3957         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
3958         autoload epg functions.
3960 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3962         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
3964         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
3965         epg-context-set-passphrase-callback, epg-decrypt-string, and
3966         epg-encrypt-string; require epg when compiling for the setf-method
3967         for epg-context-armor. (bug#21724)
3969 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
3971         Include file cleanup for w32 files in src directory
3973         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
3974         fontset.h, blockinput.h.
3975         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
3976         charset.h, fontset.h.
3977         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
3978         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
3979         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
3980         in an ifdef-ed away block.
3981         Include fcntl.h for CYGWIN.
3982         (set_frame_param): Remove unused function.
3983         * src/w32select.c: Don't include charset.h and composite.h.
3984         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
3985         due to pointer signedness mismatches.
3986         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
3987         due to pointer signedness mismatches.
3988         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
3989         process.h, dispextern.h.
3990         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
3991         (Fw32_application_type): Avoid compiler warnings due to pointer
3992         signedness mismatches.
3993         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
3994         character.h, charset.h, dispextern.h.
3995         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
3996         to pointer signedness mismatches.
3997         * src/w32inevt.c: Don't include dispextern.h, window.h,
3998         termhooks.h, w32heap.h.
3999         * src/w32font.c: Don't include dispextern.h, character.h,
4000         charset.h, fontset.h, font.h.
4001         (intern_font_name, add_font_entity_to_list)
4002         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
4003         (list_all_matching_fonts): Avoid compiler warnings due to pointer
4004         signedness mismatches.
4005         * src/w32fns.c: Don't include character.h, intervals.h,
4006         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
4007         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
4008         (w32_color_map_lookup, add_system_logical_colors_to_map)
4009         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
4010         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
4011         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
4012         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
4013         compiler warnings, mainly due to pointer signedness mismatches.
4014         (unwind_create_frame_1): Remove unused function.
4015         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
4016         window.h, termhooks.h, dispextern.h.
4017         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
4018         signedness mismatch.
4019         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
4020         w32heap.h.
4022 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
4024         Improve doc-view wrt. auto-revert-mode
4026         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
4027         is corrupted (bug#21729).
4028         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
4030 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
4032         Describe dired-do-compress-to in the manual
4034         * etc/NEWS: Update.
4036         * lisp/dired-aux.el: Fix typo.
4038         * doc/emacs/dired.texi: Add entry.
4040 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
4042         Further fix for proper locale handling in tramp-gvfs.el
4044         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4045         Just suppress LC_MESSAGES locale category settings.
4047 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
4049         New lispref section “Security Considerations”
4051         This attempts to document some of the issues recently discussed
4052         on emacs-devel, and to indicate other such issues.  The section
4053         could be a lot longer.
4054         * doc/lispref/os.texi (Security Considerations):
4055         New node.
4056         * doc/lispref/elisp.texi (Top):
4057         * doc/lispref/processes.texi (Shell Arguments):
4058         * lisp/subr.el (shell-quote-argument):
4059         * src/callproc.c (syms_of_callproc):
4060         Reference it.
4062 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
4064         Merge from gnulib
4066         This incorporates:
4067         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
4068         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
4069         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
4070         Copy from gnulib.
4072 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4074         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
4075         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
4077 2015-10-21  Ken Brown  <kbrown@cornell.edu>
4079         Further include-file cleanup
4081         * src/sheap.c: Include stdlib.h.
4082         * src/unexcw.c: Include string.h.
4084 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
4086         Fix logic in 'server-kill-emacs-query-function'
4088         * lisp/server.el (server-kill-emacs-query-function): Correct the
4089         logic that controls whether the user is asked for confirmation.
4090         (Bug#21723)
4092 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4094         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
4095         (isearch--lax-regexp-function-p): New function.
4097 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4099         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
4100         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
4101         around `isearch-regexp-function'.
4103 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4105         * lisp/isearch.el: Rename word search to regexp-function search.
4106         `isearch-word' went well beyond its original purpose, and the name
4107         no longer makes sense.  It is now called
4108         `isearch-regexp-function', and its value should always be a function
4109         that converts a string to a regexp (though setting it to t is still
4110         supported for now).
4111         (isearch-word): Make obsolete.
4112         (isearch-regexp-function): New variable.
4113         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
4114         (with-isearch-suspended, isearch-toggle-regexp)
4115         (isearch-toggle-word, isearch-toggle-symbol)
4116         (isearch-toggle-character-fold, isearch-query-replace)
4117         (isearch-occur, isearch-highlight-regexp)
4118         (isearch-search-and-update, isearch-message-prefix)
4119         (isearch-search-fun-default, isearch-search)
4120         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
4121         Use it.
4122         (isearch-lazy-highlight-regexp-function): New var.
4123         (isearch-lazy-highlight-word): Make obsolete.
4124         (isearch--describe-regexp-mode): New function.
4125         (isearch--describe-word-mode): Make obsolete.
4127         * lisp/info.el (Info-isearch-search):
4128         * lisp/replace.el (replace-search, replace-highlight):
4129         * lisp/obsolete/longlines.el (longlines-search-function):
4130         * lisp/hexl.el (hexl-isearch-search-function):
4131         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
4132         Use the new var.
4134 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
4136         Add dired-do-compress-to command bound to "c"
4138         * lisp/dired-aux.el (dired-shell-command): Use the caller's
4139           `default-directory', return the result of `process-file'.
4140         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
4141         used by default.
4142         (dired-compress-files-alist): New defvar.
4143         (dired-do-compress-to): New command.
4145         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
4146         (dired-do-compress-to): Add an autoload entry.
4148         * etc/NEWS: Add two entries.
4150 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
4152         Make RefTeX work with LaTeX subfiles package
4154         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
4155         document class argument as master file for referencing purposes.
4157 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4159         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
4161 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4163         Include-file cleanup for src directory
4165         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
4166         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
4167         but does not include it directly.  As a general rule, a source
4168         file should include foo.h if it needs the interfaces that foo.h
4169         defines.
4170         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
4171         systime.h.
4172         * src/atimer.c: Don’t include blockinput.h.
4173         * src/buffer.c: Include coding.h, systime.h.  Don’t include
4174         keyboard.h, coding.h.
4175         * src/callint.c: Don’t include commands.h, keymap.h.
4176         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
4177         systty.h, termhooks.h.
4178         * src/casetab.c: Don’t include character.h.
4179         * src/category.c: Don’t include charset.h, keymap.h.
4180         * src/ccl.h: Don’t include character.h.
4181         * src/character.c: Don’t include charset.h.
4182         * src/charset.c: Don’t include disptab.h.
4183         * src/chartab.c: Don’t include ccl.h.
4184         * src/cm.c: Don’t include frame.h, termhooks.h.
4185         * src/cmds.c: Don’t include window.h, dispextern.h.
4186         * src/coding.c: Don’t include window.h, frame.h.
4187         * src/composite.c: Include composite.h.  Don’t include window.h,
4188         font.h.
4189         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
4190         * src/dbusbind.c: Don’t include frame.h.
4191         * src/decompress.c: Don’t include character.h.
4192         * src/dired.c: Don’t include character.h, commands.h, charset.h.
4193         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
4194         process.h, timespec.h.  Include systime.h.
4195         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
4196         * src/editfns.c: Include composite.h.  Don’t include frame.h.
4197         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
4198         commands.h, systty.h..
4199         * src/fileio.c: Don’t include intervals.h, dispextern.h.
4200         Include composite.h.
4201         * src/filelock.c: Don’t include character.h, systime.h.
4202         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
4203         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
4204         * src/font.c: Include termhooks.h.
4205         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
4206         struct composition_it, struct face, struct glyph_string.
4207         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
4208         intervals.h, window.h, termhooks.h.
4209         * src/frame.c: Don’t include character.h, commands.h, font.h.
4210         * src/frame.h: Don’t include dispextern.h.
4211         * src/fringe.c: Don’t include character.h.
4212         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
4213         character.h, charset.h, fontset.h.
4214         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
4215         fontset.h.
4216         * src/ftxfont.c: Don’t include dispextern.h, character.h,
4217         charset.h, fontset.h.
4218         * src/gfilenotify.c: Don’t include frame.h, process.h.
4219         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
4220         Don’t include syssignal.h, buffer.h, charset.h, font.h.
4221         * src/gtkutil.h: Don’t include frame.h.
4222         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
4223         Don’t include character.h.
4224         * src/indent.c: Don’t include keyboard.h, termchar.h.
4225         * src/inotify.c: Don’t include character.h, frame.h.
4226         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
4227         * src/intervals.c: Don’t include character.h, keyboard.h.
4228         * src/intervals.h: Don’t include dispextern.h, composite.h.
4229         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
4230         Include coding.h.
4231         * src/keyboard.h: Don’t incldue systime.h.
4232         * src/keymap.c: Don’t include charset.h, frame.h.
4233         * src/lread.c: Include dispextern.h and systime.h.
4234         Don’t include frame.h.  Include systime.h.
4235         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
4236         * src/menu.c: Include character.h, coding.h.  Don’t include
4237         dispextern.h.
4238         * src/menu.h: Don’t include systime.h.
4239         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
4240         intervals.h, termhooks.h.
4241         * src/print.c: Include coding.h.  Don’t include keyboard.h,
4242         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
4243         Add forward decl of struct terminal.
4244         * src/process.c: Don’t include termhooks.h, commands.h,
4245         dispextern.h, composite.h.
4246         * src/region-cache.c: Don’t include character.h.
4247         * src/scroll.c: Don’t include keyboard.h, window.h.
4248         * src/search.c: Don’t include category.h, commands.h.
4249         * src/sound.c: Don’t include dispextern.h.
4250         * src/syntax.c: Don’t include command.h, keymap.h.
4251         * src/sysdep.c: Don’t include window.h, dispextern.h.
4252         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
4253         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
4254         * src/terminal.c: Include character.h.
4255         Don’t include charset.h, coding.h.
4256         * src/textprop.c: Don’t include character.h.
4257         * src/undo.c: Don’t include character.h, commands.h, window.h.
4258         * src/unexsol.c: Don’t include character.h, charset.h.
4259         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
4260         window.h, dispextern.h, blockinput.h, character.h, font.h.
4261         * src/widgetprv.h: Don’t include widget.h.
4262         * src/window.c: Don’t include character.h, menu.h, intervals.h.
4263         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
4264         macros.h, process.h.
4265         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
4266         intervals.h.
4267         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
4268         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
4269         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
4270         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
4271         * src/xgselect.c: Don’t include timespec.h, frame.h.
4272         Include systime.h.
4273         * src/xgselect.h: Don’t include time.h.
4274         Use a forward decl to struct timespec instead.
4275         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
4276         dispextern.h.  Include systime.h.
4277         * src/xml.c: Don’t include character.h.
4278         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
4279         * src/xselect.c: Don’t include dispextern.h, character.h,
4280         buffer.h, process.h.
4281         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
4282         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
4283         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
4285 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4287         (/ N) now returns the reciprocal of N
4289         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
4290         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
4291         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
4292         (color-xyz-to-srgb, color-xyz-to-lab):
4293         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
4294         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
4295         (shr-color-hsl-to-rgb-fractions):
4296         Exploit the change to simplify the code a bit.
4297         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
4298         Don’t complain about single-argument calls to ‘/’.
4299         * src/data.c (arith_driver, float_arith_driver):
4300         Implement the change.
4302 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4304         Call vc-dir-refresh after stash operations
4306         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
4307         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
4309         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
4310         since it can be abbreviated (as returned by vc-find-root).
4312 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4314         * lisp/vc/vc-svn.el:
4315         * lisp/vc/vc-mtn.el:
4316         * lisp/vc/vc-hg.el:
4317         * lisp/vc/vc-cvs.el:
4318         * lisp/vc/vc-git.el:
4319         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
4320         Its usages have been replaced with vc-run-delayed.
4322 2015-10-20  Dima Kogan  <dima@secretsauce.net>
4324         Fix memory leak in fontset handling
4326         * src/font.c (copy_font_spec): Make a deep copy of the input
4327         argument FONT.  (Bug#21651)
4329 2015-10-20  Michael Sperber  <mike@xemacs.org>
4331         * lisp/gnus/mailcap.el (mailcap-mime-data):
4332         Conditonalize `doc-view-mode', which does not exist on XEmacs.
4334 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
4336         Update the way directories are compressed
4338         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
4339         for *.tar.gz decompression to use a pipe.
4340         Add an entry for the default directory compression (to *.tar.g).
4341         (dired-compress-file): Update.
4343         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
4345 2015-10-20  Michael Sperber  <mike@xemacs.org>
4347         Unbreak `group' option for `mail-sources'
4349         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
4350         * nnmail.el (nnmail-get-new-mail-per-group)
4351         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
4353 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
4355         New function seq-position
4357         * lisp/emacs-lisp/seq.el (seq-position): New function.
4358         * test/automated/seq-tests.el: New tests for seq-position.
4359         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
4361 2015-10-19  Ken Brown  <kbrown@cornell.edu>
4363         Enable --with-wide-int build on 32-bit Cygwin
4365         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
4366         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
4368 2015-10-19  Glenn Morris  <rgm@gnu.org>
4370         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
4372 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4374         Resurrect image loading under auto-image-file-mode
4376         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
4377         'openp' specially.  This special case was lost in the changes on
4378         2015-08-18.  (Bug#21685)
4380 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4382         Fix return value of 'set-file-extended-attributes'
4384         * lisp/files.el (set-file-extended-attributes): Return non-nil
4385         when setting either ACLs or SELinux context succeeds.  Document
4386         the return value.  (Bug#21699)
4388         * doc/lispref/files.texi (Changing Files): Document the return
4389         value of set-file-extended-attributes.
4391 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4393         Improve documentation of functions that change files
4395         * doc/lispref/files.texi (Changing Files): Document that these
4396         functions signal an error on failure.
4398 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
4400         Fix doc string of 'shell-quote-argument'
4402         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
4404 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4406         Some minor Tramp changes
4408         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
4410         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
4411         Expand `tramp-auto-save-directory'.
4413 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4415         Minor edits in Tramp
4417         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
4418         Declare it.
4420         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
4421         Remove declaration.
4423 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
4425         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
4427 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
4429         Avoid crashes when redisplayng a window changes faces or fonts
4431         * src/xdisp.c (redisplay_internal): If redisplaying the selected
4432         window or one of the frames turns on the frame's 'redisplay' flag,
4433         redisplay again.  (Bug#21428)
4435         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
4437 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
4439         Solve timimg issues in file-notify-tests.el
4441         * test/automated/file-notify-tests.el (file-notify-test02-events):
4442         Rectify `attribute-change' tests.  There are timing issues with
4443         gfilenotify.  (Bug#21669)
4445 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4447         Fix quoting of data within htmlfontify doc
4449         * doc/misc/htmlfontify.texi (Data Structures, Customization):
4450         Fix quoting of data structures.  A Lisp quote is needed only
4451         when data appears within Lisp code.
4453 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4455         * lisp/emacs-lisp/package.el: Reload archive-contents if
4456         priorities change.
4457         (package--old-archive-priorities): New variable.
4458         (package-read-all-archive-contents, package-menu--refresh): Use it
4459         to decide when the `package-archive-contents' needs to be read
4460         again.
4462 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4464         Make src headers idempotent and standalone
4466         Redo src/*.h so that each include file is idempotent (that is, can
4467         be included multiple times with the latter inclusions having no
4468         effect) and standalone (that is, can be included by itself,
4469         with no include file other than config.h needed as a prerequisite).
4470         This is standard practice in GNU programs nowadays.
4471         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
4472         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
4473         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
4474         * src/regex.h [emacs]:
4475         * src/syntax.h, src/systty.h, src/termhooks.h:
4476         Include lisp.h, for Lisp_Object.
4477         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
4478         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
4479         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
4480         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
4481         * src/termopts.h, src/tparam.h, src/unexec.h:
4482         Protect against multiple inclusion.
4483         * src/buffer.h: Include character.h, for STRING_CHAR.
4484         * src/emacsgtkfixed.h (struct frame):
4485         * src/fontset.h (struct face):
4486         * src/region-cache.h (struct buffer):
4487         * src/termhooks.h (struct glyph):
4488         * src/xsettings.h (struct x_display_info):
4489         Add possibly-forward decl.
4490         * src/syntax.h: Include buffer.h, for BVAR.
4491         * src/sysselect.h: Include lisp.h, for eassume.
4492         * src/termchar.h: Include <stdio.h>, for FILE.
4493         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
4494         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
4496 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
4498         Handle symlink targets containing spaces in tramp-gvfs.el
4500         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4501         Handle symlink targets containing spaces.
4503 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4505         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
4507         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
4508         same reason that `load-path' shouldn't.  Setting it via the customize
4509         interface is a trap for the user.
4511         Installed themes commonly add themselves to this variable, which means
4512         its value is not fit for being saved (it will permanently remember dirs
4513         that don't exist anymore).
4515         This is aggravated by the fact that Emacs always applies the `user'
4516         theme on top of any theme that's loaded, since this will apply the old
4517         variable value and remove any new directories that had been recently
4518         added by themes themselves.
4520         Not to mention, we already have `custom-theme-directory', which is safe
4521         to customize.
4523 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
4525         * lisp/mpc.el: Rename the new toggling commands.
4526         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
4527         (mpc-toggle-shuffle): Add "-toggle" in the name.
4529 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4531         Improve the doc string of 'completion-boundaries'
4533         * lisp/minibuffer.el (completion-boundaries): Rename the argument
4534         TABLE to COLLECTION, for consistency with other high-level
4535         completion functions.  Document how COLLECTION is called if it
4536         is a function.  (Bug#21644)
4538 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4540         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
4542 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4544         Make dired-do-compress work for *.zip files
4546         * lisp/dired-aux.el (dired-check-process): Transform the top-level
4547           comment into a docstring.
4548         (dired-shell-command): New command.  This mirrors
4549         `dired-check-process', but is more user-friendly for passing
4550         arguments.
4551         (dired-compress-file-suffixes): Allow to specify the command switches
4552         along with input (%i) and output (%o) inside the PROGRAM part.
4553         Add an entry for *.zip files, and update the entry for *.tar.gz files
4554         to the new style.  Update the docstring.
4555         (dired-compress-file): When PROGRAM matches %i or %o, use the new
4556         logic.
4557         (dired-update-file-line): Avoid an error when at end of buffer.
4559         Fixes bug#21637.
4561 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4563         Minor improvement in documentation of internals
4565         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
4567 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4569         Improve documentation of COLLECTION in completion functions
4571         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
4572         cross-reference to "Programmed Completion".
4574         * src/minibuf.c (Fcompleting_read): Improve the doc string.
4575         (Bug#21644)
4577 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4579         Add more release info to etc/HISTORY
4581         * etc/HISTORY: Add more release information about 19.x and 20.x
4582         versions.
4584 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4586         New file etc/HISTORY
4588         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
4589         * etc/HISTORY: New file.
4590         * etc/NEWS: Mention it.
4592 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4594         js-mode: Don't misindent generator methods
4596         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
4597         generator methods from multiplication operator
4598         (https://github.com/mooz/js2-mode/issues/275).
4600 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4602         Fix animation timeout delay calculation
4604         * lisp/image.el (image-animate-timeout):
4605         Don’t assume speed is floating-point.
4607 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
4609         Add commands for controlling MPD modes
4611         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
4612         (mpc-cmd-single): New functions.
4613         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
4614         (mpc-mode-menu): Add new commands as menu items.
4616 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4618         Refer to `(elisp)Basic Completion' in completing-read docstring
4620         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
4621         Completion' in the docstring (bug#21644).
4623 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4625         * lisp/mpc.el (mpc-format): Always push form to pred
4627 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4629         Spelling fixes
4631         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
4632         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
4633         Fix misspelling of nonexistent file name.
4635 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4637         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
4639 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
4641         Some editing fixes in Tramp
4643         * lisp/net/tramp-gvfs.el:
4644         * doc/misc/tramp.texi: "customer option" -> "custom option".
4646         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
4648 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
4650         Use proper localization in tramp-gvfs.el
4652         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4653         Suppress localized settings in order to proper parse gfvs output.
4655 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
4657         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
4658         Quote argument in proper order.  (Bug#21562)
4660 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4662         Fix typos in docstrings
4664         * lisp/emacs-lisp/map.el:
4665         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
4666           macros.
4668 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4670         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
4672 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
4674         Make dired-jump work with tar-subfile-mode
4676         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
4677           emitting an error, switch to `tar-superior-buffer'.
4679 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
4681         * .gitignore: Add build-aux/ar-lib.
4683 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4685         Better docstrings in seq.el and map.el
4687         * lisp/emacs-lisp/map.el:
4688         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
4690 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4692         Merge from gnulib
4694         This incorporates:
4695         2015-10-13 binary-io, u64, unistd: port to strict C
4696         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
4697         2015-09-25 c-ctype: port better to z/OS EBCDIC
4698         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
4699         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
4700         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
4701         Copy from gnulib.
4703 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4705         Take XPNTR private
4707         * src/alloc.c (PURE_POINTER_P): Remove.
4708         All uses replaced with PURE_P.
4709         (XPNTR_OR_SYMBOL_OFFSET): New function.
4710         (XPNTR): Move here from lisp.h.
4711         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
4712         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
4713         Remove unnecessary cast.
4714         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
4715         to avoid an unnecessary runtime test for symbols.
4716         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
4717         Only alloc.c needs XPNTR now.
4719 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4721         Add MPC play/pause command
4723         * lisp/mpc.el (mpc-toggle-play): New command.
4724         (mpc-mode-map): Bind it to "s".
4725         (mpc-mode-menu): Add corresponding menu item.
4727 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4729         Add bindings and menu items for prev and next tracks
4731         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
4732         "<" to mpc-prev.
4733         (mpc-mode-menu): Add corresponding menu items
4735 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
4737         Reduce face-related consing during frame creation.
4739         * faces.el (face--attributes-unspecified): Compute the "unspecified"
4740         attribute list once.
4741         (face-spec-reset-face): Use it instead of building the list.
4743 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
4745         Do process ConfigureNotify events indicating size changes.
4747         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
4748         events don't have the same size, process each one.
4750 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4752         Derive mpc-mode from special-mode
4754         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
4755         (mpc-mode): Derive from special mode.
4756         (mpc-songs-mode-map): Don't set parent keymap.
4758 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4760         Fix error messages for when covers are not found.
4762         The last change to mpc-format let the binding to file call
4763         mpc-file-local-copy with nil argument.  Instead, employ if-let here
4764         so nil bindings don't result in needless computation and errors.
4765         * lisp/mpc.el: Require 'subr-x at compile time.
4766         * lisp/mpc.el (mpc-format): Use if-let.
4768 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
4770         Make dired-do-compress work for *.tar.gz files
4772         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
4773           "tar -zxvf" to *.tar.gz; update docstring.
4775         (dired-compress-file): Allow to specify switches after the command in
4776         `dired-compress-file-suffixes'.
4778 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
4780         Make dired-do-compress work for directories
4782         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
4783           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
4784         Also convert the top comment into a docstring.
4786 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
4788         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
4790         ... since it might come straight from the memoizing table.
4792 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
4794         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
4796 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4798         Use special-mode in eww list modes
4800         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
4801         (eww-buffers-mode): Derive from special-mode and remove redundant
4802         setting of buffer-read-only.
4803         (eww-mode-map): Remove redundant keymap parent setting.
4804         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
4805         Remove redundant keymap suppressions and mappings.
4807 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
4809         Allow setting frame pixel sizes from frame parameters (Bug#21415)
4811         Also fix some misfeatures in frame (re-)sizing code, add more
4812         debugging information and remove some dead code.
4814         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
4815         parameter names when setting `frame-size-history'.
4816         (frame--size-history): New function.
4818         * src/frame.c (frame_inhibit_resize): If frame has not been made
4819         yet, return t if inhibit_horizontal_resize or
4820         inhibit_vertical_resize bit have been set.
4821         (adjust_frame_size): Simplify.
4822         (make_frame): Initialize inhibit_horizontal_resize,
4823         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
4824         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
4825         inhibit_vertical_resize slots.
4826         (x_set_frame_parameters): Handle `text-pixels' specification for
4827         width and height parameters.  Don't consider new_height or
4828         new_width changes.  Call adjust_frame_size instead of
4829         Fset_frame_size.
4830         (x_figure_window_size): Two new arguments x_width and y_width
4831         returning frame's figures width and height.  Calculate tool bar
4832         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
4833         Handle `text-pixels' specification for width and height
4834         parameters.
4835         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
4836         (Qx_set_window_size_1, Qx_set_window_size_2)
4837         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
4838         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
4839         (Qfree_frame_menubar_2): New symbols.
4840         * src/frame.h (structure frame): New booleans
4841         tool_bar_redisplayed, tool_bar_resized,
4842         inhibit_horizontal_resize, inhibit_vertical_resize.
4843         (x_figure_window_size): Update external declaration.
4844         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
4845         calling gtk_window_resize.
4846         (update_frame_tool_bar): Make inhibiting of frame resizing more
4847         discriminative.  Set tool_bar_resized bit.
4848         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
4849         resizing more discriminative.  Call adjust_frame_size instead of
4850         x_set_window_size.
4851         (Fx_create_frame): Handle x_width and x_height if
4852         set by x_figure_window_size.
4853         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
4854         subtract 3 from tool bar height.
4855         (x_set_window_size): Add frame_size_history_add call.
4856         (x_new_font): Call adjust_frame_size instead of
4857         x_set_window_size.
4858         * src/w32fns.c (x_change_tool_bar_height): Reset
4859         tool_bar_redisplayed and tool_bar_resized bits when adding tool
4860         bar.  Make inhibiting of frame resizing more discriminative.
4861         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
4862         (Fx_create_frame): Handle x_width and x_height if set by
4863         x_figure_window_size.  Set size hints before adjusting frame size.
4864         (x_create_tip_frame): Adjust x_figure_window_size call.
4865         * src/w32term.c (x_set_window_size): Add frame_size_history_add
4866         call.
4867         * src/widget.c (set_frame_size): Remove dead code.  Add
4868         frame_size_history_add call.  When frame_resize_pixelwise is t
4869         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
4870         pixel_width and pixel_height.
4871         (update_various_frame_slots): Remove dead code.
4872         (EmacsFrameResize): Add more information in
4873         frame_size_history_add call.
4874         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
4875         is not set.
4876         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
4877         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
4878         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
4879         tool_bar_resized bits when adding tool bar.  Make inhibiting of
4880         frame resizing more discriminative.
4881         (Fx_create_frame): Handle x_width and x_height if set by
4882         x_figure_window_size.  Set size hints before adjusting frame size.
4883         (x_create_tip_frame): Adjust x_figure_window_size call.
4884         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
4885         (set_frame_menubar): On Lucid never add core-border-width to
4886         avoid that adding XtNinternalBorderWidth adds it again.
4887         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
4888         * src/xterm.c (x_new_font): In non-toolkit case handle size
4889         change of menu bar.
4890         (x_set_window_size_1): Fix calls to frame_size_history_add.
4891         (x_wm_set_size_hint): Remove dead code.  Set
4892         size_hints.min_width and size_hints.min_height to base_width and
4893         base_height.
4895 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
4897         * test/automated/file-notify-tests.el (file-notify--test-timeout):
4898         Add docstring.  Increase to 10 seconds for remote
4899         directories.  (Bug#21669)
4901 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
4903         Unmacroize ebrowse.c and etags.c a bit
4905         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
4906         (streq, filename_eq, set_flag, has_flag): Now inline functions.
4907         (set_flag): First arg is now an address, not an lvalue.
4908         All callers changed.
4909         (filename_eq, set_flag, has_flag):
4910         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
4911         All callers changed.
4912         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
4913         Now inline functions.  Remove asserts that are unnecessary these
4914         days (and in some cases were too-generous anyway).
4916 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4918         Use highlight for current items
4920         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
4921         Apply highlight face instead of region face.
4923 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4925         Search for more cover image names in MPC
4927         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
4928         case insensitively
4930 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4932         Remove or comment out unused variables
4934         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
4935         nontext_cursor, mode_cursor, hand_cursor and count.
4936         (x_change_tool_bar_height): Remove variable old_text_height.
4937         (deliver_wm_chars): Remove variable strip_Alt.
4938         (Fw32_shell_execute): Remove variable document_a.
4939         (Fw32_frame_geometry): Remove variable fullboth.
4940         * src/w32term.c (w32_setup_relief_color): Comment out variable
4941         w32_display_info.
4942         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
4943         (w32_read_socket): Comment out variables rows, columns.
4944         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
4946 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4948         * src/w32proc.c (sys_select): Fix bitwise test.
4950 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4952         Minor typo corrections in doc strings
4954         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
4955         Doc fixes.
4957 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4959         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
4961 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4963         Attempt to avoid crashes in plist-member
4965         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
4966         and a call to XCDR.  (Bug#21655)
4968 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
4970         * lisp/select.el (gui-get-primary-selection): In
4971         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
4973 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
4975         Support RTF in doc-view
4977         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
4979 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4981         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
4983 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4985         Replace the usage of an obsolete function in auth-source.el
4987         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
4988         Replace an usage of `epg-context-set-armor' with `setf'.
4990 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4992         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
4994 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
4996         Have calc-yank recognize numbers in different bases.
4998         * lisp/calc/calc-yank.el (math-number-regexp): New function.
4999         (calc-yank): Use `math-number-regexp' to recognize numbers.
5001 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5003         Handle an opaque-move X11 window manager operation more efficiently
5005         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
5006         followed by more ConfigureNotify events for the same window, process
5007         only the last one.
5009 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5011         Fix cursor setting for tip frame; re-enable cursor generation
5013         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
5014         attributes sent when creating the new X window.  Don't skip setting
5015         the pointerColor parameter.
5017 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5019         Rewrite x_set_mouse_color to sync less
5021         We can track serial numbers of X requests and correlate error events
5022         with the associated requests.  This way we can identify errors for
5023         specific calls without having to use XSync after every one.
5025         * src/xfns.c (enum mouse_cursor): New type.
5026         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
5027         (mouse_cursor_types): New array listing the Lisp variables and default
5028         cursor appearances for each cursor type.
5029         (x_set_mouse_color_handler): New function; checks error event serial
5030         number against submitted requests.
5031         (x_set_mouse_color): Updated to use the new error handler callback,
5032         and to be more table-driven, to simplify repetitious code.
5034 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5036         Add x_catch_errors_with_handler
5038         * src/xterm.c (struct x_error_message_stack): Add new fields for a
5039         callback function and associated data pointer.
5040         (x_error_catcher): If the callback function is set, call it after
5041         saving the error message string.
5042         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
5043         accepts a callback function and data pointer.
5044         (x_catch_errors): Now a wrapper function.
5045         * src/xterm.h (x_special_error_handler): New typedef.
5046         (x_catch_errors_with_handler): Declare.
5048 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5050         Introduce x_uncatch_errors_after_check to reduce XSync calls
5052         Both x_had_errors_p and x_check_errors call XSync, so if they're
5053         immediately followed by x_uncatch_errors, its XSync call will be
5054         redundant, resulting in a wasted round trip to the X server.
5056         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
5057         x_uncatch_errors without the XSync call.
5058         (XTmouse_position, x_wm_supports):
5059         * src/xfns.c (x_set_mouse_color):
5060         * src/xmenu.c (Fx_menu_bar_open_internal):
5061         * src/xselect.c (x_own_selection, x_get_foreign_selection):
5062         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
5063         * src/xterm.h (x_uncatch_errors_after_check): Declare.
5065 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5067         Document the optional prefix to `calc-yank'
5069         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
5070         prefix to `calc-yank'.
5071         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
5072         the Calc buffer are yanked back unchanged.
5074 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
5076         * lisp/calendar/calendar.el: Display buffer before executing body.
5078         In each use of this macro, the modeline is derived from a window width
5079         calculation, which will be wrong if (display-buffer) splits the window
5080         horizontally.
5082 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5084         Use ‘echo’ safely with ‘\’ or leading ‘-’
5086         POSIX says that ‘echo FOO’ produces implementation-defined output
5087         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
5088         behavior in that case.
5089         * Makefile.in (removenullpaths): Remove.
5090         (epaths-force): Rewrite to avoid the need for ‘echo’.
5091         (install-etc): Be clearer about escaping the shell metacharacters
5092         ‘\’ and ‘$’.
5093         * Makefile.in (install-arch-indep, install-etcdoc):
5094         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
5095         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
5096         * configure.ac, lib-src/rcs2log, make-dist:
5097         * src/Makefile.in (lisp.mk):
5098         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
5099         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
5100         if $foo can contain arbitrary characters.
5101         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
5102         * doc/lispref/two-volume.make (vol1.pdf):
5103         * test/etags/make-src/Makefile (web ftp publish):
5104         Use ‘printf’ rather than ‘echo -e’.
5106 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
5108         Allow numbers with different radixes to be yanked.
5110         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
5111         default base 10.
5113 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5115         Improve CHECK_IMPURE and PURE_P speedup
5117         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
5119 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5121         Use events instead of chars to keep track of steps.
5123         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
5124         to keep track of steps.
5126 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5128         Fix --enable-gcc-warnings problem with older GCC
5130         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
5131         This is for building with --enable-gcc-warnings with
5132         GCC 4.6 through 5.0.
5134 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5136         Fix vertical-motion in truncated lines that end in a stretch
5138         * src/indent.c (Fvertical_motion): Expect overshoot when point is
5139         beyond window margin and lines are truncated, even if we have a
5140         stretch at point.  (Bug#21468)
5142 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5144         Avoid link-time errors due to inline functions
5146         * src/emacs.c: Include puresize.h, to avoid link-time errors in
5147         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
5148         inline functions.
5150 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
5152         * src/data.c (Faset): Fix last change.
5154 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5156         CHECK_IMPURE and PURE_P speedup
5158         * src/intervals.c (create_root_interval):
5159         Do CHECK_IMPURE only for strings; not needed for buffers.
5160         Prefer ! STRINGP to BUFFERP, for a tad more speed.
5161         * src/puresize.h (CHECK_IMPURE, PURE_P):
5162         Now inline functions instead of macros.
5163         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
5164         All callers changed.
5165         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
5166         All callers changed.
5168 2015-10-09  Noah Friedman  <friedman@splode.com>
5170         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
5172 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5174         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
5176         our after-change-function, rather than re-adding it if it was removed.
5178 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5180         * lisp/cedet/ede: Silence some compiler warnings
5182         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
5183         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
5184         (ede-apply-object-keymap, ede-reset-all-buffers)
5185         (ede-auto-add-to-target): Use dolist.
5186         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
5187         Use field names rather than initarg names in `oref'.
5188         (ede-load-project-file): Remove unused var `file'.
5189         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
5190         (ede-set): Remove unused var `a'.
5192         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
5193         (ede-project-autoload): Avoid the old-style "name" argument.
5194         (ede-emacs-find-matching-target): Use field names rather than initarg
5195         names in `oref'.
5197         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
5198         (ede-linux-load, ede-project-autoload): Avoid the old-style
5199         "name" argument.
5200         (ede-linux-find-matching-target): Use field names rather than initarg
5201         names in `oref'.
5203 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5205         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
5207 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5209         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
5210         indenting too far after ":-".
5212 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5214         Update case-table and categories of recently added characters
5216         * lisp/international/characters.el: Update information about Latin
5217         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
5218         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
5219         blocks.  (Byug#21654)
5221 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
5223         * src/frame.c (adjust_frame_size): In minibuffer-only windows
5224         don't count minibuffer height twice.  (Bug#21643)
5226 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5228         Avoid inflooping in font-lock
5230         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
5231         inhibit-field-text-motion around the call to
5232         line-beginning-position, to avoid inflooping.  (Bug#21615)
5234 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
5236         Refactor duplicated code; ensure default is in completions
5238         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
5239         New function.
5240         (reftex-extract-bib-entries): Use it.
5241         (reftex-extract-bib-entries-from-thebibliography): Use it.
5243 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5245         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
5246         in the example.
5248 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5250         * lisp/calc/calc.el: Silence byte-compiler warnings.
5251         (calc-scan-for-dels): Use ignore-errors.
5252         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
5253         (calc-read-key-sequence): Remove unused var `prompt2'.
5254         (calc-kill-stack-buffer): Remove unused var `buflist'.
5255         (calc): Remove unused var `oldbuf'.
5256         (calc-refresh): Use inhibit-read-only.
5257         (calc-can-abbrev-vectors): Declare.
5258         (calc-record): Remove unused var `mainbuf'.
5259         (math-sub-bignum): Remove unused var `sum'.
5260         (math-svo-c, math-svo-wid, math-svo-off): Declare.
5262 2015-10-08  Daiki Ueno  <ueno@gnu.org>
5264         Use g_clear_error instead of g_error_free
5266         * src/image.c: Define g_clear_error instead of g_error_free.
5267         (init_svg_functions): Resolve symbol g_clear_error instead of
5268         g_error_free.
5269         (svg_load_image): Use g_clear_error instead of g_error_free, to
5270         suppress GLib warnings when ERR is not set.  See bug#21641.
5272 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5274         * src/image.c (image_size_error): Simplify.
5276 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5278         Fix problems caught with --enable-gcc-warnings
5280         * src/image.c (lookup_rgb_color):
5281         * src/xfns.c (x_defined_color):
5282         * src/xterm.c (x_parse_color):
5283         Remove unused locals.
5285 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5287         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
5289 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5291         Format initial input uniformly
5293         * lisp/calc/calc.el (calc-digit-start-entry): New function.
5294         * lisp/calc/calc.el (calcDigit-start):
5295         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
5296         Use `calc-digit-start-entry' to format input.
5298 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5300         Disable non-working pointerColor setting for X tooltip frame
5302         It generates a bunch of server traffic, but there's some bug wherein
5303         the new mouse cursor settings don't seem to get used.  In most
5304         situations the cursor isn't likely to be seen anyway, so it's not
5305         urgent to fix.
5307         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
5309 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5311         Reduce some unnecessary X calls
5313         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
5314         call.  If border width is wanted, get it from the XGetGeometry call
5315         instead of calling XGetWindowAttributes on the same window.  Skip some
5316         X calls if we've already detected an error from the X server.
5317         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
5318         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
5320 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5322         Reduce color allocation/query traffic in the TrueColor case
5324         When working with an X visual with TrueColor class, pixel values can
5325         be generated from the RGB values according to mask value provided by
5326         the server on connection.  Some of the image-handling code was already
5327         doing this.
5329         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
5330         lookup_rgb_color.
5331         (x_mutable_colormap): New function.
5332         * src/image.c (lookup_rgb_color): Move pixel composition code to
5333         x_make_truecolor_pixel.
5334         (x_kill_gs_process): Call x_mutable_colormap.
5335         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
5336         x_mutable_colormap.
5337         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
5338         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
5339         pixel value into RGB values directly, and don't send a request to the
5340         server.
5341         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
5342         value with x_make_truecolor_pixel.
5343         (x_copy_color): For an immutable color map, just return the provided
5344         pixel value.
5346 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5348         Cache XParseColor results in the X display info structure
5350         With repeated lookups of foreground and background colors for multiple
5351         faces per frame, we issue a lot of redundant color name lookups to the
5352         X server, waiting every time for the response.  On a remote network
5353         with, say, 30ms round-trip time, this can add nearly a full second to
5354         creation of a new frame.
5356         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
5357         * src/image.c (get_spec_bg_or_alpha_as_argb):
5358         (xpm_init_color_cache, xpm_lookup_color):
5359         * src/xfns.c (x_defined_color):
5360         * src/xterm.c (x_parse_color): New function; caches color names not
5361         starting with "#" in the display-info structure.
5362         (x_delete_display): Delete the cache content.
5363         * src/xterm.h (struct color_name_cache_entry): New type.
5364         (x_parse_color): Declare.
5365         (struct x_display_info): Add a new field for the cache.
5367 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5369         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
5371 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
5373         Fix segfault in image_size_error
5375         * src/image.c (image_size_error): Pass a Lisp string to
5376         image_error, not a C string.  (Bug#21641)
5378 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
5380         Highlight CSS variable definitions
5382         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
5383         CSS variables.  (Bug#21638)
5385 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5387         * test/automated/tabulated-list-test.el: New file.
5388         Test bug#21639 and some basic functionality.
5390 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5392         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
5393         Check if column can be sorted before trying.  (Bug#21639)
5395 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
5397         Add test for `self-insert-command' (bug#21633)
5399         * test/automated/cmds-tests.el: New file.
5401 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
5403         * src/window.c (resize_frame_windows): Don't set root window's
5404         top position when resizing horizontally.
5406 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5408         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
5409         Document more possible values.
5411 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5413         * lisp/textmodes/tex-mode.el: Use lexical-binding.
5415 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5417         * lisp/indent.el (indent--default-inside-comment): New function.
5418         (indent-for-tab-command): Use it for `noindent' indentation.
5420 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
5422         Fix bug in GC_CHECK_MARKED_OBJECTS check
5424         * src/alloc.c (mark_object): Fix bug in checking code.
5425         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
5426         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
5427         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
5428         bucket.  The bug did not affect behavior either in the normal case
5429         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
5430         not have an internal error that a properly-written
5431         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
5433 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
5435         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5436         Add prettified version for \\Bbb{Q}.
5438 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5440         * test/automated/package-test.el (package-test-install-single):
5441         Add a test for bug#21625.
5443 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
5445         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
5446           not a package-desc object.  Also clarify documentation.  (Bug#21625)
5448 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
5450         Fix display of characters adjacent to ZWJ and ZWNJ
5452         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
5453         characters the same as directional formatting controls.
5454         (bidi_level_of_next_char): Include all Bn characters in rule L1,
5455         as mandated by the UBA.
5457 2015-10-06  Andreas Schwab  <schwab@suse.de>
5459         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
5460         number.  (Bug#21633)
5462 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
5464         * doc/lispref/objects.texi (Window Type): Add a cross reference.
5466         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
5468 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5470         * lisp/language/misc-lang.el (composition-function-table):
5471         Fix entries for Arabic and Syriac.
5473 2015-10-05  Damien Cassou  <damien@cassou.me>
5475         Add first unit tests for auth-source.el
5477         * test/automated/auth-source-tests.el: New file.
5479 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5481         Remove redundant redisplay code
5483         * src/xdisp.c (redisplay_internal, try_cursor_movement)
5484         (try_window_reusing_current_matrix, try_window_id): Remove
5485         redundant restrictions on redisplay optimizations based on the
5486         frame's 'redisplay' flag.  See
5487         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
5488         discussions.
5490 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5492         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
5494 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
5496         Update tutorials/TUTORIAL.cn
5498         * etc/tutorials/TUTORIAL.cn: Improve translation.
5500 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5502         * src/macfont.m (macfont_encode_char, syms_of_macfont):
5503         Remove unused vars.
5505 2015-10-04  Stefan Merten  <stefan@merten-home.de>
5507         Pull in version numbers from rst.el upstream release.
5509         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
5510         (rst-svn-timestamp, rst-official-version)
5511         (rst-official-cvs-rev, rst-package-emacs-version-alist):
5512         Update version numbers.
5514 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5516         * test/automated/coding-tests.el: New file.
5518 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
5520         Improve XEmacs compatibility of Tramp
5522         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
5523         Declare if it doesn't exist.
5524         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
5525         (redisplay): Make it an alias if it doesn't exist.
5527         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
5528         `file-remote-p' (due to XEmacs compatibility).
5530         * lisp/net/trampver.el (locate-dominating-file)
5531         (tramp-compat-replace-regexp-in-string): Autoload.
5532         (tramp-repository-get-version): Do not dupe byte-compiler.
5534 2015-09-02  K. Handa  <handa@gnu.org>
5536         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
5538         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
5539         Adjusted for the change of type of elements in the array
5540         MFLTGlyphString.glyphs.
5542 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5543             Michael Heerdegen  <michael_heerdegen@web.de>
5545         shr: fix too long lines in rendered buffers (Bug#21012)
5547         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
5548         Correct calculation of available width.
5549         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
5550         is nil.
5552 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5554         Restore blank line before next section, erroneously erased
5555         in my previous commit
5557         * etc/compilation.txt (symbol ant): Add an additional trailing blank
5558         line to this section, so that there are two of them immediately before
5559         the next section.
5561 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5563         Support MSW filename style for ant compilation error regexp
5565         * etc/compilation.txt (symbol ant):
5566         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5567         Support MSW filename style.
5569 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
5571         * nt/INSTALL: Minor spelling and quote fixes.
5573         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
5575 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
5577         Maintain ordering of JSON object keys by default
5579         * lisp/json.el (json-object-type): Mention order handling in doc-string.
5580         (json--plist-reverse): New utility function.
5581         (json-read-object): Maintain ordering for alists and plists.
5582         (json-pretty-print): Ensure that ordering is maintained.
5584         * test/automated/json-tests.el (test-json-plist-reverse): New test for
5585         `json--plist-reverse'.
5586         (json-read-simple-alist): Update test to accommodate for changes in
5587         `json-read-object'.
5589         * etc/NEWS: Document the new behavior of the pretty printing functions.
5591 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5593         * src/coding.c (complement_process_encoding_system): Revert last change.
5595 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
5597         * admin/MAINTAINERS: Add entry for Ulf Jasper.
5599 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
5601         Doc fix for `defmacro'
5603         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
5605 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5607         More validatation of coding systems
5609         * src/fileio.c (Finsert_file_contents): Remove redundant
5610         coding-system check.
5611         (choose_write_coding_system): Likewise.
5612         * src/coding.c (complement_process_encoding_system): Check argument
5613         for valid coding system.
5615 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5617         Avoid crashes in coding_inherit_eol_type
5619         * src/coding.c (coding_inherit_eol_type): Check the validity of
5620         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
5621         (Bug#21602)
5623 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5625         More validatation of coding system in 'write-region'
5627         * src/coding.c (choose_write_coding_system): More validation of
5628         coding-system from various sources.  Suggested by Andreas Schwab
5629         <schwab@linux-m68k.org>.  (Bug#21602)
5631 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5633         Avoid crashes due to invalid coding-system
5635         * src/fileio.c (choose_write_coding_system)
5636         (Finsert_file_contents): Check validity of coding-system-for-write
5637         and coding-system-for-read bound by the caller.  (Bug#21602)
5639 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5641         Adapt to new prettify-symbols-unprettify-at-point default
5643         * etc/NEWS: Mention that unprettication of symbol at point is off
5644         by default.
5646 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5648         Revert my two recent process.c changes
5650         Revert "Improve last commit to process.c" and "Remove callback-handled
5651         channels from Available set" because they did not fix bug#21313.
5653         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
5654         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
5656 2015-10-02  Markus Triska  <triska@metalevel.at>
5658         * lisp/progmodes/prolog.el: Update and extend operator table.
5659         (prolog-smie-grammar): Add multifile, public etc.
5661 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5663         Allow autogen even when Git is not installed
5665         * autogen.sh: Test ‘git status’ before trying to use Git.
5667 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5669         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
5670         Adjust lto/lfrom when we have uncommitted changes.
5672 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5674         Fix problems found by clang 3.5.0
5676         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
5677         * src/font.c (font_parse_family_registry):
5678         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
5680 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
5682         * nt/INSTALL: Update instructions for running autogen.sh.
5684         * nt/INSTALL: Point to ezwinports for libXpm binaries.
5686 2015-10-02  Daniel Colascione  <dancol@dancol.org>
5688         Fix winner in cl-lib not loaded case
5690         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
5691         without requiring CL
5693 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5695         Fix a few problems with directed quotes
5697         This is in response to a problem report by Kaushal Modi in:
5698         http://bugs.gnu.org/21588#25
5699         * lisp/cedet/mode-local.el (describe-mode-local-overload):
5700         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
5701         * lisp/info-xref.el (info-xref-check-all-custom):
5702         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
5703         Prefer directed to undirected single quotes in diagnostics.
5705 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5707         Revert "Attempt to fix slow redisplay caused by last changes"
5709         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
5710         (try_cursor_movement): Don't relax requirements for redisplay
5711         optimizations for the selected frame.  (Bug#21597)
5713         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
5715 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5717         Fix slow redisplay when daemon frame exists
5719         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
5720         when looking for frames that need to be redisplayed.  (Bug#21597)
5722 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5724         Attempt to fix slow redisplay caused by last changes
5726         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
5727         (try_cursor_movement): Relax requirements for redisplay
5728         optimizations for the selected frame.  (Bug#21597)
5730 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
5732         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
5733         Improve doc string.
5735 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
5737         * lisp/minibuffer.el (minibuffer-completion-help):
5738         Set default base-size, in case completion table does not set it.
5740 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5742         Fix GUD display of GDB output with non-ASCII text
5744         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
5745         (gdb-mi-decode): New function.
5746         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
5747         decode octal escapes in GDB output.  (Bug#21572)
5749 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5751         * nt/INSTALL: Document where to find XPM support files.
5753 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
5755         Un- and re-prettification are not exclusive
5757         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
5758         Re-apply prettification to previous symbol also when unprettifying
5759         next one.
5761 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
5763         Don't unprettify symbol at point by default
5765         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5766         Default to disabled (nil).
5768 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
5770         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5771         Support unprettifying when point is after a symbol.
5773         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
5775 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5777         Avoid assertion violations in push_prefix_prop
5779         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
5780         a line that has a line-prefix defined starts with an image.  (Bug#21428)
5782 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5784         Disable some display optimizations when frames need redisplay
5786         These optimizations were previously disabled by the
5787         windows_or_buffers_changed flag, which now is not set
5788         when only some frames need to be redrawn.
5789         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
5790         'redisplay' flag is set.
5791         (try_window_reusing_current_matrix, try_window_id)
5792         (try_cursor_movement): Disable these optimizations when the
5793         frame's 'redisplay' flag is set.
5795 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
5797         Don't modify buffer by unprettification
5799         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
5800         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
5801         modify buffer when setting/removing custom prettify-symbols-start/end
5802         text properties.  Add them to font-lock-extra-managed-props, too.
5804 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
5806         Try to avoid redisplaying all frames when creating a new one
5808         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
5809         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
5810         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
5811         * src/frame.c (x_set_screen_gamma): Set the specific frame's
5812         `redisplay' bit rather than windows_or_buffers_changed.
5814         * src/window.c (apply_window_adjustment): Remove redundant setting of
5815         windows_or_buffers_changed.
5817         * src/xdisp.c (redisplay_internal): Set the specific frame's
5818         `redisplay' bit rather than update_mode_lines in response to
5819         cursor_type_changed.
5820         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
5821         (AINC): Adjust accordingly.
5823 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
5825         Implement unprettification of symbol at point
5827         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
5828         symbol at point.
5829         (prettify-symbols--current-symbol-bounds): New variable.
5830         (prettify-symbols--post-command-hook): New function.
5831         (prettify-symbols-unprettify-at-point): New defcustom.
5832         (prettify-symbols-mode): Use it.
5833         (prettify-symbols--compose-symbol): Use them.
5835 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5837         * src/macfont.m (mac_font_descriptor_supports_languages):
5838         Regard "zh" as synonym of "zh-Hans".
5840 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5842         Work around crash when displaying etc/HELLO on OS X 10.11
5844         * src/macfont.m (mac_font_get_weight)
5845         (mac_font_descriptor_get_adjusted_weight): New functions.
5846         (macfont_store_descriptor_attributes): Adjust weight.
5848 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5850         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
5852 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
5854         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
5855         of the columns.
5857 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
5859         Use unar and lsar to handle RAR archives in arc-mode
5861         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
5862         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
5864 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5866         Clarify :create in auth-source's docs
5868         * lisp/gnus/auth-source.el (auth-source-search):
5869         Clarify :create's meaning.
5871 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
5873         Avoid empty -path arguments in rgrep
5875         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
5876         the list produced according to grep-find-ignored-directories,
5877         before passing it to Find/Grep invocation.  (Bug#21548)
5879 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5881         Clarify documentation of pos-visible-in-window-p
5883         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
5884         t for POS.  See
5885         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
5886         for the original report.
5888         * doc/lispref/windows.texi (Window Start and End): Clarify the
5889         meaning of t for the POSITION argument of pos-visible-in-window-p.
5891 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5893         * lisp/progmodes/prolog.el: Fix various indentation cases.
5894         (prolog-operator-chars): New const (add \\).
5895         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
5896         (prolog-smie-rules): Add rules according to bug#21526.
5898 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5900         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
5901         (sh-indent-after-continuation): Add new value `always' (bug#17620)
5902         (sh-smie-sh-rules): Remove old handling of continued lines.
5903         (sh-smie--indent-continuation): New function.
5904         (sh-set-shell): Use it.
5906 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5908         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
5909         Remove redundant :group keyword args.
5910         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
5911         Remove variables.
5912         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
5913         turn them into compile-time variables.
5914         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
5915         Add rules for break, continue, return, global, and persistent.
5916         Refine the rule for "until".
5917         (octave-smie--funcall-p, octave-smie--end-index-p)
5918         (octave-smie--in-parens-p): New functions.
5919         (octave-smie-backward-token, octave-smie-forward-token): Use them to
5920         distinguish the "enumeration" function and the "end" index from
5921         their corresponding keywords.
5922         (octave--block-offset-keywords): New constant.
5923         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
5924         parsing.
5925         (octave-reserved-words): Redefine using octave-smie-grammar.
5926         (octave-font-lock-keywords): Use octave-smie--funcall-p and
5927         octave-smie--end-index-p.
5929 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5931         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
5933 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5935         * nt/INSTALL: Remove references to GTK site.
5936         That site no longer offers Windows downloads.
5938 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5940         * nt/INSTALL: Add instructions for installing Git.
5942 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
5944         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
5945         use colors.  Suggested by Eli Zaretskii.
5947 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
5949         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
5950         not supporting 256 above colors (bug#21557).
5952 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
5954         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
5956         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
5958 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5960         Add documentation for seq.el
5962         * doc/lispref/sequences.texi: Add documentation regarding extending
5963         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
5964         seq-do and seq-map.
5966 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5968         Better documentation for seq-some
5970         * doc/lispref/sequences.texi:
5971         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
5972         guarantee that the returned value is the first non-nil value that
5973         resulted from applying the predicate.
5975 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5977         * lisp/arc-mode.el: Sharp-quote function arguments.
5979 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5981         Avoid redisplay error in ediff-regions-wordwise
5983         * lisp/vc/ediff-util.el
5984         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
5985         set before activating it.  (Bug#21567)
5987 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5989         Another attempt to fix crashes due to prematurely freed faces
5991         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
5992         faces for as long as we might have desired matrices that reference
5993         those faces.  (Bug#21428)
5995 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
5997         Add auctex development list email address
5999 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
6001         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
6003 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
6005         Improve wrapfig package support and caption parsing
6007         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
6008         Correct description string and add wraptable environment.
6009         (reftex-default-context-regexps): Improve caption regexp.
6011 2015-09-28  Anders Lindgren  <andlind@gmail.com>
6013         Respect value of frame_resize_pixelwise when handling fullscreen state
6015         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
6016         setting size increments.
6018 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
6020         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
6022 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
6024         Add prettify-symbols-alist for js-mode
6026         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
6027         (js-mode): Use it.
6029 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
6031         * nt/subdirs.el: File deleted (no longer used).
6033 2015-09-26  Alan Mackenzie  <acm@muc.de>
6035         Fix follow-scroll-up/down, making them replacements for scroll-up/down
6037         1. Allow point to move between follow windows in scroll operations.
6038         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
6039         when EOB was isolated in the last follow window.
6041         * lisp/follow.el (follow-fixed-window): New variable.
6042         (follow-get-scrolled-point): New function.
6043         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
6044         Reformulate the code.  Put `scroll-command' properties on the functions.
6045         Correct minor errors in ...-down's doc string and code.
6046         (follow-calc-win-end): Amend incomplete doc string.  Use
6047         `pos-visible-in-window-p' to check whether EOB is in the window.
6048         (follow-estimate-first-window-start): Correct an off-by-1 error.
6049         (follow-adjust-window): Add handling for explicit scrolling operations.
6051 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
6053         * admin/MAINTAINERS: Add self, plus list some more files
6054         sans maintaners.
6056 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
6058         New DWIM commands for changing letter-case
6060         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
6061         New functions.  (Bug#21501)
6063 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
6065         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
6067 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
6069         Make face realization be more frame-specific
6071         * src/frame.h (struct f): New flag face_change.
6072         * src/xfaces.c (Finternal_make_lisp_face)
6073         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
6074         (update_face_from_frame_parameter): Set the face_change flag only
6075         for the frame whose faces are affected.
6076         * src/xdisp.c (init_iterator): If a frame's face_change flag is
6077         set, free faces only on that frame.
6078         (redisplay_internal): Disable "display optimization 1" if the
6079         frame's face_change flag is set.
6080         (redisplay_window): Don't allow skipping a window's redisplay if
6081         its frame's face_change flag is set.
6082         * src/frame.c (x_set_screen_gamma): Instead of calling
6083         Fclear_face_cache, call clear_face_cache and set
6084         windows_or_buffers_changed to a non-zero value.  This avoids
6085         setting the global face_change flag that triggers face realization
6086         on all frames and thorough redisplay of all of them.
6088         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
6089         clear face cache if the selected frame is a GUI frame.
6091 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
6093         Remove font-latex specific check
6095         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6096         Use syntax-ppss data to identify verbatim contents.
6098 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
6100         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6101         Fix some false negatives.
6103 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6105         Reorder Windows version in Emacs manifests
6107         * nt/emacs-x64.manifest:
6108         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
6109         highest.
6111 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6113         Update Emacs manifest files for Windows 10
6115         * nt/emacs-x86.manifest:
6116         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
6118 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6120         Avoid non-ASCII decoding errors in C src files
6122         * src/nsterm.m:
6123         * src/lisp.h:
6124         * src/editfns.c:
6125         * src/doprnt.c: Add 'coding' cookies -- these files include
6126         Unicode characters and should be decoded as UTF-8.
6128 2015-09-25  Alan Mackenzie  <acm@muc.de>
6130         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
6132         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
6133         amend to match current modes and functions.
6134         (edebug-set-initial-mode): Uncomment and change from setting a defun's
6135         `edebug-initial-mode''s property to setting the variable
6136         `edebug-initial-mode'.
6137         (top level): Create new binding C-x C-a C-m for
6138         `edebug-set-initial-mode'.
6140         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
6141         `edebug-set-initial-mode' and its new key binding.
6142         (Edebug Options): Mention the new command in the pertinent place.
6144         * etc/NEWS: Write entry for this change.
6146 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6148         Avoid non-ASCII decoding errors in Texinfo files
6150         * doc/misc/tramp.texi:
6151         * doc/lispref/strings.texi:
6152         * doc/lispref/positions.texi:
6153         * doc/lispref/help.texi:
6154         * doc/lispref/functions.texi:
6155         * doc/lispintro/emacs-lisp-intro.texi:
6156         * doc/emacs/text.texi:
6157         * doc/emacs/modes.texi:
6158         * doc/emacs/mini.texi:
6159         * doc/emacs/display.texi:
6160         * doc/emacs/custom.texi:
6161         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
6162         Unicode characters and should be decoded as UTF-8.
6163         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
6164         apostrophe unnecessarily.
6166 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
6168         Merge from gnulib
6170         This incorporates:
6171         2015-09-25 c-ctype: rewrite to use inline functions
6172         2015-09-24 maint: add coding cookies to non-ASCII sources
6173         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
6174         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6175         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
6176         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
6177         * lib/set-permissions.c:
6178         Copy from gnulib.
6180 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6182         Update publicsuffix.txt from upstream
6184         * etc/publicsuffix.txt: Update from
6185         https://publicsuffix.org/list/effective_tld_names.dat
6186         dated 2015-09-24 17:29:21 UTC.
6188 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
6190         Prevent timers from messing up TTY menus
6192         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
6193         the TTY menu is open.  (Bug#21530)
6195 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6197         No need to mention K&R C in c-mode intro
6199 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6201         Fix recent bootstrap problems
6203         * src/syntax.c (parse_sexp_propertize): Fix last fix.
6204         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
6205         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
6207 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
6209         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
6211 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6213         Properly quote nested xml comments (Bug#6267) (Bug#20001)
6215         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
6216         (nxml-mode): Set comment-quote-nested-function.
6218 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6220         Allow major-modes full control over quoting nested comments
6222         * lisp/newcomment.el (comment-quote-nested-function): New variable.
6223         (comment-quote-nested-default): New function.
6224         (comment-quote-nested): Use `comment-quote-nested-function'.
6226 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
6228         Prefer CALLN in a few more places
6230         * src/macfont.m (macfont_set_family_cache):
6231         * src/nsterm.m (append2):
6232         * src/xterm.c (x_cr_export_frames):
6233         Prefer CALLN to allocating the arg arrays by hand.
6235 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6237         Adapt file-notify-test02-events test case
6239         * test/automated/file-notify-tests.el (file-notify-test02-events):
6240         Create a new watch for every test.
6242 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6244         Continue gfilenotify.c implementation of missing parts
6246         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
6247         `gfile-add-watch' call.
6248         (file-notify-rm-watch): Modify `file-notify-descriptors' only
6249         after calling the low level functions.
6251         * src/gfilenotify.c (dir_monitor_callback): Check, whether
6252         event_type is expected.
6253         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
6254         (Fgfile_rm_watch): Fix typo.
6255         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
6257 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6259         * src/syntax.c (parse_sexp_propertize): Handle spurious
6260         e_property_truncated flag.
6261         (update_syntax_table_forward): Remove invalid assertion.
6263 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
6265         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
6266         space display spec on text-mode terminals, by calling
6267         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
6268         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
6269         test for a GUI frame.
6271 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
6273         Move let-when-compile to lisp-mode.el
6275         This fixes the bootstrapping problem of `let-when-compile' using
6276         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
6278 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6280         * lisp/url/url-http.el (url-http-parse-headers): Do not
6281         automatically include Authorization header in redirect.
6282         (Bug#21350)
6284 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6286         Clarify documentation of ':relative-width'
6288         * doc/lispref/display.texi (Specified Space): Document that
6289         ':relative-width' is only supported on GUI frames.
6291 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6293         Fix 'current-column' in presence of :relative-width
6295         * src/indent.c (check_display_width): Support ':relative-width'
6296         in a display spec that specifies a stretch glyph.  (Bug#21533)
6298 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
6300         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
6302         ... to conform better to CONTRIBUTE guidelines.
6304 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
6306         * lisp/progmodes/prolog.el: Fix indentation of empty line
6308         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
6309         `empty-line-token' element.
6310         (smie-indent-empty-line): New function.
6311         (smie-indent-functions): Add it.
6313         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
6314         behavior and use the new `empty-line-token' element (bug#21526).
6315         (prolog-mode-variables): Fix comment-start-skip setting to match
6316         comment-start.
6318         * test/indent/prolog.prolog: Add nested indentation tests.
6320         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
6321         comment-start-skip not to misuse submatch 1.
6323 2015-09-22  Alan Mackenzie  <acm@muc.de>
6325         Make description of `edebug-initial-mode' user friendly
6327         Fixes bug#21365.
6329         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
6330         description of `edebug-initial-mode' from that of its implementation
6331         to that of its visual effect and use.  Move the paragraph higher up.
6333 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6335         lisp/progmodes/gud.el (gud-format-command): Fix last commit
6337         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
6338         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
6340 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6342         Improve last commit to process.c
6344 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
6346         Implement gfile-valid-p
6348         * lisp/filenotify.el (file-notify-callback): Fix typo.
6349         (gfile-valid-p): Remove defalias.
6351         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
6352         the file or directory to be watched is deleted.
6353         (Fgfile_add_watch): Make watch_object a triple.
6354         (Fgfile_rm_watch): Check, whether watch is cancelled already.
6355         (Fgfile_valid_p): New defun.
6356         (syms_of_gfilenotify): Declare Sgfile_valid_p.
6358 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6360         Remove callback-handled channels from Available set
6362         * src/process.c (wait_reading_process_output): Remove channel from
6363         Available set if it is handled by a callback, e.g., dbus or
6364         inotify (bug#21313).
6366 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
6368         Use lunate epsilon for TeX \epsilon
6370         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6371         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
6372         \epsilon to use GREEK LUNATE EPSILON SYMBOL
6374 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6376         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
6378         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
6379         rather than outermost paren (bug#21526).
6381 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6383         Improve git diff hunk headers for .el, .texi
6385         Problem reported by Alan Mackenzie in:
6386         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
6387         * .gitattributes (*.el, *.texi): New patterns.
6388         * autogen.sh: Configure diff.elisp.xfuncname and
6389         diff.texinfo.xfuncname if using Git.
6391 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6393         Don't rely on defaults in decoding UTF-8 encoded Lisp files
6395         * lisp/replace.el:
6396         * lisp/textmodes/rst.el:
6397         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
6399 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6401         Clarify or replace a few \u escapes
6403         * doc/lispref/nonascii.texi (Character Properties)
6404         More-detailed commentary for \u escapes.
6405         * lisp/progmodes/python.el (python--prettify-symbols-alist):
6406         * lisp/replace.el (query-replace-from-to-separator):
6407         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
6408         (rst-mode-syntax-table):
6409         * lisp/whitespace.el (whitespace-display-mappings):
6410         Prefer actual character to \u escape when this makes the code
6411         easier to follow in the usual case where Unicode chars can be
6412         displayed.
6414 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6416         Pacify GCC -Wmaybe-uninitialized in xdisp.c
6418         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
6419         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
6420         charpos.  The loop should always execute at least once anyway.
6422 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
6424         Signal error on invalid regexp
6426         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
6427         Signal an error when the user tries searching with a regexp
6428         matching the empty string.
6430 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6432         Another fix of file-notify-tests for w32notify
6434         * test/automated/file-notify-tests.el (file-notify-test02-events):
6435         Further adaptation for w32notify: reduce the number of expected
6436         'changed' events.  (Bug#21435)
6438 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
6440         Adapt tests and manual for w32notify
6442         * doc/lispref/os.texi (File Notifications): w32notify does not
6443         send `attribute-changed' events.
6445         * test/automated/file-notify-tests.el (file-notify--test-with-events):
6446         Simplify parameters.  Adapt all callees.
6447         (file-notify-test02-events): w32notify does not send
6448         `attribute-changed' events.
6449         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6450         Do not skip in case of w32notify.  Simply ignore this part of the test.
6452 2015-09-21  Dima Kogan  <dima@secretsauce.net>
6454         Fix setting breakpoints when remote-debugging
6456         * lisp/progmodes/gud.el (gud-format-command): Send localized file
6457         names to the debugger running on the remote.  (Bug#13304)
6459 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
6461         Better docstring and parameter name for seq-find
6463         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
6464         the parameter `sentinel' to `default'.
6466         * doc/lispref/sequences.texi (Sequence Functions): Update the
6467           documentation for `seq-find' accordingly.
6469 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6471         Avoid infinite recursion while displaying box face
6473         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
6474         the previous string/buffer character position under bidi
6475         iteration.  (Bug#21428)
6477 2015-09-21  Anders Lindgren  <andlind@gmail.com>
6479         Keep upper edge unchanged when changing size of NS frame
6481         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
6482         (Bug#21415).
6484 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6486         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
6487         (prolog-smie-rules): Accommodate standard if/then/else special
6488         indentation.
6489         (prolog-mode): Add . to electric-indent-chars.
6490         (prolog-electric--if-then-else): Re-indent the line before adding space
6491         after the new char (bug#21526).
6493 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
6495         Add prettify symbols to python-mode
6497         * lisp/progmodes/python.el (python-prettify-symbols-alist):
6498         New variable.
6499         (python-mode): Use it
6501 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6503         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
6505 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
6507         (compilation-error-regexp-alist-alist): Tone down guile-file
6509         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
6510         Make guile-file a bit less enthusiastic (bug#21496).
6512 2015-09-20  Drew Csillag  <drew@thecsillags.com>
6514         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
6515         Fix m4_* highlighting.
6517         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
6518         of commands when they have a "m4_" prefix.
6520 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6522         '.' -> `.' in doc string
6524         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
6525         individual chars with grave quotes instead of straight quotes, as
6526         this works better when they are translated to curved quotes.
6528 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
6530         Improve file notifications, especially for Tramp
6532         * doc/lispref/files.texi (Magic File Names):
6533         Mention `file-notify-valid-p'.
6535         * doc/lispref/os.texi (File Notifications):
6536         Describe `file-notify-valid-p'.
6538         * etc/NEWS: Add `file-notify-valid-p'.
6540         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
6541         Improve implementation.
6542         (tramp-gvfs-monitor-file-process-filter): Rename from
6543         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
6544         process if appropriate.
6546         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
6547         Improve implementation.
6548         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
6549         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
6550         if appropriate.
6551         (tramp-sh-inotifywait-process-filter): Rename from
6552         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
6553         appropriate.
6555         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
6556         Use `delete-process'.
6557         (tramp-handle-file-notify-valid-p): Check also, that file or
6558         directory to be watched still exists.
6560         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6561         New defun.  Use it at all places a timeout is needed.
6562         (file-notify--test-cleanup): Delete directories recursively.
6563         Cleanup also Tramp connections.
6564         (file-notify-test02-events): Add tests for `attribute-change'.
6565         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6566         Add tests for `file-notify-rm-watch'.
6568 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6570         Use %s to format strings instead of splicing them
6572         If FOO might contain quotes that are part of a file or variable
6573         name, the quotes should not be translated when showing FOO’s name
6574         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
6575         is not quite right, as it would translate FOO’s quotes.
6576         Change it to (message "%s: bar" FOO) instead.
6577         * lisp/allout.el (allout-process-exposed):
6578         * lisp/calc/calc-ext.el (calc-do-prefix-help):
6579         * lisp/calc/calc-store.el (calc-store-into):
6580         * lisp/calendar/todo-mode.el (todo-category-completions):
6581         * lisp/cedet/semantic/complete.el (semantic-completion-message):
6582         * lisp/org/ob-latex.el (convert-pdf):
6583         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
6584         * lisp/org/ox-latex.el (org-latex-compile):
6585         * lisp/org/ox-man.el (org-man-compile):
6586         * lisp/org/ox-odt.el (org-odt--export-wrap):
6587         * lisp/org/ox-texinfo.el (org-texinfo-compile):
6588         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
6589         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
6590         (verilog-signals-combine-bus, verilog-read-defines)
6591         (verilog-getopt-file, verilog-expand-dirnames)
6592         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
6593         * lisp/term/ns-win.el (ns-spi-service-call):
6594         Use %s to avoid translating quotes of file names etc. in diagnostics.
6596 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6598         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
6599         (js-mode): Don't set syntax-begin-function.
6601 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6603         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
6604         syntax-begin-function is a symbol.
6606 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
6608         Improve documentation of 'run-at-time'
6609         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
6610         In particular, don't refer to 'diary-entry-time', because it is
6611         unavailable until diary-lib is loaded.  Also, refer to
6612         'timer-duration-words', not 'timer-duration', as the latter's doc
6613         string says nothing about the accepted strings.
6615 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
6617         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
6619 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
6621         Repair pdbtrack remote file tracking
6622         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
6623         Rectify pdbtrack so it follows transitions from one remote source
6624         file to the next.
6626 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
6628         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
6630 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6632         Adapt vc-src to the old-new vc-checkin API
6633         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
6634         additional optional parameter.
6636 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
6638         Add overflow module to CSS property list
6639         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
6640         from CSS Overflow Module Level 3.
6642 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6644         Fix documentation of "C-u C-x v v"
6645         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
6646         documentation of "C-u C-x v v" match what the code does.
6648         Resurrect the ability to specify a revision in vc-next-action
6649         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
6650         * lisp/vc/vc-dav.el (vc-dav-checkin):
6651         * lisp/vc/vc-git.el (vc-git-checkin):
6652         * lisp/vc/vc-hg.el (vc-hg-checkin):
6653         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
6654         an additional optional argument, the revision to checkin.
6655         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
6656         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
6657         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
6658         a revision to checkin.
6659         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
6660         revision when checking in files.
6661         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
6662         for the details.
6664 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
6666         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
6667         (verilog-decls-princ, verilog-modport-princ)
6668         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
6670 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
6672         Fix the routine for help on Calc's prefixes
6673         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
6674         (calc-do-prefix-help): Use `read-char' to determine the next Calc
6675         command.
6677 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
6679         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
6680         (font-lock-fontify-block): Don't let-bind it.
6681         (font-lock-compile-keywords): Don't use it.
6682         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
6683         start one slot earlier, instead.
6684         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
6685         Don't declare.
6686         (syntax-ppss): Don't use it either.
6687         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
6688         from docstring.
6689         * doc/emacs/display.texi (Font Lock): Don't mention
6690         font-lock-beginning-of-syntax-function.
6691         * doc/lispref/modes.texi (Font Lock Basics): Update description of
6692         font-lock-defaults.
6693         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
6694         * lisp/loadhist.el (unload-feature-special-hooks):
6695         Remove font-lock-beginning-of-syntax-function.
6696         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
6697         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
6698         font-lock-beginning-of-syntax-function.
6700 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
6702         Backslash cleanup in Elisp source files
6703         This patch should not change behavior.  It typically omits backslashes
6704         where they are redundant (e.g., in the string literal "^\$").
6705         In a few places, insert backslashes where they make regular
6706         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
6707         "^\\*", which has the same effect as a regular expression.
6708         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
6709         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
6710         RCS IDs, as that makes it clearer that the backslash is intended.
6712         Some more minor backslash fixes
6713         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
6714         * test/automated/info-xref.el (info-xref-test-write-file):
6715         Double backslashes in strings.
6717         Fix several backslash typos in Elisp strings
6718         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
6719         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
6720         (todo-reset-done-string, todo-reset-comment-string)
6721         (todo-reset-highlight-item):
6722         * lisp/erc/erc-networks.el (erc-networks-alist):
6723         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
6724         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
6725         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
6726         (nntp-telnet-shell-prompt):
6727         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
6728         * lisp/image-dired.el (image-dired-rotate-original):
6729         (image-dired-get-exif-file-name):
6730         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
6731         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
6732         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
6733         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
6734         * lisp/net/shr-color.el (shr-color->hexadecimal):
6735         * lisp/org/org-bibtex.el (org-bibtex-fields):
6736         * lisp/org/org-docview.el (org-docview-export):
6737         * lisp/org/org-entities.el (org-entities):
6738         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
6739         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
6740         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
6741         (ebnf-style-database):
6742         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
6743         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
6744         * lisp/progmodes/sql.el (sql-product-alist):
6745         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
6746         (verilog-error-font-lock-keywords)
6747         (verilog-assignment-operator-re):
6748         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
6749         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
6750         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
6751         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
6752         For example, to get the regular expression ‘\.’ use the string
6753         literal "\\.", not "\." (which is equivalent to ".").
6754         * lisp/emulation/viper-util.el (viper-glob-unix-files):
6755         Remove stray ‘\j’ from string.
6756         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
6757         (nntp-telnet-shell-prompt):
6758         Treat > like $ when matching a shell prompt.
6759         * lisp/progmodes/make-mode.el (makefile-browse):
6760         Properly quote a diagnostic.
6762         Fix minor quoting problems in diagnostics
6763         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
6764         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
6765         Follow text-quoting-style in diagnostic, and quote a file name.
6767 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
6769         * doc/lispref/frames.texi (Cursor Parameters):
6770         Document 'x-stretch-cursor'.
6772 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
6774         Omit unnecessary \ before paren in C docstrings
6775         Although \( is needed in docstrings in Elisp code, it is not needed in
6776         docstrings in C code, since C function definitiions do not start with
6777         a parenthesis.  The backslashes made the docstrings a bit harder to
6778         read and to format in columns.  Also, some C docstrings had ( in
6779         column 1 and this did not appear to be causing any problems.  So,
6780         simplify C docstrings by replacing \( with ( and \) with ).
6782         A few more minor quoting fixes in a script and a text file
6784         Minor quoting fixes in scripts and doc
6785         Prefer straight quotes in random script files, as they are not
6786         converted.  Prefer grave quotes in a couple of places in the manual
6787         that were missed earlier, as these quotes are converted.
6789         Minor backslash fixes in manuals and scripts
6790         * Makefile.in (install-arch-indep):
6791         * admin/charsets/compact.awk:
6792         * admin/charsets/gb180302.awk (gb_to_index):
6793         * admin/charsets/gb180304.awk (gb_to_index):
6794         Avoid undefined behavior in Awk regular expression backslashes.
6795         * doc/misc/efaq.texi (Matching parentheses):
6796         Omit unnecessary backslashes.
6797         * doc/misc/gnus-faq.texi (FAQ 5-8):
6798         Avoid undefined behavior in suggested sed backslash usage.
6800         Add -Wswitch to --enable-gcc-warnings
6801         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
6802         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
6803         * lib-src/etags.c (main, consider_token, C_entries):
6804         * src/coding.c (encode_invocation_designation):
6805         * src/data.c (Ftype_of):
6806         * src/eval.c (Fdefvaralias, default_toplevel_binding)
6807         (Fbacktrace__locals, mark_specpdl):
6808         * src/lisp.h (record_xmalloc):
6809         * src/syntax.c (scan_lists, scan_sexps_forward):
6810         * src/window.c (window_relative_x_coord):
6811         * src/xdisp.c (push_it, pop_it):
6812         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
6813         Error out or do nothing (as appropriate) if a switch statement
6814         with an enum value does not cover all of the enum.
6815         * src/dispextern.h (struct iterator_stack_entry.u.comp):
6816         Remove unused member discovered by using -Wswitch.
6817         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
6818         * src/vm-limit.c (check_memory_limits):
6819         Simplify warning-diagnostic computation by using a table.
6821         etags ‘fatal’ function is now printf-like
6822         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
6823         Also, now static; not clear why it needed to be extern.
6824         (verror): New function, with most of the old contents of ‘error’.
6825         (fatal, error): Use it.
6827 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
6829         More adaptations in file-notify-tests.el
6830         * test/automated/file-notify-tests.el
6831         (file-notify-test05-dir-validity): Skip for w32notify in
6832         batch-mode.  (Bug#21432)
6834 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
6836         Adapt test in file-notify-tests.el
6837         * test/automated/file-notify-tests.el
6838         (file-notify-test04-file-validity): Skip for w32notify in
6839         batch-mode.  Add test lost last commit.
6841 2015-09-16  Dima Kogan  <dima@secretsauce.net>
6843         winner no longer holds on to dead frames
6844         * lisp/winner.el (winner-change-fun): Cull dead frames.
6845         This prevents a potentially massive memory leak.  See:
6846         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
6848 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
6850         Use common report_file_notify_error function
6851         * src/fileio.c (report_file_notify_error): New function.
6852         * src/inotify.c (report_inotify_error): Remove function.
6853         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
6854         (Finotify_rm_watch): Use report_file_notify_error.
6855         * src/lisp.h (report_file_notify_error): Declare external function.
6856         * src/w32notify.c (report_w32notify_error): Remove function.
6857         (Fw32notify_add_watch, Fw32notify_rm_watch):
6858         Use report_file_notify_error.
6860 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
6862         Fix documentation.
6863         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
6864         the documentation of the root mean square.
6866 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
6868         Remove tool_bar_redisplayed_once and associated code.
6869         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
6870         * src/frame.c (make_frame, x_set_font): Remove initialization of
6871         f->tool_bar_redisplayed_once.
6872         * src/w32fns.c (x_change_tool_bar_height):
6873         * src/xfns.c (x_change_tool_bar_height): Don't check for
6874         f->tool_bar_redisplayed_once.
6875         * src/xdisp.c (redisplay_internal): Remove handling of
6876         f->tool_bar_redisplayed_once.
6878 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
6880         Restore some of the quoting in the manuals
6881         * doc/lispref/windows.texi (Coordinates and Windows)
6882         (Coordinates and Windows):
6883         * doc/lispref/variables.texi (Lexical Binding)
6884         (File Local Variables):
6885         * doc/lispref/text.texi (Format Properties):
6886         * doc/lispref/symbols.texi (Symbol Components):
6887         * doc/lispref/strings.texi (Creating Strings):
6888         * doc/lispref/sequences.texi (Sequence Functions):
6889         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
6890         (Search and Replace):
6891         * doc/lispref/processes.texi (Bindat Spec):
6892         * doc/lispref/os.texi (Idle Timers):
6893         * doc/lispref/objects.texi (Basic Char Syntax):
6894         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
6895         * doc/lispref/nonascii.texi (Character Properties):
6896         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
6897         (Mode Line Variables):
6898         * doc/lispref/minibuf.texi (Text from Minibuffer):
6899         * doc/lispref/loading.texi (Autoload):
6900         * doc/lispref/keymaps.texi (Controlling Active Maps):
6901         * doc/lispref/frames.texi (Frame Layout, Size and Position)
6902         (Size Parameters, Implied Frame Resizing):
6903         * doc/lispref/files.texi (Changing Files, Magic File Names):
6904         * doc/lispref/eval.texi (Self-Evaluating Forms):
6905         * doc/lispref/display.texi (Progress, Abstract Display)
6906         (Abstract Display Example, Bidirectional Display):
6907         * doc/lispref/commands.texi (Event Mod):
6908         * doc/emacs/windows.texi (Displaying Buffers):
6909         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
6910         * doc/emacs/text.texi (Enriched Text):
6911         * doc/emacs/programs.texi (MixedCase Words):
6912         * doc/emacs/picture-xtra.texi (Insert in Picture)
6913         (Tabs in Picture):
6914         * doc/emacs/misc.texi (Emacs Server, Printing):
6915         * doc/emacs/mini.texi (Minibuffer History):
6916         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
6917         (Pulling / Pushing):
6918         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
6919         * doc/emacs/help.texi (Help, Help Echo):
6920         * doc/emacs/glossary.texi (Glossary):
6921         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
6922         (Frame Commands):
6923         * doc/emacs/files.texi (Reverting, Saving, Directories):
6924         * doc/emacs/entering.texi (Exiting):
6925         * doc/emacs/emacs.texi (Top):
6926         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
6927         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
6928         appropriate or replace quoting with @dfn.
6929         * doc/misc/ediff.texi (Window and Frame Configuration):
6930         * doc/lispref/processes.texi (Network Feature Testing):
6931         * doc/lispref/display.texi (Display Margins): Quote the phrase
6932         after "a.k.a." where appropriate.
6934 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6936         Clarify reftex-extra-bindings docs
6937         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
6938         * doc/misc/reftex.texi (Key Bindings): Document that the variable
6939         only has an effect at load-time.
6941 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
6943         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
6944         search argument.  (Bug#21492) (Bug#21493)
6946 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6948         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6949         Add pretty symbols for \qquad and \varrho.
6951 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
6953         Add new functions for the root mean square of a (Calc) vector
6954         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
6955         New functions.
6956         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
6957         `calc-vector-rms', add autoloads for `calc-vector-rms' and
6958         `calcFunc-rms'.
6959         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
6960         `calcFunc-rms'.
6961         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
6962         `calc-vector-rms'.
6963         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
6964         command.
6966 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
6968         Add monotone EDE generic project
6969         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
6970         Add monotone generic project.
6972         Revert premature commit
6973         * doc/lispref/files.texi: Revert premature commit of change to
6974         file-name-all-completions.
6976         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
6977         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
6978         with cl-generic defaults.
6979         (elisp--xref-find-references): Add doc string.
6980         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
6981         tests to find bug.
6983         Fix bugs in eieio-oref-default related to class symbols
6984         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
6985         (eieio-oref-default): Handle class properly.
6987 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6989         Quote “fullboth” when defining it
6990         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
6991         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
6993 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6995         Minor doc fix in emacs/ack.texi
6996         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
6997         first argument.
6999 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
7001         Adapt tests in auto-revert-tests.el
7002         * test/automated/auto-revert-tests.el (auto-revert--timeout):
7003         Make it a defconst.
7004         (auto-revert--wait-for-revert): New defun.
7005         (auto-revert-test00-auto-revert-mode)
7006         (auto-revert-test01-auto-revert-tail-mode)
7007         (auto-revert-test02-auto-revert-mode-dired): Use it.
7009 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
7011         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
7012         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
7013         (cl-lib-fdefs): Add defgeneric.
7014         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
7015         (eieio-kw, cl-lib-kw, el-kw): Remove.
7017 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7019         Quote less in manuals
7020         The manuals often used quotes ``...'' when it is better to use @dfn or
7021         @code or capitalized words or no quoting at all.  For example, there is
7022         no need for the `` and '' in “if a variable has one effect for
7023         @code{nil} values and another effect for ``non-@code{nil}'' values”.
7024         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
7025         unnecessary quoting like this, and to use @dfn etc. instead when called
7026         for (Bug#21472).
7028 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
7030         * lisp/custom.el (load-theme): Only compute hash when needed.
7032 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7034         Pacify --enable-gcc-warnings
7035         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
7037 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
7039         Improve error reports in inotify.c
7040         * src/inotify.c (report_inotify_error): New function.  Clone of
7041         report_w32notify_error.
7042         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
7043         (Finotify_rm_watch): Use it.
7045 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7047         Fix the file-notify tests for watch validation on w32
7048         * test/automated/file-notify-tests.el
7049         (file-notify-test04-file-validity): Move the directory deletion
7050         out of the file-notify--test-with-events macro.
7051         (file-notify-test04-file-validity)
7052         (file-notify-test05-dir-validity): Enlarge the timeout of
7053         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
7055 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
7057         Use OPEN BOX instead of space for \quad.
7058         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
7059         character for \quad instead of a space.
7061 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7063         Add missing *.pbm images
7064         * etc/images/connect.pbm: New file.
7065         * etc/images/custom/down-pushed.pbm: New file.
7066         * etc/images/custom/down.pbm: New file.
7067         * etc/images/custom/right-pushed.pbm: New file.
7068         * etc/images/custom/right.pbm: New file.
7069         * etc/images/describe.pbm: New file.
7070         * etc/images/disconnect.pbm: New file.
7071         * etc/images/ezimage/bits.pbm: New file.
7072         * etc/images/ezimage/bitsbang.pbm: New file.
7073         * etc/images/ezimage/box-minus.pbm: New file.
7074         * etc/images/ezimage/box-plus.pbm: New file.
7075         * etc/images/ezimage/box.pbm: New file.
7076         * etc/images/ezimage/checkmark.pbm: New file.
7077         * etc/images/ezimage/dir-minus.pbm: New file.
7078         * etc/images/ezimage/dir-plus.pbm: New file.
7079         * etc/images/ezimage/dir.pbm: New file.
7080         * etc/images/ezimage/doc-minus.pbm: New file.
7081         * etc/images/ezimage/doc-plus.pbm: New file.
7082         * etc/images/ezimage/doc.pbm: New file.
7083         * etc/images/ezimage/info.pbm: New file.
7084         * etc/images/ezimage/key.pbm: New file.
7085         * etc/images/ezimage/label.pbm: New file.
7086         * etc/images/ezimage/lock.pbm: New file.
7087         * etc/images/ezimage/mail.pbm: New file.
7088         * etc/images/ezimage/page-minus.pbm: New file.
7089         * etc/images/ezimage/page-plus.pbm: New file.
7090         * etc/images/ezimage/page.pbm: New file.
7091         * etc/images/ezimage/tag-gt.pbm: New file.
7092         * etc/images/ezimage/tag-minus.pbm: New file.
7093         * etc/images/ezimage/tag-plus.pbm: New file.
7094         * etc/images/ezimage/tag-type.pbm: New file.
7095         * etc/images/ezimage/tag-v.pbm: New file.
7096         * etc/images/ezimage/tag.pbm: New file.
7097         * etc/images/ezimage/unlock.pbm: New file.
7098         * etc/images/gnus/important.pbm: New file.
7099         * etc/images/gnus/mail-send.pbm: New file.
7100         * etc/images/gnus/receipt.pbm: New file.
7101         * etc/images/gnus/toggle-subscription.pbm: New file.
7102         * etc/images/gnus/unimportant.pbm: New file.
7103         * etc/images/gud/all.pbm: New file.
7104         * etc/images/gud/rcont.pbm: New file.
7105         * etc/images/gud/recstart.pbm: New file.
7106         * etc/images/gud/recstop.pbm: New file.
7107         * etc/images/gud/rfinish.pbm: New file.
7108         * etc/images/gud/rnext.pbm: New file.
7109         * etc/images/gud/rnexti.pbm: New file.
7110         * etc/images/gud/rstep.pbm: New file.
7111         * etc/images/gud/rstepi.pbm: New file.
7112         * etc/images/gud/thread.pbm: New file.
7113         * etc/images/lock-broken.pbm: New file.
7114         * etc/images/lock-ok.pbm: New file.
7115         * etc/images/lock.pbm: New file.
7116         * etc/images/mail/copy.pbm: New file.
7117         * etc/images/mail/forward.pbm: New file.
7118         * etc/images/mail/not-spam.pbm: New file.
7119         * etc/images/mail/outbox.pbm: New file.
7120         * etc/images/mail/preview.pbm: New file.
7121         * etc/images/mail/save-draft.pbm: New file.
7122         * etc/images/mh-logo.pbm: New file.
7123         * etc/images/mpc/add.pbm: New file.
7124         * etc/images/mpc/ffwd.pbm: New file.
7125         * etc/images/mpc/next.pbm: New file.
7126         * etc/images/mpc/pause.pbm: New file.
7127         * etc/images/mpc/play.pbm: New file.
7128         * etc/images/mpc/prev.pbm: New file.
7129         * etc/images/mpc/rewind.pbm: New file.
7130         * etc/images/mpc/stop.pbm: New file.
7131         * etc/images/redo.pbm: New file.
7132         * etc/images/smilies/braindamaged.pbm: New file.
7133         * etc/images/smilies/cry.pbm: New file.
7134         * etc/images/smilies/dead.pbm: New file.
7135         * etc/images/smilies/evil.pbm: New file.
7136         * etc/images/smilies/forced.pbm: New file.
7137         * etc/images/smilies/grin.pbm: New file.
7138         * etc/images/smilies/indifferent.pbm: New file.
7139         * etc/images/sort-ascending.pbm: New file.
7140         * etc/images/sort-column-ascending.pbm: New file.
7141         * etc/images/sort-criteria.pbm: New file.
7142         * etc/images/sort-descending.pbm: New file.
7143         * etc/images/sort-row-ascending.pbm: New file.
7144         * etc/images/unchecked.pbm: New file.
7145         * etc/images/zoom-in.pbm: New file.
7146         * etc/images/README: Update instructions for PBM files.
7148         Add separator.pbm tool-bar image
7149         * etc/images/separator.pbm: New file.  Having it avoids the side
7150         effect of changing the tool-bar height when the default font's size
7151         changes and XPM image support is not available, due to the SPC
7152         characters that are left in the Lisp string used to display the tool
7153         bar, because there are no images to display instead of those SPC
7154         characters.
7156         Make show-paren-match face visible on mono-color displays
7157         * lisp/faces.el (show-paren-match): Use the underline face for
7158         mono-color displays.  (Bug#21481)
7160 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7162         Don’t double-encode non-ASCII mail clipboard
7163         * lisp/mail/mailclient.el (mailclient-send-it):
7164         Also fix the case when mailclient-place-body-on-clipboard-flag
7165         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
7167 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
7169         Adapt file-notify-tests.el test cases
7170         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
7171         * src/inotify.c (Finotify_valid_p): Adapt docstring.
7172         * test/automated/file-notify-tests.el
7173         (file-notify-test03-autorevert)
7174         (file-notify-test04-file-validity)
7175         (file-notify-test04-file-validity-remote)
7176         (file-notify-test05-dir-validity)
7177         (file-notify-test05-dir-validity-remote): Adapt docstring.
7178         (file-notify-test04-file-validity): Let events arrive before
7179         calling final `file-notify-valid-p'.  Do not ignore errors.
7180         (file-notify-test05-dir-validity): Do not manipulate
7181         `temporary-file-directory', it isn't necessary.  Let events arrive
7182         before calling final `file-notify-valid-p'.  Do not ignore errors.
7184 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7186         Don’t double-encode non-ASCII for mail client
7187         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
7188         Use RFC 6068’s list of unreserved characters.
7189         (mailclient-send-it): When encoding the body as a URL,
7190         first decode it as per Content-Type: and Content-Transfer-Encoding:,
7191         as URLs must use percent-encoded UTF-8 (Bug#21471).
7192         * doc/misc/url.texi (mailto): Update RFC number.
7194 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7196         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
7198 2015-09-14  Alan Mackenzie  <acm@muc.de>
7200         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
7201         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
7202         `cadr/car'.
7204 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7206         Clarify documentation of char-table extra slots
7207         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
7208         slot numbers are zero-based.  (Bug#21467)
7210 2015-09-14  Alan Mackenzie  <acm@muc.de>
7212         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
7213         Fixes bug#21449.
7214         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
7215         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
7216         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
7217         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
7218         Insert "\\|\\\\." into regexps which match symbols.
7220 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7222         Improve the doc string of w32notify-valid-p
7223         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
7224         that removing a watch makes its object invalid.
7226 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7228         Fix tests for file-notify-valid-p
7229         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
7230         Use delete-directory to delete file-notify--test-tmpfile if it is
7231         a directory.  Likewise for file-notify--test-tmpfile1.
7232         (file-notify-test04-file-validity)
7233         (file-notify-test05-dir-validity): Delete the parent directory of
7234         the test.  Ignore errors when cleaning up after the test.
7236 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7238         Report file-notify-error in w32notify.c
7239         * src/w32notify.c (report_w32notify_error): New function.
7240         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
7241         errors, instead of calling report_file_error.  (Bug#21432)
7243         Implement w32notify-valid-p
7244         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
7245         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
7246         'identity'.
7248 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7250         Test file-notify-valid-p
7251         * test/automated/file-notify-tests.el
7252         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
7253         New tests.
7255 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7257         Fix markup in ELisp manual
7258         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
7259         of the 'alpha' parameter value.  (Bug#21470)
7261 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
7263         Introduce `file-notify-valid-p'
7264         * lisp/filenotify.el (file-notify-valid-p): New defun.
7265         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
7266         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
7267         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
7268         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
7269         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
7270         <file-notify-valid-p>: Add handler.
7271         * lisp/net/tramp.el (tramp-file-name-for-operation):
7272         Add `file-notify-valid-p'.
7273         (tramp-handle-file-notify-valid-p): New defun.
7274         * src/inotify.c (Finotify_valid_p): New defun.
7275         (syms_of_inotify): Declare Sinotify_valid_p.
7277 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
7279         Port Unicode char detection to FreeBSD+svgalib
7280         Problem reported by Ashish SHUKLA in:
7281         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
7282         * configure.ac: Check for struct unipair.unicode instead of for
7283         <linux/kd.h>, since that’s more specific to what the code
7284         actually needs.
7285         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
7287         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
7289 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7291         Fix vertical cursor motion across overlay strings with newlines
7292         * src/indent.c (Fvertical_motion): Don't leave point in the middle
7293         of an overlay string with newlines, as that will position the
7294         cursor after the string at whatever column is there.  (Bug#21468)
7296 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
7298         Fix tests in file-notify-tests.el
7299         * test/automated/file-notify-tests.el: Remove Tramp declarations.
7300         (file-notify-test00-availability): Print remote command w/o Tramp
7301         internal functions.
7302         (file-notify-test02-events, file-notify-test02-events-remote):
7303         Adapt docstring.
7304         (file-notify-test03-autorevert): Use `format-message' when
7305         inspecting *Messages* buffer.
7307 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7309         Bind inhibit-modification-hooks rather than a/b-c-f
7310         * lisp/wid-edit.el (widget-editable-list-insert-before)
7311         (widget-editable-list-delete-at):
7312         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
7313         (cperl-font-lock-unfontify-region-function):
7314         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
7315         * lisp/obsolete/longlines.el (longlines-mode):
7316         * lisp/obsolete/fast-lock.el (save-buffer-state):
7317         * lisp/mouse.el (mouse-save-then-kill-delete-region):
7318         * lisp/gnus/message.el (message-hide-headers):
7319         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
7320         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
7321         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
7322         than after/before-change-functions to nil.
7324 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
7326         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
7327         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
7328         the buffers, even if the forced redisplay is interrupted.
7330         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
7332         Merge syntax-propertize--done and parse-sexp-propertize-done
7333         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
7334         (syntax-propertize): Set syntax-propertize--done even if
7335         syntax-propertize-function is nil.  Avoid recursive invocations.
7336         (syntax-propertize-chunks): New var.
7337         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
7338         Simplify.
7339         (parse-sexp-propertize-function): Don't set any more.
7340         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
7341         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
7342         Call Qinternal__syntax_propertize instead of
7343         Vparse_sexp_propertize_function.  Truncate e_property if needed.
7344         (update_syntax_table_forward): Streamline.
7345         (syms_of_syntax): Define Qinternal__syntax_propertize.
7346         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
7348 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
7350         Prefer straight quoting in some text files
7351         Mostly this just changes ` to ' in static text.  Some exceptions:
7352         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
7353         typically does that now.
7354         * admin/quick-install-emacs (TRY, top level):
7355         Use straight quoting in diagnostics.
7356         * src/README: Fix working-directory confusion.
7358         * CONTRIBUTE: Move send-email here from git-workflow.
7360 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
7362         Improve file notifications in Tramp
7363         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
7364         Set proper events to watch for.
7365         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
7366         watched events.
7368 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
7370         Fix NS build with --enable-checking='glyphs'
7371         * src/nsfns.m (unwind_create_frame): Make the preprocessor
7372         conditionals for referencing 'dpyinfo' consistent throughout the
7373         function.  (Bug#21426)
7375 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
7377         Add seq-find
7378         This function is similar to `seq-some' but returns the found element.
7379         In the cases where nil can be the found element, a sentinel optional
7380         argument can be provided to avoid ambiguities.
7381         * lisp/emacs-lisp/seq.el (seq-find): New function.
7382         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
7383         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
7384         seq-find.
7386 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7388         Document file-notify--test-with-events.
7389         * test/automated/file-notify-tests.el (file-notify--test-with-events):
7390         Add docstring.
7392 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
7394         Report used native library in file-notify-tests.el
7395         * test/automated/file-notify-tests.el
7396         (tramp-get-remote-gvfs-monitor-dir)
7397         (tramp-get-remote-inotifywait): Declare them.
7398         (file-notify-test00-availability): Print used native library.
7400 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
7402         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
7403         (mpc-file-local-copy): Check for absolute path.  Check more config
7404         locations.
7406 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
7408         Improve documentation of categories
7409         * doc/lispref/syntax.texi (Categories): Clarify the example of
7410         using define-category and modify-category-entry.  (Bug#21448)
7412 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7414         Revert some stray curved quotes I missed earlier
7415         Problem reported by David Kastrup in:
7416         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
7417         * lisp/international/mule-cmds.el (leim-list-header):
7418         Use format-message with an ASCII-only format.
7420         Prefer NUMBERP to spelling it out
7421         * src/editfns.c (styled_format):
7422         * src/frame.h (NUMVAL):
7423         * src/image.c (parse_image_spec):
7424         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
7425         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
7426         * src/process.c (Fsignal_process):
7427         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
7428         * src/xfaces.c (check_lface_attrs):
7429         * src/xselect.c (x_fill_property_data, x_send_client_event):
7430         Use NUMBERP rather than INTEGERP || FLOATP.
7432 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7434         Improve file-notify-tests
7435         * test/automated/file-notify-tests.el: Use lexical-binding.
7436         (file-notify--test-cleanup): New function.
7437         (file-notify-test00-availability, file-notify-test01-add-watch)
7438         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
7439         (file-notify--test-with-events): New macro.
7440         (file-notify-test02-events): Use it.
7442 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7444         Add patch-sending instructions to git-workflow
7445         From a suggestion by Mitchel Humpherys in:
7446         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
7447         * admin/notes/git-workflow (Sending patches): New section.
7449         Port to GIFLIB 5.0.6 and later
7450         Problem reported by Mitchel Humpherys in:
7451         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
7452         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
7453         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
7454         (gif_load) [HAVE_GIF]: Use it.
7456 2015-09-10  Glenn Morris  <rgm@gnu.org>
7458         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
7460 2015-09-09  Glenn Morris  <rgm@gnu.org>
7462         * test/automated/file-notify-tests.el (file-notify-test02-events):
7463         Fix recent change.
7465 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7467         Refix movemail GCC pacification
7468         Problem reported by Ken Brown in:
7469         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
7470         * lib-src/movemail.c (main): Fix previous change.
7472 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7474         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
7475         Mark unused vars with underscore.
7477         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
7478         (parse_sexp_propertize): ...from here.
7480         * lisp/filenotify.el: Use lexical-binding
7481         (file-notify-add-watch): Avoid add-to-list.
7483 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
7485         Start checking event types in file-notify tests
7486         * test/automated/file-notify-tests.el (file-notify--test-events):
7487         New variable.
7488         (file-notify--test-event-handler): Append received event to
7489         file-notify--test-events for later analysis.
7490         (file-notify-test02-events): Assert that the expected notifications have
7491         arrived in the expected order.
7493 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7495         Merge from gnulib and texinfo
7496         This incorporates:
7497         2015-08-03 Improve port of stdalign to C++11
7498         * lib/stdalign.in.h: Copy from gnulib.
7499         * doc/misc/texinfo.tex: Copy from texinfo.
7501 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7503         Make syntax.c call syntax-propertize on demand
7504         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
7505         (parse-sexp-propertize-function): Use it.
7506         (syntax-propertize): Disable parse-sexp-propertize-function.
7507         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
7508         New functions.
7509         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
7510         `parse-sexp-propertize-function'.
7511         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
7512         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
7513         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
7514         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
7515         Don't assume `point' is set.
7517 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7519         Fix indentation of an @example in ELisp manual
7520         * doc/lispref/syntax.texi (Categories): Untabify the example.
7521         (Bug#21448)
7523 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7525         Define internal-char-font even if --without-x
7526         The function is used now even in non-graphical environments.
7527         Problem reported by Glenn Morris in:
7528         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
7529         * src/font.c (Finternal_char_font): Move here ...
7530         * src/fontset.c (Finternal_char_font): ... from here.
7532 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7534         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
7535         Remove warning.
7537 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7539         Fix display of complex local data types in GDB-MI
7540         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
7541         variable has no value, display "<complex data type>" as a
7542         placeholder, instead of a confusing "nil".  (Bug#21438)
7544 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
7546         Remove redundant redefinition of seq-drop-while from seq.el
7547         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
7549 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
7551         * lisp/emacs-lisp/package.el (package--ensure-init-file):
7552         More robust check for `package-initialize' calls in init file.
7553         This function accepts an optional argument, but calls passing
7554         an argument would not have been detected.
7556 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7558         Port movemail to RHEL 6 with --enable-gcc-warnings
7559         * lib-src/movemail.c (main): Declare local only if needed.
7561         Port recent Linux console changes to RHEL 6
7562         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
7564         Improvements for curved quotes on Linux consule
7565         This should help Emacs work better out-of-the-box on Linux consoles,
7566         which have only limited support for displaying Unicode characters.
7567         Also, undo the recent change that caused text-quoting-style to
7568         affect quote display on terminals, so that the two features are
7569         independent.  See Alan Mackenzie in:
7570         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
7571         Finally, add a style parameter to startup--setup-quote-display,
7572         so that this function can also be invoked after startup, with
7573         different styles depending on user preference at the time.
7574         * configure.ac: Check for linux/kd.h header.
7575         * doc/emacs/display.texi (Text Display): Document quote display.
7576         * doc/lispref/display.texi (Active Display Table):
7577         * etc/NEWS:
7578         * lisp/startup.el (startup--setup-quote-display, command-line):
7579         text-quoting-style no longer affects quote display.
7580         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
7581         * lisp/international/mule-util.el (char-displayable-p):
7582         * lisp/startup.el (startup--setup-quote-display):
7583         On a text terminal supporting glyph codes, use the reported
7584         glyph codes instead of the terminal coding system, as this
7585         is more accurate on the Linux console.
7586         * lisp/startup.el (startup--setup-quote-display):
7587         New optional arg STYLE.
7588         * src/fontset.c (Finternal_char_font):
7589         Report glyph codes for a text terminal, if they are available.
7590         Currently this is supported only for the Linux console.
7591         * src/termhooks.h (struct terminal): New member glyph-code-table.
7592         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
7593         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
7594         (terminal_glyph_code): New function.
7596 2015-09-08  Juri Linkov  <juri@linkov.net>
7598         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
7599         underline.  (Bug#21433)
7601 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7603         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
7605 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
7607         Fix double-reporting of rename events with inotify
7608         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
7609         of rename events with inotify (bug#21435).
7611 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
7613         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
7614         (tetris-mode-map): Use it.
7616 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7618         Remove a few simple cases of global redisplay
7619         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
7620         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
7621         rather than returning a "resized_p" boolean.
7622         (redisplay_internal): Adjust call accordingly.
7623         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
7624         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
7625         tracking of this undesirable situation.
7627         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
7628         * src/process.c (status_notify): Only set the update_mode_line on the
7629         relevant buffers rather than setting it globally.
7631 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7633         * lisp/electric.el (electric-quote-post-self-insert-function):
7634         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
7635         (electric-quote-mode): Activate everywhere in message-mode.
7637 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
7639         Go back to grave quoting in source-code docstrings etc.
7640         This reverts almost all my recent changes to use curved quotes
7641         in docstrings and/or strings used for error diagnostics.
7642         There are a few exceptions, e.g., Bahá’í proper names.
7643         * admin/unidata/unidata-gen.el (unidata-gen-table):
7644         * lisp/abbrev.el (expand-region-abbrevs):
7645         * lisp/align.el (align-region):
7646         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
7647         (outlineify-sticky):
7648         * lisp/apropos.el (apropos-library):
7649         * lisp/bookmark.el (bookmark-default-annotation-text):
7650         * lisp/button.el (button-category-symbol, button-put)
7651         (make-text-button):
7652         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
7653         * lisp/calc/calc-embed.el (calc-do-embedded):
7654         * lisp/calc/calc-ext.el (calc-user-function-list):
7655         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
7656         * lisp/calc/calc-help.el (calc-describe-key)
7657         (calc-describe-thing, calc-full-help):
7658         * lisp/calc/calc-lang.el (calc-c-language)
7659         (math-parse-fortran-vector-end, math-parse-tex-sum)
7660         (math-parse-eqn-matrix, math-parse-eqn-prime)
7661         (calc-yacas-language, calc-maxima-language, calc-giac-language)
7662         (math-read-giac-subscr, math-read-math-subscr)
7663         (math-read-big-rec, math-read-big-balance):
7664         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
7665         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
7666         (calc-auto-recompute):
7667         * lisp/calc/calc-prog.el (calc-fix-token-name)
7668         (calc-read-parse-table-part, calc-user-define-invocation)
7669         (math-do-arg-check):
7670         * lisp/calc/calc-store.el (calc-edit-variable):
7671         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7672         * lisp/calc/calc-vec.el (math-read-brackets):
7673         * lisp/calc/calc-yank.el (calc-edit-mode):
7674         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
7675         * lisp/calendar/appt.el (appt-display-message):
7676         * lisp/calendar/diary-lib.el (diary-check-diary-file)
7677         (diary-mail-entries, diary-from-outlook):
7678         * lisp/calendar/icalendar.el (icalendar-export-region)
7679         (icalendar--convert-float-to-ical)
7680         (icalendar--convert-date-to-ical)
7681         (icalendar--convert-ical-to-diary)
7682         (icalendar--convert-recurring-to-diary)
7683         (icalendar--add-diary-entry):
7684         * lisp/calendar/time-date.el (format-seconds):
7685         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
7686         (timeclock-make-hours-explicit, timeclock-log-data):
7687         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
7688         (todo-item-mark, todo-check-format)
7689         (todo-insert-item--next-param, todo-edit-item--next-key)
7690         (todo-mode):
7691         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
7692         * lisp/cedet/mode-local.el (describe-mode-local-overload)
7693         (mode-local-print-binding, mode-local-describe-bindings-2):
7694         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
7695         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
7696         * lisp/cus-start.el (standard):
7697         * lisp/cus-theme.el (describe-theme-1):
7698         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
7699         (custom--sort-vars-1, load-theme):
7700         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7701         * lisp/dired-x.el (dired-do-run-mail):
7702         * lisp/dired.el (dired-log):
7703         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
7704         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
7705         (ad-disable-advice, ad-remove-advice, ad-set-argument)
7706         (ad-set-arguments, ad--defalias-fset, ad-activate)
7707         (ad-deactivate):
7708         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
7709         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
7710         (byte-optimize-while, byte-optimize-apply):
7711         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
7712         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
7713         (byte-compile-log-file, byte-compile-format-warn)
7714         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
7715         (byte-compile-cl-warn)
7716         (byte-compile-warn-about-unresolved-functions)
7717         (byte-compile-file, byte-compile--declare-var)
7718         (byte-compile-file-form-defmumble, byte-compile-form)
7719         (byte-compile-normal-call, byte-compile-check-variable)
7720         (byte-compile-variable-ref, byte-compile-variable-set)
7721         (byte-compile-subr-wrong-args, byte-compile-setq-default)
7722         (byte-compile-negation-optimizer)
7723         (byte-compile-condition-case--old)
7724         (byte-compile-condition-case--new, byte-compile-save-excursion)
7725         (byte-compile-defvar, byte-compile-autoload)
7726         (byte-compile-lambda-form)
7727         (byte-compile-make-variable-buffer-local, display-call-tree)
7728         (batch-byte-compile):
7729         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
7730         * lisp/emacs-lisp/chart.el (chart-space-usage):
7731         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
7732         (check-declare-warn, check-declare-file)
7733         (check-declare-directory):
7734         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
7735         (checkdoc-message-text-engine):
7736         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
7737         (cl--describe-class):
7738         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
7739         (cl--generic-describe, cl-generic-generalizers):
7740         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
7741         (cl-symbol-macrolet):
7742         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
7743         * lisp/emacs-lisp/copyright.el (copyright)
7744         (copyright-update-directory):
7745         * lisp/emacs-lisp/edebug.el (edebug-read-list):
7746         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
7747         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
7748         (eieio-oref):
7749         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
7750         * lisp/emacs-lisp/eieio-speedbar.el:
7751         (eieio-speedbar-child-make-tag-lines)
7752         (eieio-speedbar-child-description):
7753         * lisp/emacs-lisp/eieio.el (defclass, change-class):
7754         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
7755         (elint-init-form, elint-check-defalias-form)
7756         (elint-check-let-form):
7757         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
7758         (ert-results-pop-to-backtrace-for-test-at-point)
7759         (ert-results-pop-to-messages-for-test-at-point)
7760         (ert-results-pop-to-should-forms-for-test-at-point)
7761         (ert-describe-test):
7762         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
7763         (find-function-library):
7764         * lisp/emacs-lisp/generator.el (iter-yield):
7765         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
7766         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7767         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7768         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
7769         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
7770         (advice--make, define-advice):
7771         * lisp/emacs-lisp/package-x.el (package-upload-file):
7772         * lisp/emacs-lisp/package.el (package-version-join)
7773         (package-disabled-p, package-activate-1, package-activate)
7774         (package--download-one-archive)
7775         (package--download-and-read-archives)
7776         (package-compute-transaction, package-install-from-archive)
7777         (package-install, package-install-selected-packages)
7778         (package-delete, package-autoremove, describe-package-1)
7779         (package-install-button-action, package-delete-button-action)
7780         (package-menu-hide-package, package-menu--list-to-prompt)
7781         (package-menu--perform-transaction)
7782         (package-menu--find-and-notify-upgrades):
7783         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
7784         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
7785         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
7786         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
7787         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
7788         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
7789         (rx-form):
7790         * lisp/emacs-lisp/smie.el (smie-config-save):
7791         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
7792         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
7793         * lisp/emacs-lisp/testcover.el (testcover-1value):
7794         * lisp/emacs-lisp/timer.el (timer-event-handler):
7795         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
7796         (viper-toggle-search-style, viper-kill-buffer)
7797         (viper-brac-function):
7798         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
7799         * lisp/env.el (setenv):
7800         * lisp/erc/erc-button.el (erc-nick-popup):
7801         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
7802         * lisp/eshell/em-dirs.el (eshell/cd):
7803         * lisp/eshell/em-glob.el (eshell-glob-regexp)
7804         (eshell-glob-entries):
7805         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
7806         * lisp/eshell/esh-opt.el (eshell-show-usage):
7807         * lisp/facemenu.el (facemenu-add-new-face)
7808         (facemenu-add-new-color):
7809         * lisp/faces.el (read-face-name, read-face-font, describe-face)
7810         (x-resolve-font-name):
7811         * lisp/files-x.el (modify-file-local-variable):
7812         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
7813         (set-auto-mode, hack-one-local-variable--obsolete)
7814         (dir-locals-set-directory-class, write-file, basic-save-buffer)
7815         (delete-directory, copy-directory, recover-session)
7816         (recover-session-finish, insert-directory)
7817         (file-modes-char-to-who, file-modes-symbolic-to-number)
7818         (move-file-to-trash):
7819         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
7820         * lisp/find-cmd.el (find-generic, find-to-string):
7821         * lisp/finder.el (finder-commentary):
7822         * lisp/font-lock.el (font-lock-fontify-buffer):
7823         * lisp/format.el (format-write-file, format-find-file)
7824         (format-insert-file):
7825         * lisp/frame.el (get-device-terminal, select-frame-by-name):
7826         * lisp/fringe.el (fringe--check-style):
7827         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
7828         * lisp/help-fns.el (help-fns--key-bindings)
7829         (help-fns--compiler-macro, help-fns--parent-mode)
7830         (help-fns--obsolete, help-fns--interactive-only)
7831         (describe-function-1, describe-variable):
7832         * lisp/help.el (describe-mode)
7833         (describe-minor-mode-from-indicator):
7834         * lisp/image.el (image-type):
7835         * lisp/international/ccl.el (ccl-dump):
7836         * lisp/international/fontset.el (x-must-resolve-font-name):
7837         * lisp/international/mule-cmds.el (prefer-coding-system)
7838         (select-safe-coding-system-interactively)
7839         (select-safe-coding-system, activate-input-method)
7840         (toggle-input-method, describe-current-input-method)
7841         (describe-language-environment):
7842         * lisp/international/mule-conf.el (code-offset):
7843         * lisp/international/mule-diag.el (describe-character-set)
7844         (list-input-methods-1):
7845         * lisp/mail/feedmail.el (feedmail-run-the-queue):
7846         * lisp/mouse.el (minor-mode-menu-from-indicator):
7847         * lisp/mpc.el (mpc-playlist-rename):
7848         * lisp/msb.el (msb--choose-menu):
7849         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
7850         * lisp/net/imap.el (imap-interactive-login):
7851         * lisp/net/mairix.el (mairix-widget-create-query):
7852         * lisp/net/newst-backend.el (newsticker--sentinel-work):
7853         * lisp/net/newst-treeview.el (newsticker--treeview-load):
7854         * lisp/net/rlogin.el (rlogin):
7855         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
7856         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
7857         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
7858         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
7859         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
7860         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
7861         (org-babel-goto-named-result):
7862         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
7863         * lisp/org/ob-ref.el (org-babel-ref-resolve):
7864         * lisp/org/org-agenda.el (org-agenda-prepare):
7865         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
7866         (org-clock-resolve):
7867         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
7868         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
7869         * lisp/org/org-habit.el (org-habit-parse-todo):
7870         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
7871         (org-mouse-context-menu):
7872         * lisp/org/org-table.el (org-table-edit-formulas):
7873         * lisp/org/ox.el (org-export-async-start):
7874         * lisp/proced.el (proced-log):
7875         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
7876         (ada-check-matching-start, ada-goto-matching-start):
7877         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
7878         * lisp/progmodes/ada-xref.el (ada-find-executable):
7879         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
7880         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
7881         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
7882         (flymake-start-syntax-check-process):
7883         * lisp/progmodes/python.el (python-shell-get-process-or-error)
7884         (python-define-auxiliary-skeleton):
7885         * lisp/progmodes/sql.el (sql-comint):
7886         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
7887         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
7888         * lisp/recentf.el (recentf-open-files):
7889         * lisp/replace.el (query-replace-read-from)
7890         (occur-after-change-function, occur-1):
7891         * lisp/scroll-bar.el (scroll-bar-columns):
7892         * lisp/server.el (server-get-auth-key):
7893         * lisp/simple.el (execute-extended-command)
7894         (undo-outer-limit-truncate, list-processes--refresh)
7895         (compose-mail, set-variable, choose-completion-string)
7896         (define-alternatives):
7897         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
7898         (command-line-1):
7899         * lisp/subr.el (noreturn, define-error, add-to-list)
7900         (read-char-choice, version-to-list):
7901         * lisp/term/common-win.el (x-handle-xrm-switch)
7902         (x-handle-name-switch, x-handle-args):
7903         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
7904         * lisp/textmodes/reftex-ref.el (reftex-label):
7905         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
7906         * lisp/textmodes/two-column.el (2C-split):
7907         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
7908         (tutorial--find-changed-keys):
7909         * lisp/type-break.el (type-break-noninteractive-query):
7910         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
7911         (wdired-do-perm-changes):
7912         * lisp/whitespace.el (whitespace-report-region):
7913         Prefer grave quoting in source-code strings used to generate help
7914         and diagnostics.
7915         * lisp/faces.el (face-documentation):
7916         No need to convert quotes, since the result is a docstring.
7917         * lisp/info.el (Info-virtual-index-find-node)
7918         (Info-virtual-index, info-apropos):
7919         Simplify by generating only curved quotes, since info files are
7920         typically that ways nowadays anyway.
7921         * lisp/international/mule-diag.el (list-input-methods):
7922         Don’t assume text quoting style is curved.
7923         * lisp/org/org-bibtex.el (org-bibtex-fields):
7924         Revert my recent changes, going back to the old quoting style.
7926 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7928         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
7929         (package--autoloads-file-name)
7930         (package--activate-autoloads-and-load-path): New function.
7931         (package-activate-1): Delegate autoloading and load-path
7932         configuration to `package--activate-autoloads-and-load-path'.
7933         (package--compile): Before compilation, call
7934         `package--activate-autoloads-and-load-path' instead of
7935         `package-activate-1'.
7937 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7939         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
7941 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
7943         Fix deletion of symlinks to directories on MS-Windows
7944         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
7945         symlink to a directory, try again with 'rmdir'.
7946         (is_symlink): If the argument is a symlink to a directory, set a
7947         bit in the return value to indicate that fact.
7949 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7951         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
7952         When `package-initialize' is called as part of loading the init file,
7953         the user probably doesn't want it to be called again afterwards.
7954         In this situation, `package-initialize' now sets
7955         `package-enable-at-startup' to nil to prevent that.  The user can have
7956         the old behavior by setting this variable to t after the call to
7957         `package-initialize'.  (Bug#21423)
7958         * doc/emacs/package.texi (Package Installation): Document it.
7959         * doc/lispref/package.texi (Packaging Basics): Document it.
7960         * etc/NEWS: Document it.
7962 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7964         Bump version of ntlm.el to 2.00
7965         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
7966         Add comm keyword.
7968 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
7970         * doc/misc/gnus.texi (Mail Source Specifiers):
7971         Allow :mailbox to be a list.
7973 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
7975         * lisp/progmodes/etags.el (etags-tags-completion-table):
7976         Allow even one non-regular character before the implicit tag name.
7977         Reported at http://emacs.stackexchange.com/questions/15269/.
7979 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7981         Add support for NTLMv2 authentication
7982         * lisp/net/ntlm.el (ntlm): New customization group.
7983         (ntlm-compatibility-level): New defcustom.
7984         (ntlm-compute-timestamp): New function.
7985         (ntlm-generate-nonce): Likewise.
7986         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
7988 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7990         * lisp/emacs-lisp/package.el: Rename custom faces.
7991         All of the recently introduced faces, like `package-name-face', have
7992         been renamed to no end in `-face' to comply with the convention
7993         described in (info "(elisp) Defining Faces").
7994         (package-name, package-description)
7995         (package-status-built-in, package-status-external)
7996         (package-status-available, package-status-new)
7997         (package-status-held, package-status-disabled)
7998         (package-status-installed, package-status-dependency)
7999         (package-status-unsigned, package-status-incompat)
8000         (package-status-avail-obso): New faces.
8001         (package-menu--print-info-simple): Use them.
8003 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
8005         mail-source.el: Make the imap mail-source's :mailbox handle a list
8006         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
8007         Allow :mailbox to be  a list.
8009 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
8011         nnimap.el: Handle nil arg to nnimap-request-group
8012         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
8013         This arg isn't always passed in, check it's not nil before making it
8014         into a list.  The active arg will also be nil if the group is new,
8015         check for that.
8017 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
8019         File notifications: Support renaming over directory boundaries
8020         * lisp/filenotify.el (file-notify-handle-event):
8021         (file-notify--pending-event): Adapt docstring.
8022         (file-notify--descriptor, file-notify-callback): Reimplement in
8023         order to support renaming over directory boundaries.
8024         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
8025         * doc/lispref/os.texi (File Notifications): Remove limitation of
8026         file renaming to the same directory.
8028 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8030         Spelling fix (Bug#21420)
8032 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
8034         Improve the semantic of map-some
8035         Update map-some to return the returned by the predicate, similar to
8036         seq-some.
8037         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
8038           return value of the predicate.
8039         * test/automated/map-tests.el (test-map-some): Update the test to check
8040           for non-nil values only.
8042         Rename map-contains-key-p and map-some-p
8043         Remove the "-p" suffix from both function names.
8044         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
8045           Rename the functions.
8046         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
8047           Update both test functions.
8049         Improve the semantic of seq-some
8050         Update seq-some to return non-nil if the predicate returns non-nil for
8051         any element of the seq, in which case the returned value is the one
8052         returned by the predicate.
8053         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
8054           docstring.
8055         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
8056         * doc/lispref/sequences.texi (Sequence Functions): Update the
8057           documentation for seq-some.
8059         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
8060         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
8061           without the "-p" prefix.
8062         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
8063           the tests accordingly.
8064         * doc/lispref/sequences.texi (Sequence Functions): Update the
8065           documentation for seq.el.
8067 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8069         text-quoting-style for usage of fn names with ‘’
8070         * lisp/help.el (help--docstring-quote): Don’t assume
8071         text-quoting-style is ‘curve’ when generating usage strings for
8072         functions whose names contain curved quotes.
8074 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8076         Fix fix for describe-function keybinding confusion
8077         This fixes a bug introduced by the previous patch.
8078         * lisp/help-fns.el (help-fns--signature):
8079         Last arg of help-fns--signature is now a buffer, or nil if a
8080         raw signature is wanted.  All callers changed.
8081         (describe-function-1): Use this to do the right thing with signatures.
8083 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
8085         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
8087         Use PAT rather than UPAT in pcase macros
8088         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
8089         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
8090           than UPAT.
8092 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8094         Fix describe-function keybinding confusion
8095         * lisp/help-fns.el (describe-function-1): Compute signature
8096         in the original buffer, not in standard-output, so that
8097         substitute-command-keys uses the proper keybindings.
8098         This fixes Bug#21412, introduced in commit
8099         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
8101 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
8103         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
8105 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
8107         Avoid read error messages from 'inotify'
8108         * src/process.c (wait_reading_process_output): Add a
8109         'tls_available' set and manipulate it instead of 'Available' when
8110         checking TLS inputs.  Assign the value to 'Available' only if we
8111         find any TLS data waiting to be read.  This avoids error messages
8112         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
8114 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
8116         Avoid errors in thing-at-point with 2nd argument non-nil
8117         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
8118         sequences.  (Bug#21391)
8120 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
8122         Fix segfaults due to using a stale face ID
8123         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
8124         (display_echo_area_1, redisplay_internal): Call it to avoid
8125         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
8126         faces, which could case a segfault if the frame's face cache was
8127         freed since the last redisplay.  (Bug#21394)
8128         * src/xfaces.c (free_realized_faces):
8129         Call forget_escape_and_glyphless_faces.
8130         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
8132 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8134         Fix minor problems with " in manual
8136 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
8138         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
8139         multi-hop files.
8141 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8143         Support automated ‘make check’ in non-C locale
8144         This lets the builder optionally test Emacs behavior in other locales.
8145         The C locale is still the default for tests.
8146         * test/automated/Makefile.in (TEST_LOCALE): New macro.
8147         (emacs): Use it.
8148         * test/automated/flymake-tests.el (flymake-tests--current-face):
8149         Use C locale for subprocesses so that tests behave as expected.
8150         * test/automated/python-tests.el:
8151         (python-shell-prompt-validate-regexps-1)
8152         (python-shell-prompt-validate-regexps-2)
8153         (python-shell-prompt-validate-regexps-3)
8154         (python-shell-prompt-validate-regexps-4)
8155         (python-shell-prompt-validate-regexps-5)
8156         (python-shell-prompt-validate-regexps-6)
8157         (python-shell-prompt-set-calculated-regexps-1):
8158         Adjust expected output to match locale.
8159         * test/automated/tildify-tests.el (tildify-test--test)
8160         (tildify-space-test--test, tildify-space-undo-test--test):
8161         This test assumes UTF-8 encoding.
8163 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
8165         Fix some more docstring etc. quoting problems
8166         Mostly these fixes prevent the transliteration of apostrophes
8167         that should stay apostrophes.  Also, prefer curved quotes in
8168         Bahá’í proper names, as that’s the preferred Bahá’í style and
8169         these names are chock-full of non-ASCII characters anyway.
8170         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
8171         (eieio-defclass-internal):
8172         * lisp/emacs-lisp/eieio.el (defclass):
8173         * lisp/hi-lock.el (hi-lock-mode):
8174         Don’t transliterate Lisp apostrophes when generating a
8175         doc string or diagnostic.
8176         * lisp/international/mule-diag.el (list-coding-systems-1):
8177         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
8178         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
8179         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
8180         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
8181         Substitute quotes before putting them in the help buffer.
8183 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
8185         Re-add the notion of echo_prompt lost in the translation
8186         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
8187         echo_prompt which contains the actual string.  Update all uses.
8188         * src/keyboard.c (kset_echo_prompt): New function.
8189         (echo_update): Add echo_prompt at the very beginning.
8190         (read_char): Remove workaround for bug#19875, not needed any more.
8191         (read_key_sequence): Set echo_prompt rather than echo_string
8192         (bug#21403).
8193         (mark_kboards): Mark echo_prompt.
8195         Fix disassembly of non-compiled lexical functions (bug#21377)
8196         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
8197         * lisp/emacs-lisp/disass.el: Use lexical-binding.
8198         (disassemble): Recognize `closure's as well.
8199         (disassemble-internal): Use indirect-function and
8200         help-function-arglist, and accept `closure's.
8201         (disassemble-internal): Use interactive-form.
8202         (disassemble-1): Use functionp.
8204         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
8205         Don't compose inside verbatim blocks!
8207 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
8209         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
8210         (bug#19441).
8212         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
8214 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
8216         vc-git-mode-line-string: Explicitly re-apply the face
8217         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
8218         the face (bug#21404).
8220 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
8222         Treat initial-scratch-message as a doc string
8223         * doc/emacs/building.texi (Lisp Interaction):
8224         * doc/lispref/os.texi (Startup Summary):
8225         * etc/NEWS: Document this.
8226         * lisp/startup.el (initial-scratch-message):
8227         Look up find-file’s key rather than hardcoding it.
8228         (command-line-1): Substitute the doc string.
8229         This also substitutes the quotes, which will help test display
8230         quoting at startup.
8232         Fix describe-char bug with glyphs on terminals
8233         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
8234         buffers too, so don’t treat them differently from graphic displays.
8235         Without this fix, describe-char would throw an error on a terminal
8236         if given a glyph with a non-default face.
8238         Follow text-quoting-style in display table init
8239         This attempts to fix a problem reported by Alan Mackenzie in:
8240         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
8241         * doc/lispref/display.texi (Active Display Table):
8242         Mention how text-quoting-style affects it.
8243         * doc/lispref/help.texi (Keys in Documentation):
8244         Say how to set text-quoting-style in ~/.emacs.
8245         * etc/NEWS: Document the change.
8246         * lisp/startup.el (startup--setup-quote-display):
8247         Follow user preference if text-quoting-style is set.
8248         (command-line): Setup quote display again if user expresses
8249         a preference in .emacs.
8251 2015-09-02  K. Handa  <handa@gnu.org>
8253         Fix typo
8254         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
8255         -> OTF_positioning_type_components_mask.
8257         Fix previous change
8258         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
8259         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
8261 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
8263         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
8264         Rename from vc-find-file-hook and make interactive.
8265         (vc-find-file-hook): Redefine as obsolete alias.
8267 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8269         Escape ` and ' in doc
8270         Escape apostrophes and grave accents in docstrings if they are
8271         are supposed to stand for themselves and are not quotes.  Remove
8272         apostrophes from docstring examples like ‘'(calendar-nth-named-day
8273         -1 0 10 year)’ that confuse source code with data.  Do some other
8274         minor docstring fixups as well, e.g., insert a missing close quote.
8276 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8278         Generalize the prefix-command machinery of C-u
8279         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
8280         (prefix-command-preserve-state-hook): New hooks.
8281         (internal-echo-keystrokes-prefix): New function.
8282         (prefix-command--needs-update, prefix-command--last-echo): New vars.
8283         (prefix-command-update, prefix-command-preserve): New functions.
8284         (reset-this-command-lengths): New compatibility definition.
8285         (universal-argument--mode): Call prefix-command-update.
8286         (universal-argument, universal-argument-more, negative-argument)
8287         (digit-argument): Call prefix-command-preserve-state.
8288         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
8289         the "prefix argument" to echo.
8290         (this_command_key_count_reset, before_command_key_count)
8291         (before_command_echo_length): Delete variables.
8292         (echo_add_key): Always add a space.
8293         (echo_char): Remove.
8294         (echo_dash): Don't give up when this_command_key_count is 0, since that
8295         is now the case after a prefix command.
8296         (echo_update): New function, extracted from echo_now.
8297         (echo_now): Use it.
8298         (add_command_key, read_char, record_menu_key): Remove old disabled code.
8299         (command_loop_1): Don't refrain from pushing an undo boundary when
8300         prefix-arg is set.  Remove other prefix-arg special case, now handled
8301         directly in the prefix commands instead.  But call echo_now if there's
8302         a prefix state to echo.
8303         (read_char, record_menu_key): Use echo_update instead of echo_char.
8304         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
8305         (Freset_this_command_lengths): Delete function.
8306         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
8307         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
8308         * lisp/simple.el: Use those new hooks for C-u.
8309         (universal-argument--description): New function.
8310         (prefix-command-echo-keystrokes-functions): Use it.
8311         (universal-argument--preserve): New function.
8312         (prefix-command-preserve-state-hook): Use it.
8313         (command-execute): Call prefix-command-update if needed.
8314         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
8315         (kmacro-step-edit-prefix-index): Delete variables.
8316         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
8317         support for prefix arg commands.
8318         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
8319         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
8320         (cua--shift-control-prefix): Use prefix-command-preserve-state.
8321         Remove now unused arg `arg'.
8322         (cua--prefix-override-handler, cua--prefix-repeat-handler)
8323         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
8324         Update accordingly.
8325         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
8326         any more.
8327         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
8328         if the mark is not set.
8330 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8332         Rework quoting in Emacs Lisp Introduction
8333         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
8334         (if in more detail, type-of-animal in detail, else): Rework the
8335         early example to use " rather than ' so that we don’t burden
8336         complete novices with the low-priority detail of text quoting style.
8337         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
8338         (kill-new function, kill-ring-yank-pointer)
8339         (Complete forward-sentence, Loading Files)
8340         (Code for current-kill, Code for current-kill, yank):
8341         Resurrect the Emacs 22 versions of the code, which uses grave
8342         quoting style in doc strings.
8343         (Complete zap-to-char): Mention how quoting works in doc strings.
8345         Setup quote display only if interactive
8346         * lisp/startup.el (command-line):
8347         Skip call to startup--setup-quote-display if noninteractive.
8348         Without this change, python-shell-prompt-validate-regexps-1
8349         fails in test/automated/python-tests.el when run in an
8350         en_US.utf8 locale on Fedora.
8352 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8354         Use defalias at the top level
8355         * lisp/gnus/gnus-util.el (gnus-format-message):
8356         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
8357         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
8359 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8361         terminal-init-w32console mimicks command-line
8362         Problem reported by Eli Zaretskii.
8363         * lisp/startup.el (startup--setup-quote-display):
8364         New function, refactored from a part of ‘command-line’.
8365         (command-line): Use it.
8366         * lisp/term/w32console.el (terminal-init-w32console):
8367         Use it, so that this function stays consistent with ‘command-line’.
8369         Display replacement quotes with shadow glyphs
8370         * lisp/startup.el (command-line): When displaying ASCII
8371         replacements for curved quotes, use a shadow glyph instead of a
8372         regular one, to avoid ambiguity.
8374 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8376         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
8378 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8380         Docstring fixes re quotes in C code
8381         Fix some docstring quoting problems, mostly by escaping apostrophe.
8383 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8385         Some Tramp password fixes
8386         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
8387         of the hops.
8388         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
8389         at the beginning of the command.  Otherwise, it could be
8390         interpreted as password prompt if the remote host echoes the
8391         command.
8392         (tramp-remote-coding-commands): Add "openssl enc -base64".
8394 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
8396         Make vc-git-working-revision always return the commit hash
8397         * lisp/vc/vc-git.el (vc-git-working-revision):
8398         Return the commit hash (bug#21383).
8399         (vc-git--symbolic-ref): New function, extracted from above.
8400         (vc-git-mode-line-string): Use it.
8402 2015-09-01  K. Handa  <handa@gnu.org>
8404         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
8405         * src/ftfont.c (MFLTGlyphFT): New type.
8406         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
8407         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
8408         elements in the array MFLTGlyphString.glyphs.
8410 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
8412         Improve comments in elisp-mode.el, elisp-mode-tests.el
8413         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
8415         Delete Emacs 25 test in mode-local.el
8416         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8417         Fix missed an edit in previous commit.
8419         Show all known mode-local overrides in *Help*
8420         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8421         Assume Emacs 25. Add all known mode-local overrides.
8423 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8425         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
8426         Ensure that the article where the search word is found is displayed
8427         and pointed to in the summary buffer.
8429 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
8431         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
8432         When the region is active, but is empty (length 0), act as though
8433         the region was not active; that is, put a comment at the end of
8434         the line.  (Bug#21119)
8436 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
8438         Port tls.el to older Emacs
8439         * lisp/net/tls.el (tls-format-message):
8440         Alias to format-message, or format if not available.
8441         (open-tls-stream): Use it.
8443 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
8445         hideif.el: Recognize .h++ as C++ header
8446         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
8448         isearch: Document character folding mode
8449         * lisp/isearch.el (isearch-forward):
8450         Mention `isearch-toggle-character-fold' in doc string.
8452 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8454         Quoting fixes in ERC and Eshell
8455         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
8456         * lisp/erc/erc-backend.el (define-erc-response-handler):
8457         * lisp/erc/erc-fill.el (erc-fill-static-center):
8458         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
8459         * lisp/eshell/em-glob.el (eshell-glob-entries):
8460         * lisp/eshell/em-hist.el (eshell-save-some-history):
8461         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
8462         (eshell-shuffle-files):
8463         * lisp/eshell/esh-cmd.el (eshell-do-eval):
8464         * lisp/eshell/esh-proc.el (eshell-process-interact)
8465         (eshell-query-kill-processes):
8466         Respect ‘text-quoting-style’ in diagnostics and doc strings.
8468         Quoting fixes in Gnus
8469         * lisp/gnus/gnus-agent.el:
8470         (gnus-agent-possibly-synchronize-flags-server):
8471         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
8472         * lisp/gnus/gnus-eform.el (gnus-edit-form):
8473         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
8474         (gnus-group-nnimap-edit-acl):
8475         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
8476         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
8477         * lisp/gnus/message.el (message-strip-subject-encoded-words)
8478         (message-check-recipients, message-send-form-letter):
8479         * lisp/gnus/mm-decode.el (mm-display-part):
8480         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
8481         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8482         (mml-smime-get-ldap-cert):
8483         * lisp/gnus/spam-report.el (spam-report-process-queue):
8484         Respect ‘text-quoting-style’ in diagnostics.
8485         * lisp/gnus/gnus-art.el (article-display-face)
8486         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
8487         Use straight quoting in email.
8488         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
8489         Escape apostrophes in doc strings.
8491         Quoting fixes in lisp mail, mh-e, net, url
8492         * lisp/mail/emacsbug.el (report-emacs-bug)
8493         (report-emacs-bug-hook): Use straight quotes in outgoing email,
8494         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
8495         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
8496         * lisp/mail/rmailout.el (rmail-output-read-file-name):
8497         * lisp/net/imap.el (imap-interactive-login):
8498         * lisp/net/tls.el (open-tls-stream):
8499         * lisp/url/url-auth.el (url-register-auth-scheme):
8500         Respect ‘text-quoting-style’ in diagnostics.
8501         * lisp/mh-e/mh-e.el (mh-sortm-args):
8502         Quote docstring example using text quotes, not as a Lisp quote.
8504 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
8506         Fix some byte-compiler warnings in EDE
8507         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
8508         existing autoloader list, rather than add to it.
8509         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
8510         argument to eieio class constructor.
8511         (ede-show-supported-projects): New.
8512         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
8513         with (oref ... name).
8514         (ede-auto-load-project): Use slot name, not initarg key.
8515         * lisp/cedet/ede/generic.el (ede-generic-load)
8516         (ede-generic-find-matching-target): Use slot name, not initarg key.
8517         (ede-find-target): Use oref-default on class name.
8518         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
8519         class constructor.
8520         (ede-enable-generic-projects): Make project type names unique.
8522 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
8524         Fix directory accessibility tests for w32 network volumes
8525         * src/w32.c (faccessat): Don't fail with network volumes without a
8526         share.
8527         (w32_accessible_directory_p): Handle network volumes without a
8528         share.
8530         Fix handling long file names in readdir on MS-Windows
8531         * src/w32.c (sys_readdir): Append "\*" to the directory after
8532         converting it to UTF-16/ANSI, not before, to avoid overflowing the
8533         260-character limit on file names in filename_to_utf16/ansi.
8535         Make file-accessible-directory-p reliable on MS-Windows
8536         * src/w32.c (w32_accessible_directory_p): New function.
8537         * src/w32.h (w32_accessible_directory_p): Add prototype.
8538         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
8539         w32_accessible_directory_p to test a directory for accessibility
8540         by the current user.  (Bug#21346)
8541         (Ffile_accessible_directory_p): Remove the w32 specific caveat
8542         from the doc string.
8544 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
8546         Don't call do_pending_window_change in signal handlers (Bug#21380)
8547         * src/gtkutil.c (xg_frame_resized):
8548         * src/xterm.c (x_set_window_size):
8549         * src/w32term.c (x_set_window_size): Don't call
8550         do_pending_window_change.
8552 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8554         Quoting fixes in lisp/org
8555         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
8556         (org-tags-view):
8557         * lisp/org/org-capture.el (org-capture-mode)
8558         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8559         (org-ctags-ask-append-topic):
8560         * lisp/org/org.el (org-time-string-to-time)
8561         (org-time-string-to-absolute):
8562         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8563         (org-ctags-ask-append-topic):
8564         * lisp/org/org.el (org-time-string-to-time)
8565         (org-time-string-to-absolute):
8566         Respect ‘text-quoting-style’ in diagnostics.
8567         * lisp/org/org-agenda.el (org-agenda-custom-commands)
8568         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
8569         * lisp/org/org-capture.el (org-capture-fill-template):
8570         Avoid contraction in output file that might be ASCII.
8571         * lisp/org/org-compat.el (format-message):
8572         Define if not already defined, for backward compatibility.
8573         * lisp/org/org-src.el (org-edit-src-save):
8574         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
8575         Escape apostrophes in diagnostics.
8577         Treat “instead” strings as docstrings
8578         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
8579         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8580         Substitute quotes in instead strings.
8582 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
8584         Better documentation of seq-let
8585         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
8586         documentation of seq-let.
8588 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8590         * lisp/international/ccl.el: Fix quoting.
8592         Quoting fixes in lisp/international and lisp/leim
8593         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
8594         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
8595         * lisp/international/mule-cmds.el:
8596         (select-safe-coding-system-interactively, leim-list-file-name):
8597         * lisp/international/quail.el (quail-use-package, quail-help):
8598         * lisp/international/titdic-cnv.el (tit-process-header)
8599         (miscdic-convert):
8600         Respect text quoting style in doc strings and diagnostics.
8601         * lisp/international/quail.el (lisp/international/quail.el):
8602         * lisp/leim/quail/ethiopic.el ("ethiopic"):
8603         Escape apostrophes in doc strings.
8605         Make ‘text-quoting-style’ a plain defvar
8606         It doesn’t need customization, as it’s likely useful only by experts.
8607         Suggested by Stefan Monnier in:
8608         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
8609         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
8611         Quoting fixes in lisp/textmodes
8612         * lisp/textmodes/bibtex.el (bibtex-validate)
8613         (bibtex-validate-globally, bibtex-search-entries):
8614         * lisp/textmodes/ispell.el (ispell-command-loop):
8615         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
8616         * lisp/textmodes/texinfmt.el (texinfmt-version)
8617         (texinfo-format-region, texinfo-format-buffer-1):
8618         * lisp/textmodes/two-column.el (2C-split):
8619         Respect text quoting style in doc strings and diagnostics.
8620         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
8621         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
8622         Escape apostrophes in doc strings.
8624         Documentation fixes re quotes
8625         Prefer curved quotes in examples if users will typically see
8626         curved quotes when the examples run.
8627         Mention format-message when appropriate.
8628         Don’t use @code in examples.
8629         Quote an apostrophe with @kbd.
8631         Quoting fixes in lisp/progmodes
8632         * lisp/progmodes/cc-engine.el (c-bos-report-error):
8633         * lisp/progmodes/cpp.el (cpp-edit-reset):
8634         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
8635         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
8636         (etags-tags-apropos, list-tags, tags-apropos):
8637         * lisp/progmodes/executable.el (executable-set-magic):
8638         * lisp/progmodes/octave.el (octave-sync-function-file-names)
8639         (octave-help, octave-find-definition-default-filename)
8640         (octave-find-definition):
8641         Respect text quoting style in doc strings and diagnostics.
8642         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
8643         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
8644         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
8645         Escape apostrophes in doc strings.
8646         * lisp/progmodes/cmacexp.el (c-macro-expansion):
8647         Use straight quoting in ASCII comment.
8648         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
8649         (idlwave-pad-keyword):
8650         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
8651         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
8652         (vhdl-electric-semicolon, vhdl-electric-comma)
8653         (vhdl-electric-period, vhdl-electric-equal):
8654         Use directed quotes in diagnostics and doc strings.
8656 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
8658         Minor documentation and NEWS tweak
8659         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
8660         Add an index entry.
8661         * etc/NEWS: Fix a typo in character-fold-to-regexp.
8663 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
8665         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
8666         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
8667         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
8668         Adapt test.
8670 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
8672         Text quoting fixes in cedet, emulation, emacs-lisp
8673         * lisp/cedet/ede.el (ede-check-project-directory):
8674         * lisp/cedet/semantic/analyze/debug.el
8675         (semantic-analyzer-debug-insert-include-summary):
8676         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
8677         * lisp/cedet/semantic/decorate/include.el
8678         (semantic-decoration-unknown-include-describe)
8679         (semantic-decoration-all-include-summary):
8680         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
8681         * lisp/emulation/edt.el (edt-load-keys):
8682         * lisp/emulation/viper-cmd.el
8683         (viper-display-current-destructive-command)
8684         (viper-query-replace, viper-brac-function):
8685         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
8686         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
8687         Respect text quoting style in doc string or diagnostic.
8688         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8689         Use format-message to avoid overtranslating quotes.
8690         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
8691         Escape an apostrophe in a docstring.
8692         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
8694 2015-08-29  Daniel Colascione  <dancol@dancol.org>
8696         Fix which-func for curly quotes: look for symbol, not message
8697         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
8698         imenu-unavailable error symbol instead of trying to match message
8699         exactly.
8700         * lisp/imenu.el (imenu-unavailable): New error.
8701         (imenu-unavailable-error): New function.
8703 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
8705         Fix Python tests on MS-Windows
8706         * test/automated/python-tests.el
8707         (python-shell-calculate-command-1): Run python-shell-interpreter
8708         through shell-quote-argument before comparing with what
8709         python-shell-calculate-command returns.
8710         (python-shell-calculate-pythonpath-1)
8711         (python-shell-calculate-pythonpath-2)
8712         (python-shell-calculate-process-environment-2): Use path-separator
8713         instead of a literal ':'.
8714         (python-shell-calculate-exec-path-2)
8715         (python-shell-calculate-exec-path-3)
8716         (python-shell-calculate-exec-path-4)
8717         (python-shell-with-environment-1)
8718         (python-shell-with-environment-2): Run "/env/bin" through
8719         expand-file-name before comparing with exec-path.  (Bug#21375)
8721 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8723         Use Core Text types/functions/variables/enumerators directly
8724         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
8725         (CharacterCollection): Remove typedefs.  All uses replaced with
8726         definitions.
8727         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
8728         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
8729         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
8730         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
8731         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
8732         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
8733         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
8734         definitions.
8735         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
8736         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
8737         (MAC_FONT_FORMAT_BITMAP)
8738         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
8739         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
8740         All uses replaced with definitions.
8741         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
8742         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
8743         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
8744         Add compatibility enumerators for older versions.
8745         (mac_font_descriptor_create_with_attributes)
8746         (mac_font_descriptor_create_matching_font_descriptors)
8747         (mac_font_descriptor_create_matching_font_descriptor)
8748         (mac_font_descriptor_copy_attribute)
8749         (mac_font_descriptor_supports_languages)
8750         (mac_font_create_with_name, mac_font_get_size)
8751         (mac_font_copy_family_name, mac_font_copy_character_set)
8752         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
8753         (mac_font_get_descent, mac_font_get_leading)
8754         (mac_font_get_underline_position)
8755         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
8756         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
8757         replaced with definitions.
8758         (mac_font_create_preferred_family_for_attributes)
8759         (mac_font_get_advance_width_for_glyph)
8760         (mac_font_get_bounding_rect_for_glyph)
8761         (mac_font_create_available_families, mac_font_shape):
8762         Remove macros for renamed functions.
8763         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
8764         * src/macterm.m (mac_font_descriptor_supports_languages):
8765         Rename from mac_ctfont_descriptor_supports_languages.
8766         (mac_font_create_preferred_family_for_attributes): Rename from
8767         mac_ctfont_create_preferred_family_for_attributes.
8768         (mac_font_get_advance_width_for_glyph): Rename from
8769         mac_ctfont_get_advance_width_for_glyph.
8770         Use kCTFontOrientationDefault also for older versions.
8771         (mac_font_get_bounding_rect_for_glyph): Rename from
8772         mac_ctfont_get_bounding_rect_for_glyph.
8773         Use kCTFontOrientationDefault also for older versions.
8774         (mac_font_create_available_families): Rename from
8775         mac_ctfont_create_available_families.
8776         (mac_font_equal_in_postscript_name): Rename from
8777         mac_ctfont_equal_in_postscript_name.  All uses changed.
8778         (mac_font_create_line_with_string_and_font): Rename from
8779         mac_ctfont_create_line_with_string_and_font.  All uses changed.
8780         (mac_font_shape): Rename from mac_ctfont_shape.
8781         (mac_font_family_compare): Remove unused declaration.
8783 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
8785         Fix minor text quoting in calc, calendar, vc
8786         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
8787         * lisp/calc/calc-help.el (calc-j-prefix-help):
8788         * lisp/calc/calc-misc.el (calc-help):
8789         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
8790         Escape an apostrophe in a docstring.
8791         * lisp/calc/calc-forms.el (calc-hms-notation):
8792         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
8793         Escape an apostrophe in a diagnostic.
8794         * lisp/calc/calc-misc.el (calc-help):
8795         * lisp/calendar/diary-lib.el (diary-include-files):
8796         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
8797         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
8798         * lisp/vc/ediff-diff.el (ediff-same-contents):
8799         * lisp/vc/ediff-merg.el (ediff-re-merge):
8800         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
8801         * lisp/vc/ediff-util.el (ediff-test-save-region)
8802         (ediff-status-info):
8803         * lisp/vc/ediff.el (ediff-merge-revisions)
8804         (ediff-merge-revisions-with-ancestor):
8805         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
8806         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
8807         Respect text quoting style in doc string or diagnostic.
8808         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
8809         * lisp/vc/add-log.el (change-log-goto-source):
8810         Avoid double-formatting.
8811         * lisp/vc/ediff-init.el (format-message):
8812         New backward-compatibility alias.
8814 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
8816         Fix minor text quoting problems in lisp top level
8817         * lisp/apropos.el (apropos-describe-plist):
8818         * lisp/cus-theme.el (customize-themes):
8819         * lisp/dired.el (dired-log):
8820         * lisp/help-fns.el (describe-variable):
8821         * lisp/hexl.el (hexl-insert-multibyte-char):
8822         * lisp/info.el (Info-finder-find-node):
8823         * lisp/json.el (json-read-string):
8824         * lisp/novice.el (disabled-command-function)
8825         (disabled-command-function):
8826         * lisp/startup.el (normal-mouse-startup-screen):
8827         * lisp/woman.el (WoMan-log, WoMan-warn):
8828         Respect text quoting style in doc string or diagnostic.
8829         * lisp/replace.el (replace-character-fold):
8830         * src/syntax.c (Fmodify_syntax_entry):
8831         Escape an apostrophe in a docstring.
8832         * lisp/tempo.el (tempo-define-template):
8833         Remove confusing apostrophe from docstring.
8834         * lisp/whitespace.el (whitespace-mark-x):
8835         Use directed quotes in docstring.
8837 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
8839         Fix indentation rule in css-mode
8840         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
8841         brackets in presence of pseudo-selectors.  (Bug#21328)
8843 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
8845         Fix a bug in recording a macro while flyspell-mode is active
8846         * lisp/subr.el (sit-for): Don't call read-event when recording a
8847         macro.  (Bug#21329)
8849 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8851         Tweak startup screen quoting
8852         * lisp/startup.el (normal-splash-screen): Use standard
8853         "M-" abbrevation rather than a confusingly-different one.
8854         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
8856 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
8858         Add test case for ‘format’ bug and refactor
8859         * src/editfns.c (styled_format): Refactor internally, mostly by
8860         moving declarations closer to uses.  This should not affect behavior.
8861         * test/automated/textprop-tests.el (textprop-tests-format): New test.
8863         Fix ‘format’ bug with property offsets
8864         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
8865         bug in calculating string property offsets (Bug#21351).
8867         Use straight quotes in lib-src diagnostics
8868         These auxiliary programs can’t use Emacs’s text-quoting-style,
8869         and it’s too much trouble to redo that mechanism by hand.
8870         So just use straight quotes for now.
8871         * lib-src/ebrowse.c (main):
8872         * lib-src/emacsclient.c (decode_options, main):
8873         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
8874         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
8875         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
8876         (none_help, print_language_names, print_help, add_regex)
8877         (suggest_asking_for_help):
8878         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
8879         Use straight quotes in diagnostics.
8881         ‘text-quoting-style’ fixes for admin
8882         * admin/admin.el (cusver-scan, cusver-check):
8883         * admin/authors.el (authors-canonical-file-name):
8884         * admin/bzrmerge.el (bzrmerge-missing):
8885         Respect ‘text-quoting-style’ in diagnostics.
8887 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8889         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
8890         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
8891         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
8892         * doc/lispref/internals.texi (Writing Emacs Primitives):
8893         * etc/NEWS:
8894         Document the change.
8895         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
8896         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
8897         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
8898         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
8899         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
8900         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
8901         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
8902         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
8903         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
8904         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
8905         Remove.  All uses removed.  The code now assumes
8906         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
8907         * src/bytecode.c (relocate_byte_stack):
8908         Rename from unmark_byte_stack, since it now only relocates.
8909         All callers changed.
8910         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
8911         with GCPROs removed.
8912         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
8913         * test/automated/finalizer-tests.el (finalizer-basic)
8914         (finalizer-circular-reference, finalizer-cross-reference)
8915         (finalizer-error):
8916         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
8917         Remove tests, as they depend on gc-precise.
8919 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
8921         Improve seq-concatenate for new sequence types
8922         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
8923         ensure that concatenation happens on sequences only.  This makes it
8924         possible to use `seq-concatenate' for new types of seqs.
8925         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
8926         New function used in `seq-concatenate'.
8927         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
8928         for seq-into-sequence.
8930 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
8932         Add mode local overrides to xref-find-definitions
8933         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
8934         (xref-mode-local-overload): New; add mode local overrides to
8935         xref-find-definitions.
8936         * test/automated/elisp-mode-tests.el: Add mode local override tests.
8937         (xref-elisp-test-run): Handle indented defuns.
8938         (xref-elisp-generic-*): Improve doc strings.
8939         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
8940         (elisp--xref-find-definitions): Use it.
8942         Add mode local overrides to describe-function
8943         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8944         New; add mode local overrides to describe-function.
8945         * etc/NEWS: Document change.
8947 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8949         Prefer straight quoting in some etc text files
8950         These files are plain text and might be used by non-Emacs apps.
8951         They’re mostly ASCII, so just use straight quotes.
8953         Fix quoting in ‘message_with_string’
8954         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
8955         should work now.
8956         * src/xdisp.c (message_to_stderr): New function, refactored from
8957         part of ‘message3_nolog’.
8958         (message3_nolog): Use it.
8959         (message_with_string): Use it.  Don’t mishandle NUL bytes when
8960         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
8961         Use ‘format-message’, not ‘format’, so that quotes are translated.
8963 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
8965         Mention false positives of file-accessible-directory on w32
8966         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
8967         (Bug#21346)
8969 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8971         Treat error strings as help
8972         * src/print.c (print_error_message): Translate quotes and command
8973         keys in errmsg so that users see, e.g., "Symbol’s value as
8974         variable is void: foo" when text-quoting-style is curved.
8976 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
8978         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
8980 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8982         Top-level elisp files respect ‘text-quoting-style’
8983         In top-level elisp files, use format-message in diagnostic formats,
8984         so that they follow user preference as per ‘text-quoting-style’
8985         rather than being hard-coded to quote `like this'.
8986         * lisp/allout.el (allout-get-configvar-values):
8987         * lisp/apropos.el (apropos-symbols-internal):
8988         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
8989         (dired-do-create-files-regexp, dired-create-files-non-directory):
8990         * lisp/dired-x.el (dired-do-run-mail):
8991         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
8992         * lisp/disp-table.el (standard-display-european):
8993         * lisp/find-dired.el (find-dired):
8994         * lisp/forms.el (forms-mode):
8995         * lisp/ido.el (ido-buffer-internal):
8996         * lisp/info.el (Info-index-next):
8997         * lisp/outline.el (outline-invent-heading):
8998         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
8999         * lisp/proced.el (proced-log):
9000         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
9001         * lisp/recentf.el (recentf-open-files, recentf-save-list):
9002         * lisp/savehist.el (savehist-save):
9003         * lisp/server.el (server-ensure-safe-dir):
9004         * lisp/ses.el (ses-rename-cell):
9005         * lisp/simple.el (list-processes--refresh):
9006         * lisp/startup.el (command-line):
9007         * lisp/strokes.el (strokes-unset-last-stroke)
9008         (strokes-execute-stroke):
9009         Use format-message so that quotes are restyled.
9010         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
9011         Don’t quote ‘raised’.
9012         * lisp/descr-text.el (describe-char):
9013         * lisp/dirtrack.el (dirtrack-debug-message):
9014         * lisp/hexl.el (hexl-insert-multibyte-char):
9015         Apply substitute-command-keys to help string.
9016         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
9017         (wdired-do-perm-changes):
9018         Let dired-log do the formatting.
9020 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9022         Go back to grave quoting in Tramp
9023         * lisp/net/tramp-adb.el:
9024         * lisp/net/tramp-cache.el:
9025         * lisp/net/tramp-compat.el:
9026         * lisp/net/tramp-gvfs.el:
9027         * lisp/net/tramp-gw.el:
9028         * lisp/net/tramp-sh.el:
9029         * lisp/net/tramp-smb.el:
9030         * lisp/net/tramp.el:
9031         Stick with grave quoting in diagnostics strings.  This is more
9032         portable to older Emacs, desirable for Tramp.
9033         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
9034         for diagnostic that needs requoting.
9035         * lisp/net/tramp-compat.el (format-message):
9036         Fall back on simple ‘format’, since that’s good enough now.
9038         Go back to grave quoting in Gnus
9039         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9040         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9041         (gnus-agent-fetch-headers):
9042         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9043         * lisp/gnus/gnus-registry.el:
9044         (gnus-registry--split-fancy-with-parent-internal)
9045         (gnus-registry-post-process-groups):
9046         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9047         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9048         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9049         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9050         * lisp/gnus/spam.el (spam-check-blackholes):
9051         Stick with grave quoting in diagnostics strings.  This is more
9052         portable to older Emacs, desirable for Gnus.
9054         Fix customization of text-quoting-style
9055         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
9056         * lisp/wid-edit.el (widget-docstring):
9057         Get raw docstring here since it’s cooked later and should not be
9058         cooked twice.
9059         * lisp/cus-edit.el (custom-group-value-create):
9060         Cook the docstring before inserting it.
9061         * lisp/cus-start.el (text-quoting-style): Quote the customization
9062         docstrings according to the new rules.  Give curved examples.
9064         format-message now curves ` and '
9065         That way, the caller doesn’t have to use curved quotes to
9066         get diagnostics that match the text-quoting-style preferences.
9067         Suggested by Dmitry Gutov in:
9068         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
9069         This means we no longer need %qs, so remove that format.
9070         While we’re at it, fix an unlikely bug and lessen the pressure
9071         on the garbage collector by processing the string once rather
9072         than twice in the usual case.
9073         * doc/lispref/strings.texi (Formatting Strings):
9074         * etc/NEWS: Document this.
9075         * lisp/subr.el (format-message): Remove; now done in C.
9076         * src/callint.c (Fcall_interactively):
9077         * src/editfns.c (Fmessage, Fmessage_box):
9078         Use Fformat_message instead of Finternal__text_restyle
9079         followed by Fformat.
9080         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
9081         uLSQM and uRSQM.
9082         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
9083         when pure ASCII now suffices.  Fix unlikely bug when parsing
9084         unibyte string containing non-ASCII bytes.  Use inline code
9085         rather than memcpy, as it’s a tiny number of bytes.
9086         (Finternal__text_restyle): Remove; no longer used.
9087         (syms_of_doc): Don’t declare it.
9088         * src/editfns.c (Fformat): Rewrite in terms of new function
9089         ‘styled_format’.
9090         (Fformat_message): New function, moved here from subr.el.
9091         (styled_format): New function, with the old guts of Fformat,
9092         except it now optionally transliterates quotes, and it transliterates
9093         traditional grave accent and apostrophe quoting as well.
9094         Remove recently-added q flag; no longer needed or used.
9095         (syms_of_editfns): Define format-message.
9096         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
9097         Remove; no longer need to be global symbols.
9098         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
9099         so that callers can use `%s'.
9100         * src/image.c (image_size_error, xbm_load_image, xbm_load)
9101         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
9102         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
9103         (svg_load_image, gs_load, x_kill_gs_process):
9104         * src/lread.c (load_warn_old_style_backquotes):
9105         * src/xfaces.c (load_pixmap):
9106         * src/xselect.c (x_clipboard_manager_error_1):
9107         Use `%s' instead of %qs in formats.
9109 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
9111         Minor fixes in doc/emacs/search.texi
9112         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
9113         (Special Isearch): Use @w{} to generate several consecutive spaces
9114         with Texinfo 6.  (Bug#21345)
9116 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
9118         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
9119         (tramp-awk-coding-test): New defconsts.
9120         (tramp-remote-coding-commands): Use them.
9121         (tramp-find-inline-encoding): Check for Perl only if necessary.
9123 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
9125         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
9126         index entries for the special form `quote'.
9128 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9130         Spelling fixes
9132         Gnus format-message typo fix
9133         * lisp/gnus/gnus-util.el (gnus-format-message):
9134         Fix typo when running in older Emacs.
9136         Prefer directed to neutral quotes in docstings and diagnostics.
9137         In docstrings, escape apostrophes that would otherwise be translated
9138         to curved quotes using the newer, simpler rules.
9139         * admin/unidata/unidata-gen.el (unidata-gen-table):
9140         * lisp/align.el (align-region):
9141         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
9142         * lisp/bookmark.el (bookmark-default-annotation-text):
9143         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
9144         * lisp/calc/calc-lang.el (math-read-giac-subscr)
9145         (math-read-math-subscr):
9146         * lisp/calc/calc-misc.el (report-calc-bug):
9147         * lisp/calc/calc-prog.el (calc-fix-token-name)
9148         (calc-read-parse-table-part):
9149         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
9150         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9151         * lisp/dabbrev.el (dabbrev-expand):
9152         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9153         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
9154         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9155         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
9156         * lisp/erc/erc-button.el (erc-nick-popup):
9157         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
9158         * lisp/eshell/em-dirs.el (eshell/cd):
9159         * lisp/eshell/em-glob.el (eshell-glob-regexp):
9160         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
9161         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
9162         * lisp/eshell/esh-opt.el (eshell-show-usage):
9163         * lisp/files-x.el (modify-file-local-variable):
9164         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
9165         (filesets-update-pre010505):
9166         * lisp/find-cmd.el (find-generic, find-to-string):
9167         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9168         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9169         (gnus-agent-fetch-headers):
9170         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9171         * lisp/gnus/gnus-registry.el:
9172         (gnus-registry--split-fancy-with-parent-internal):
9173         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9174         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9175         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9176         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9177         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
9178         * lisp/gnus/spam.el (spam-check-blackholes):
9179         * lisp/mail/feedmail.el (feedmail-run-the-queue):
9180         * lisp/mpc.el (mpc-playlist-rename):
9181         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
9182         * lisp/net/mairix.el (mairix-widget-create-query):
9183         * lisp/net/tramp-cache.el:
9184         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
9185         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
9186         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
9187         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
9188         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
9189         (org-babel-goto-named-result):
9190         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
9191         * lisp/org/ob-ref.el (org-babel-ref-resolve):
9192         * lisp/org/org-agenda.el (org-agenda-prepare):
9193         * lisp/org/org-bibtex.el (org-bibtex-fields):
9194         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
9195         (org-clock-resolve):
9196         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
9197         * lisp/org/org-habit.el (org-habit-parse-todo):
9198         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
9199         (org-mouse-context-menu):
9200         * lisp/org/org-table.el (org-table-edit-formulas):
9201         * lisp/org/ox.el (org-export-async-start):
9202         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
9203         (dun-rooms, dun-endgame-questions):
9204         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
9205         * lisp/progmodes/ada-xref.el (ada-find-executable):
9206         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
9207         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
9208         (flymake-start-syntax-check-process):
9209         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
9210         * lisp/progmodes/sql.el (sql-comint):
9211         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
9212         * lisp/server.el (server-get-auth-key):
9213         * lisp/subr.el (version-to-list):
9214         * lisp/textmodes/reftex-ref.el (reftex-label):
9215         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
9216         * lisp/vc/ediff-diff.el (ediff-same-contents):
9217         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
9218         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
9219         Use directed rather than neutral quotes in diagnostics.
9221         Treat ' like ’ even when not matching `
9222         This is simpler and easier to explain, and should encourage better
9223         typography.  Do this in Electric Quote mode and when translating
9224         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
9225         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
9226         * doc/emacs/text.texi (Quotation Marks):
9227         * doc/lispref/help.texi (Keys in Documentation):
9228         * etc/NEWS:
9229         Document this.
9230         * lisp/electric.el (electric-quote-post-self-insert-function):
9231         * src/doc.c (Fsubstitute_command_keys):
9232         Always treat ' like ’ even when not matched by an open quote.
9234 2015-08-25  Glenn Morris  <rgm@gnu.org>
9236         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
9237         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
9239 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9241         * src/macfont.m (macfont_create_family_with_symbol):
9242         Accept localized names.
9244 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9246         Tramp diagnostics as per ‘text-quoting-style’
9247         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
9248         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
9249         (tramp-adb-handle-delete-directory)
9250         (tramp-adb-handle-delete-file)
9251         (tramp-adb-handle-file-local-copy)
9252         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
9253         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
9254         (tramp-adb-maybe-open-connection):
9255         * lisp/net/tramp-cache.el:
9256         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
9257         (tramp-compat-octal-to-decimal)
9258         (tramp-compat-coding-system-change-eol-conversion):
9259         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
9260         (tramp-gvfs-do-copy-or-rename-file)
9261         (tramp-gvfs-handle-delete-directory)
9262         (tramp-gvfs-handle-delete-file)
9263         (tramp-gvfs-handle-expand-file-name)
9264         (tramp-gvfs-handle-file-local-copy)
9265         (tramp-gvfs-handle-file-notify-add-watch)
9266         (tramp-gvfs-handle-make-directory)
9267         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
9268         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
9269         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
9270         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
9271         (tramp-sh-handle-set-visited-file-modtime)
9272         (tramp-sh-handle-set-file-modes)
9273         (tramp-sh-handle-file-name-all-completions)
9274         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
9275         (tramp-do-copy-or-rename-file-directly)
9276         (tramp-do-copy-or-rename-file-out-of-band)
9277         (tramp-sh-handle-make-directory)
9278         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
9279         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
9280         (tramp-sh-handle-start-file-process)
9281         (tramp-sh-handle-file-local-copy)
9282         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
9283         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
9284         (tramp-find-file-exists-command, tramp-open-shell)
9285         (tramp-find-shell)
9286         (tramp-open-connection-setup-interactive-shell)
9287         (tramp-find-inline-encoding, tramp-find-inline-compress)
9288         (tramp-compute-multi-hops, tramp-maybe-open-connection)
9289         (tramp-wait-for-output, tramp-send-command-and-check)
9290         (tramp-send-command-and-read, tramp-get-remote-path)
9291         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
9292         (tramp-get-ls-command-with-quoting-style)
9293         (tramp-get-test-command, tramp-get-remote-ln)
9294         (tramp-get-remote-perl, tramp-get-remote-stat)
9295         (tramp-get-remote-readlink, tramp-get-remote-trash)
9296         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
9297         (tramp-get-remote-inotifywait, tramp-get-remote-id)
9298         (tramp-get-remote-python):
9299         * lisp/net/tramp-smb.el (tramp-smb-errors)
9300         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
9301         (tramp-smb-handle-delete-directory)
9302         (tramp-smb-handle-delete-file)
9303         (tramp-smb-handle-file-local-copy)
9304         (tramp-smb-handle-make-directory)
9305         (tramp-smb-handle-make-directory-internal)
9306         (tramp-smb-handle-make-symbolic-link)
9307         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
9308         (tramp-smb-handle-set-file-modes)
9309         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
9310         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
9311         (tramp-process-actions):
9312         Generate diagnostics according to ‘text-quoting-style’, by
9313         using curved quotes in format strings and ‘format-message’
9314         when appropriate.
9315         * lisp/net/tramp-compat.el (format-message):
9316         Define a replacement, if it’s an older version of Emacs
9317         that doesn’t have it already.
9319         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
9321 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
9323         Fix documentation for `save-excursion'
9324         * doc/lispref/positions.texi (Excursions):
9325         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
9326         (Template for save-excursion, Point and mark): `save-excursion'
9327         does not save&restore the mark any more.
9329 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
9331         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
9332         New defconsts.
9333         (tramp-do-file-attributes-with-stat)
9334         (tramp-do-directory-files-and-attributes-with-stat): Use them.
9335         (tramp-convert-file-attributes): Remove double slashes in symlinks.
9336         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
9337         Handle symlinks with "//" in the file name.
9339         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
9341 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
9343         Fix cl-subseq and cl-concatenate
9344         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
9345         seq functions.
9346         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
9347         seq-concatenate.
9349 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
9351         Fix full-screen code when there is no window manager (Bug#21317)
9352         * src/xterm.h (x_wm_supports): Declare external.
9353         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
9354         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
9355         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
9356         `fullscreen' frame parameter.
9357         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
9358         without a window manager.
9360 2015-08-24  Glenn Morris  <rgm@gnu.org>
9362         * lisp/version.el (emacs-version): No longer include build host.
9363         * doc/lispref/intro.texi (Version Info): Update example.
9365 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9367         * doc/lispref/elisp.texi: Fix typo in previous change.
9369         More-conservative ‘format’ quote restyling
9370         Instead of restyling curved quotes for every call to ‘format’,
9371         create a new function ‘format-message’ that does the restyling,
9372         and using the new function instead of ‘format’ only in contexts
9373         where this seems appropriate.
9374         Problem reported by Dmitry Gutov and Andreas Schwab in:
9375         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
9376         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
9377         * doc/lispref/commands.texi (Using Interactive):
9378         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
9379         * doc/lispref/display.texi (Displaying Messages, Progress):
9380         * doc/lispref/elisp.texi:
9381         * doc/lispref/help.texi (Keys in Documentation):
9382         * doc/lispref/minibuf.texi (Minibuffer Misc):
9383         * doc/lispref/strings.texi (Formatting Strings):
9384         * etc/NEWS:
9385         Document the changes.
9386         * lisp/abbrev.el (expand-region-abbrevs):
9387         * lisp/apropos.el (apropos-library):
9388         * lisp/calc/calc-ext.el (calc-record-message)
9389         (calc-user-function-list):
9390         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
9391         * lisp/calc/calc-lang.el (math-read-big-balance):
9392         * lisp/calc/calc-store.el (calc-edit-variable):
9393         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9394         * lisp/calc/calc-yank.el (calc-edit-mode):
9395         * lisp/calendar/icalendar.el (icalendar-export-region)
9396         (icalendar--add-diary-entry):
9397         * lisp/cedet/mode-local.el (mode-local-print-binding)
9398         (mode-local-describe-bindings-2):
9399         * lisp/cedet/semantic/complete.el (semantic-completion-message):
9400         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
9401         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
9402         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
9403         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9404         * lisp/dframe.el (dframe-message):
9405         * lisp/dired-aux.el (dired-query):
9406         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
9407         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
9408         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
9409         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9410         (cconv-analyze-form):
9411         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
9412         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9413         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
9414         * lisp/emacs-lisp/edebug.el (edebug-format):
9415         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
9416         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
9417         (eldoc-message):
9418         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
9419         * lisp/emacs-lisp/find-func.el (find-function-library):
9420         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
9421         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
9422         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
9423         * lisp/emacs-lisp/package.el (package-compute-transaction)
9424         (package-install-button-action, package-delete-button-action)
9425         (package-menu--list-to-prompt):
9426         * lisp/emacs-lisp/timer.el (timer-event-handler):
9427         * lisp/emacs-lisp/warnings.el (lwarn, warn):
9428         * lisp/emulation/viper-cmd.el:
9429         (viper-toggle-parse-sexp-ignore-comments)
9430         (viper-kill-buffer, viper-brac-function):
9431         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
9432         * lisp/facemenu.el (facemenu-add-new-face):
9433         * lisp/faces.el (face-documentation, read-face-name)
9434         (face-read-string, read-face-font, describe-face):
9435         * lisp/files.el (find-alternate-file, hack-local-variables)
9436         (hack-one-local-variable--obsolete, write-file)
9437         (basic-save-buffer, delete-directory):
9438         * lisp/format.el (format-write-file, format-find-file)
9439         (format-insert-file):
9440         * lisp/help-fns.el (help-fns--key-bindings)
9441         (help-fns--compiler-macro, help-fns--obsolete)
9442         (help-fns--interactive-only, describe-function-1)
9443         (describe-variable):
9444         * lisp/help.el (describe-mode):
9445         * lisp/info-xref.el (info-xref-output):
9446         * lisp/info.el (Info-virtual-index-find-node)
9447         (Info-virtual-index, info-apropos):
9448         * lisp/international/kkc.el (kkc-error):
9449         * lisp/international/mule-cmds.el:
9450         (select-safe-coding-system-interactively)
9451         (select-safe-coding-system, describe-input-method):
9452         * lisp/international/mule-conf.el (code-offset):
9453         * lisp/international/mule-diag.el (describe-character-set)
9454         (list-input-methods-1):
9455         * lisp/international/quail.el (quail-error):
9456         * lisp/minibuffer.el (minibuffer-message):
9457         * lisp/mpc.el (mpc--debug):
9458         * lisp/msb.el (msb--choose-menu):
9459         * lisp/net/ange-ftp.el (ange-ftp-message):
9460         * lisp/net/gnutls.el (gnutls-message-maybe):
9461         * lisp/net/newst-backend.el (newsticker--sentinel-work):
9462         * lisp/net/newst-treeview.el (newsticker--treeview-load):
9463         * lisp/net/nsm.el (nsm-query-user):
9464         * lisp/net/rlogin.el (rlogin):
9465         * lisp/net/soap-client.el (soap-warning):
9466         * lisp/net/tramp.el (tramp-debug-message):
9467         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
9468         * lisp/nxml/nxml-parse.el (nxml-parse-error):
9469         * lisp/nxml/rng-cmpct.el (rng-c-error):
9470         * lisp/nxml/rng-match.el (rng-compile-error):
9471         * lisp/nxml/rng-uri.el (rng-uri-error):
9472         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
9473         * lisp/org/org-ctags.el:
9474         (org-ctags-ask-rebuild-tags-file-then-find-tag):
9475         * lisp/proced.el (proced-log):
9476         * lisp/progmodes/ebnf2ps.el (ebnf-log):
9477         * lisp/progmodes/flymake.el (flymake-log):
9478         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
9479         * lisp/replace.el (occur-1):
9480         * lisp/simple.el (execute-extended-command)
9481         (undo-outer-limit-truncate, define-alternatives):
9482         * lisp/startup.el (command-line):
9483         * lisp/subr.el (error, user-error, add-to-list):
9484         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
9485         (tutorial--find-changed-keys):
9486         * src/callint.c (Fcall_interactively):
9487         * src/editfns.c (Fmessage, Fmessage_box):
9488         Restyle the quotes of format strings intended for use as a
9489         diagnostic, when restyling seems appropriate.
9490         * lisp/subr.el (format-message): New function.
9491         * src/doc.c (Finternal__text_restyle): New function.
9492         (syms_of_doc): Define it.
9494 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9496         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
9498 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9500         python.el: Fix python-shell-buffer-substring on indented code
9501         (Bug#21086)
9502         * lisp/progmodes/python.el (python-shell-buffer-substring):
9503         Respect current line indentation when calculating string.
9504         * test/automated/python-tests.el
9505         (python-shell-buffer-substring-10)
9506         (python-shell-buffer-substring-11)
9507         (python-shell-buffer-substring-12): New tests.
9509 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9511         Fix minor glitches from ‘format’ reversion
9512         * doc/lispref/strings.texi (Formatting Strings):
9513         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
9514         Documentation’, not below.
9515         * src/syntax.c (Finternal_describe_syntax_value):
9516         Prefer AUTO_STRING to build_string where either will do, as
9517         AUTO_STRING is a bit faster.
9519 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9521         python.el: Defer shell setup code until first interactive prompt
9522         * lisp/progmodes/python.el
9523         (python-shell-comint-watch-for-first-prompt-output-filter):
9524         New function.
9525         (inferior-python-mode): Use it.
9526         (python-shell-first-prompt-hook): New hook.
9527         (python-shell-send-setup-code)
9528         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
9529         this hook instead of inferior-python-hook.
9531 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9533         Remove the calls to `seq-into` from `seq-concatenate`
9534         Since most new types of seq would have to be defined as sequences (cons
9535         cells or CL structs, mostly), there is no need to convert the seqs to
9536         sequences (which can be a fairly expensive operation).
9537         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
9538         sequences.
9540 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9542         python.el: Fix completion for pdb interactions
9543         * lisp/progmodes/python.el (python-shell-completion-setup-code):
9544         Simplify.  Toggle print_mode for native wrapped completer.
9545         (python-shell-completion-native-setup): Ensure process buffer.
9546         Add print_mode attribute to completer wrapper to toggle returning
9547         or printing candidates.
9548         (python-shell-completion-native-get-completions): Cleanup.
9549         (python-shell-completion-get-completions): Cleanup.
9550         (python-shell-completion-at-point): Perform prompt checks.
9551         Force fallback completion in pdb interactions.
9553 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9555         Make seq.el more extensible by using cl-defmethod
9556         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
9557         make it easier to extend seq.el with new "seq types".
9558         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
9559         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
9560         subseq in cl-extra.el, and use it in seq.el.
9562 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9564         python.el: Fix prompt detection with user overridden interpreter
9565         * lisp/progmodes/python.el (python-shell-prompt-detect):
9566         Honor buffer local python-shell-interpreter and
9567         python-shell-interpreter-interactive-arg.
9569 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
9571         Support exec-directory with non-ASCII characters on Windows
9572         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
9573         in the system's ANSI codepage, when it is used for invoking
9574         cmdproxy.
9576 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
9578         Revert "Extend ‘format’ to translate curved quotes"
9579         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
9581         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
9582         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
9584 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9586         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
9587         Clarify "invisible window".
9589 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9591         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
9592         magic-fallback-mode-alist.
9594 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9596         python.el: fallback completion, ffap and eldoc setup enhancements
9597         Setup codes are now sent continuously so that the current frame is
9598         always taken into account.  This allows working within debuggers
9599         and always keeping a fresh version of setup codes that will return
9600         proper results.
9601         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
9602         (python-shell-send-setup-code): Send code only when
9603         python-shell-setup-codes is non-nil.
9604         (python-shell-completion-string-code): Cleanup trailing newline.
9605         (python-shell-completion-get-completions): Always use
9606         python-shell-completion-setup-code.
9607         (python-ffap-setup-code): Work with any object, not only modules.
9608         (python-ffap-string-code): Cleanup trailing newline.
9609         (python-ffap-module-path): Always use python-ffap-setup-code.
9610         (python-eldoc-string-code): Cleanup trailing newline.
9611         (python-eldoc--get-doc-at-point): Always use
9612         python-eldoc-setup-code.  Return non-nil only if docstring is
9613         found.
9615         python.el: Increase native completion robustness
9616         * lisp/progmodes/python.el (python-shell-completion-native-setup):
9617         Make completer print real candidates and just return dummy ones to
9618         avoid input modification.
9619         (python-shell-completion-native-get-completions): Set
9620         comint-redirect-insert-matching-regexp to non-nil and make
9621         comint-redirect-finished-regexp match the last dummy candidate.
9622         Use python-shell-accept-process-output to wait for the full list
9623         of candidates.
9625 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9627         Fix invocation of programs via cmdproxy.exe
9628         * src/w32proc.c (sys_spawnve): Use exec-directory, not
9629         invocation-directory, for finding cmdproxy.exe.  When Emacs is
9630         run from the source tree, look for cmdproxy.exe in the same source
9631         tree.  (Bug#21323)
9633 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
9635         Handle comments inside unquoted URIs in css-mode
9636         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
9637         (css-syntax-propertize-function): New defconst.
9638         (css--font-lock-keywords): Handle parens around unquoted URIs.
9639         (css-mode): Set `syntax-propertize-function'.
9641 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9643         Support invocation of Hunspell with multiple dictionaries
9644         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
9645         Support lists of dictionaries of the form "DICT1,DICT2,...".
9646         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
9648         Minor formatting changes in ispell.el
9649         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
9650         (ispell-print-if-debug, ispell-aspell-find-dictionary)
9651         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
9652         (ispell-hunspell-dictionary-alist)
9653         (ispell-hunspell-fill-dictionary-entry)
9654         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
9655         (ispell-buffer-with-debug, ispell-complete-word)
9656         (ispell-current-dictionary, ispell-current-personal-dictionary)
9657         (ispell-accept-output, ispell-minor-mode)
9658         (ispell-personal-dictionary, ispell-dictionary-alist)
9659         (ispell-really-aspell, ispell-really-hunspell)
9660         (ispell-encoding8-command, ispell-aspell-supports-utf8)
9661         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
9662         Fix whitespace, inconsistent capitalization, and arguments in doc
9663         strings.
9665 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
9667         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
9668         function refused to resize a size-preserved window.
9670 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9672         * doc/lispref/windows.texi (Selecting Windows): Improve
9673         documentation and indexing of 'window-use-time'.
9675 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9677         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
9678         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
9679         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
9680         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
9681         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
9682         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
9683         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
9684         Fix up commenting style.
9686 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9688         text-quoting-style in emacs-lisp diagnostics
9689         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
9690         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
9691         (ad-disable-advice, ad-remove-advice, ad-set-argument)
9692         (ad-set-arguments):
9693         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
9694         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
9695         (byte-optimize-while, byte-optimize-apply):
9696         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
9697         (byte-compile-log-file, byte-compile-format-warn)
9698         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
9699         (byte-compile-cl-warn)
9700         (byte-compile-warn-about-unresolved-functions)
9701         (byte-compile-file, byte-compile-fix-header)
9702         (byte-compile--declare-var, byte-compile-file-form-defmumble)
9703         (byte-compile-form, byte-compile-normal-call)
9704         (byte-compile-variable-ref, byte-compile-variable-set)
9705         (byte-compile-subr-wrong-args, byte-compile-setq-default)
9706         (byte-compile-negation-optimizer)
9707         (byte-compile-condition-case--old)
9708         (byte-compile-condition-case--new, byte-compile-save-excursion)
9709         (byte-compile-defvar, byte-compile-autoload)
9710         (byte-compile-lambda-form)
9711         (byte-compile-make-variable-buffer-local, display-call-tree)
9712         (batch-byte-compile):
9713         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9714         (cconv-analyze-form):
9715         * lisp/emacs-lisp/chart.el (chart-space-usage):
9716         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
9717         (check-declare-warn, check-declare-file)
9718         (check-declare-directory):
9719         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
9720         (checkdoc-message-text-engine):
9721         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
9722         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
9723         (cl-symbol-macrolet):
9724         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
9725         * lisp/emacs-lisp/copyright.el (copyright)
9726         (copyright-update-directory):
9727         * lisp/emacs-lisp/edebug.el (edebug-read-list):
9728         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
9729         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
9730         (eieio-oref, eieio-oset-default):
9731         * lisp/emacs-lisp/eieio-speedbar.el:
9732         (eieio-speedbar-child-make-tag-lines)
9733         (eieio-speedbar-child-description):
9734         * lisp/emacs-lisp/eieio.el (defclass, change-class):
9735         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
9736         (elint-init-form, elint-check-defalias-form)
9737         (elint-check-let-form):
9738         * lisp/emacs-lisp/ert.el (ert-get-test):
9739         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
9740         (find-function-library):
9741         * lisp/emacs-lisp/generator.el (iter-yield):
9742         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
9743         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9744         * lisp/emacs-lisp/package-x.el (package-upload-file):
9745         * lisp/emacs-lisp/package.el (package-version-join)
9746         (package-disabled-p, package-activate-1, package-activate)
9747         (package--download-one-archive)
9748         (package--download-and-read-archives)
9749         (package-compute-transaction, package-install-from-archive)
9750         (package-install, package-install-selected-packages)
9751         (package-delete, package-autoremove)
9752         (package-install-button-action, package-delete-button-action)
9753         (package-menu-hide-package, package-menu--list-to-prompt)
9754         (package-menu--perform-transaction)
9755         (package-menu--find-and-notify-upgrades):
9756         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
9757         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
9758         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
9759         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
9760         * lisp/emacs-lisp/smie.el (smie-config-save):
9761         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
9762         * lisp/emacs-lisp/testcover.el (testcover-1value):
9763         Use curved quotes in diagnostic format strings.
9765 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9767         python.el: Ensure remote process-environment on non-interactive processes
9768         * lisp/progmodes/python.el
9769         (python-shell-tramp-refresh-process-environment): New function.
9770         (python-shell-with-environment): Use it.
9771         * test/automated/python-tests.el (python-shell-with-environment-2):
9772         Update.
9774         python.el: Enhancements to process environment setup.
9775         * lisp/progmodes/python.el (python-shell-process-environment)
9776         (python-shell-extra-pythonpaths, python-shell-exec-path)
9777         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
9778         (python-shell-setup-codes): Remove :safe.
9779         (python-shell-remote-exec-path): New defcustom.
9780         (python-shell--add-to-path-with-priority): New macro.
9781         (python-shell-calculate-pythonpath): Give priority to
9782         python-shell-extra-pythonpaths.  Update docstring.
9783         (python-shell-calculate-process-environment): Give priority to
9784         python-shell-process-environment.  Update docstring.
9785         (python-shell-calculate-exec-path): Give priority to
9786         python-shell-exec-path and calculated virtualenv bin directory.
9787         Update docstring.
9788         (python-shell-tramp-refresh-remote-path): New function.
9789         (python-shell-with-environment): Use it when working remotely and
9790         do not modify tramp-remote-path.  Allow nesting.
9791         (python-shell-calculate-command): Remove useless
9792         python-shell-with-environment call.
9793         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
9794         (python-shell-calculate-pythonpath-2)
9795         (python-shell-calculate-process-environment-6)
9796         (python-shell-calculate-process-environment-7)
9797         (python-shell-calculate-process-environment-8)
9798         (python-shell-calculate-exec-path-3)
9799         (python-shell-calculate-exec-path-4)
9800         (python-shell-calculate-exec-path-5)
9801         (python-shell-calculate-exec-path-6)
9802         (python-shell-with-environment-3): New tests.
9803         (python-shell-calculate-process-environment-2)
9804         (python-shell-calculate-process-environment-3)
9805         (python-shell-calculate-process-environment-4)
9806         (python-shell-calculate-process-environment-5)
9807         (python-shell-calculate-exec-path-1)
9808         (python-shell-calculate-exec-path-2)
9809         (python-shell-with-environment-1)
9810         (python-shell-with-environment-2): Update and simplify.
9812 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9814         Avoid hard-coding "M-x command" in docstrings
9815         * lisp/calendar/todo-mode.el (todo-mode):
9816         * lisp/desktop.el (desktop-save-mode):
9817         * lisp/edmacro.el (edit-kbd-macro):
9818         * lisp/emacs-lisp/package.el (package-menu-execute):
9819         * lisp/emulation/viper-cmd.el (viper-ask-level):
9820         * lisp/emulation/viper-init.el (viper-expert-level):
9821         * lisp/filesets.el (filesets-add-buffer):
9822         * lisp/follow.el (follow-mode):
9823         * lisp/gnus/auth-source.el (auth-sources):
9824         * lisp/international/ogonek.el (ogonek-informacja)
9825         (ogonek-information):
9826         * lisp/net/tramp.el (tramp-process-actions):
9827         * lisp/org/org-gnus.el (org-gnus-no-new-news):
9828         * lisp/org/org.el (org-ellipsis):
9829         * lisp/progmodes/python.el (python-shell-get-process-or-error):
9830         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
9831         * lisp/server.el (server-start):
9832         * lisp/type-break.el (type-break-noninteractive-query):
9833         * lisp/userlock.el (ask-user-about-supersession-help):
9834         * lisp/whitespace.el (whitespace-report-region):
9835         Prefer (substitute-command-keys "`\\[foo-command]'")
9836         to "`M-x foo-command'" in docstrings and the like.
9838 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
9840         Use add-function for prettify-symbols-compose-predicate
9841         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
9842         prettify-symbols-compose-predicate in terms of add-function.
9843         * etc/NEWS: Mention prettify-symbols-compose-predicate and
9844         prettify-symbols-mode support in tex-mode.
9846 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9848         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
9849         (smie-indent-exps, smie-indent-keyword): Use it.
9850         * test/indent/css-mode.css: Test alignment with leading comment.
9852 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9854         Respect text-quoting-style in (*Finder*) menus
9855         * lisp/info.el (info--prettify-description):
9856         Treat description as a docstring, so that it's requoted as
9857         per text-quoting-style.
9859 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9861         Document `window-use-time' in Elisp manual
9862         * doc/lispref/windows.texi (Selecting Windows): Document
9863         `window-use-time'.
9865 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9867         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
9868         This is a cleaner fix for Bug#21260 than the previous change.
9870 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9872         Respect text-quoting-style in calc
9873         In calc, tespect text-quoting-style preference in diagnostic
9874         formats and fix a few similar problems in docstrings.
9875         * lisp/calc/calc-aent.el (math-read-factor):
9876         * lisp/calc/calc-embed.el (calc-do-embedded):
9877         * lisp/calc/calc-ext.el (calc-user-function-list)
9878         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
9879         * lisp/calc/calc-help.el (calc-describe-key)
9880         (calc-describe-thing):
9881         * lisp/calc/calc-lang.el (calc-c-language)
9882         (math-parse-fortran-vector-end, math-parse-tex-sum)
9883         (math-parse-eqn-matrix, math-parse-eqn-prime)
9884         (calc-yacas-language, calc-maxima-language, calc-giac-language)
9885         (math-read-big-rec, math-read-big-balance):
9886         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
9887         (calc-auto-recompute):
9888         * lisp/calc/calc-prog.el (calc-user-define-invocation)
9889         (math-do-arg-check):
9890         * lisp/calc/calc-store.el (calc-edit-variable):
9891         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9892         * lisp/calc/calc-vec.el (math-read-brackets):
9893         * lisp/calc/calc-yank.el (calc-edit-mode):
9894         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
9895         Use curved quotes in diagnostic format strings.
9896         * lisp/calc/calc-help.el (calc-describe-thing):
9897         Format docstrings with substitute-command-keys.
9898         * lisp/calc/calc-help.el (calc-j-prefix-help):
9899         * lisp/calc/calc-misc.el (calc-help):
9900         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
9901         Escape a docstring "`".
9903 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9905         Fix documentation of 'menu-set-font' and 'set-frame-font'
9906         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
9907         * doc/lispref/frames.texi (Frame Font): Document that
9908         set-frame-font with the last argument 't' will also make the font
9909         the default for the future GUI frames.
9911         Document '--create-frame' option to emacsclient
9912         * doc/emacs/misc.texi (emacsclient Options): Document the
9913         '--create-frame' option.  (Bug#21308)
9915 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9917         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
9919 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9921         Document 'get-mru-window' in the ELisp manual
9922         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
9923         'get-mru-window'.  (Bug#21306)
9925         Clarify documentation of 'get-buffer-window-list'
9926         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
9927         current window, if relevant, will be the first in the list
9928         returned by 'get-buffer-window-list'.
9929         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
9931 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
9933         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
9934         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
9935         `switch-to-buffer'.
9937 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
9939         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
9940         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
9941         `display-buffer' instead of `switch-to-buffer'.
9943 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9945         Follow user preference in calendar diagnostics
9946         Respect text-quoting-style preference in diagnostic formats by
9947         using curved quotes (which are translated as per text-quoting-style)
9948         instead of grave accent and apostrophe (which are not).
9949         * lisp/calendar/appt.el (appt-display-message):
9950         * lisp/calendar/diary-lib.el (diary-check-diary-file)
9951         (diary-mail-entries, diary-from-outlook):
9952         * lisp/calendar/icalendar.el (icalendar-export-region)
9953         (icalendar--convert-float-to-ical)
9954         (icalendar--convert-date-to-ical)
9955         (icalendar--convert-ical-to-diary)
9956         (icalendar--convert-recurring-to-diary)
9957         (icalendar--add-diary-entry):
9958         * lisp/calendar/time-date.el (format-seconds):
9959         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
9960         (timeclock-make-hours-explicit):
9961         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
9962         (todo-item-mark, todo-check-format)
9963         (todo-insert-item--next-param, todo-edit-item--next-key)
9964         (todo-mode):
9965         Use curved quotes in diagnostic format strings.
9966         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
9967         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
9968         Just use straight quoting for simple test case.
9970 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
9972         * src/gfilenotify.c (Fgfile_add_watch):
9973         Handle errors from g_file_monitor.
9975 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9977         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
9978         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
9979         frame" instead of "non-minibuffer frame".
9981         Fix frame geometry related text
9982         * doc/lispref/frames.texi (Frame Layout):
9983         Rename `x-frame-geometry' to `frame-geometry'.
9984         * doc/lispref/frames.texi (Mouse Position):
9985         * doc/lispref/windows.texi (Coordinates and Windows):
9986         Use `set-mouse-absolute-pixel-position' instead of
9987         `x-set-mouse-absolute-pixel-position'.
9989         Sanitize frame geometry related functions
9990         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
9991         (Fx_frame_edges): Rename to Fns_frame_edges.
9992         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
9993         (Fx_frame_edges): Rename to Fw32_frame_edges.
9994         (Fx_mouse_absolute_pixel_position): Rename to
9995         Fw32_mouse_absolute_pixel_position.
9996         (Fx_set_mouse_absolute_pixel_position): Rename to
9997         Fw32_set_mouse_absolute_pixel_position.
9998         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
9999         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
10000         (ns-frame-edges, w32-mouse-absolute-pixel-position)
10001         (x-mouse-absolute-pixel-position)
10002         (w32-set-mouse-absolute-pixel-position)
10003         (x-set-mouse-absolute-pixel-position): Declare.
10004         (frame-geometry, mouse-absolute-pixel-position)
10005         (set-mouse-absolute-pixel-position): New functions.
10006         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
10008 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
10010         Fix MinGW64 build broken by latest w32uniscribe.c changes
10011         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
10012         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
10013         (Bug#21260)
10015 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
10017         Add TeX defaults for prettify-symbol-mode
10018         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
10019         Rename from tex-prettify-symbols-alist.
10020         (tex--prettify-symbols-compose-p): New function.
10021         (tex-common-initialization): Use them as prettify-symbols-alist
10022         and prettify-symbols-compose-predicate.
10024         Generalize prettify-symbols to arbitrary modes
10025         * lisp/progmodes/prog-mode.el
10026         (prettify-symbols-default-compose-p): New function.
10027         (prettify-symbols-compose-predicate): New variable.
10028         (prettify-symbols--compose-symbol): Use it.
10030 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
10032         Don't quote symbols 'like-this' in docstrings etc.
10033         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
10034         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
10035         * lisp/allout.el (allout-add-resumptions, allout-mode):
10036         * lisp/calculator.el (calculator-operators):
10037         * lisp/cedet/data-debug.el (dd-propertize):
10038         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
10039         * lisp/cedet/semantic/analyze/debug.el:
10040         (semantic-analyzer-debug-global-miss-text):
10041         * lisp/cedet/semantic/lex-spp.el:
10042         (semantic-lex-spp-replace-or-symbol-or-keyword):
10043         * lisp/cedet/semantic/symref.el:
10044         (semantic-symref-cleanup-recent-buffers-fcn):
10045         * lisp/cedet/semantic/tag.el (semantic-tag-class):
10046         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
10047         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
10048         * lisp/gnus/pop3.el (pop3-authentication-scheme):
10049         * lisp/help-fns.el (describe-function-orig-buffer):
10050         * lisp/imenu.el (imenu--history-list):
10051         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
10052         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
10053         (feedmail-queue-default-file-slug)
10054         (feedmail-queue-buffer-file-name):
10055         * lisp/net/mairix.el (mairix-searches-mode-map):
10056         * lisp/net/newst-backend.el (newsticker-retrieval-method)
10057         (newsticker-auto-mark-filter-list):
10058         * lisp/obsolete/vi.el (vi-mode):
10059         * lisp/progmodes/cc-engine.el (c-literal-type):
10060         * lisp/progmodes/cpp.el (cpp-face):
10061         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
10062         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
10063         * lisp/progmodes/pascal.el (pascal-auto-lineup):
10064         * lisp/progmodes/prog-mode.el (prog-widen):
10065         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
10066         (verilog-auto-lineup, verilog-auto-reset-widths)
10067         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
10068         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
10069         (flyspell-maybe-correct-doubling):
10070         * lisp/textmodes/table.el (table-justify, table-justify-cell)
10071         (table-justify-row, table-justify-column, table-insert-sequence)
10072         (table--justify-cell-contents):
10073         * lisp/url/url-auth.el (url-get-authentication):
10074         * lisp/window.el (display-buffer-record-window):
10075         * lisp/xml.el (xml-parse-file, xml-parse-region):
10076         * src/gfilenotify.c (Fgfile_add_watch):
10077         Don't quote symbols with apostrophes in doc strings.
10078         Use asymmetric quotes instead.
10079         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
10080         Likewise for symbol in diagnostic.
10081         * lisp/image.el (image-extension-data):
10082         * lisp/register.el (frame-configuration-to-register):
10083         * src/buffer.c (syms_of_buffer):
10084         Remove bogus apostrophes after symbols.
10085         * lisp/thumbs.el (thumbs-conversion-program):
10086         Quote Lisp string values using double-quotes, not apostrophes.
10088 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10090         Describe frame geometry and related functions in Elisp manual
10091         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
10092         (Showing Images): Update references.
10093         * doc/lispref/elisp.texi (Top): Update node listing.
10094         * doc/lispref/frames.texi (Frame Geometry): New node.
10095         Move `Size and Position' section here.
10096         (Size Parameters): Update references.
10097         (Mouse Position): Update references and nomenclature.
10098         Describe new functions `x-mouse-absolute-pixel-position' and
10099         `x-set-mouse-absolute-pixel-position'.
10100         * doc/lispref/windows.texi (Window Sizes): Update references.
10101         (Resizing Windows): Update references.  Move description of
10102         `fit-frame-to-buffer' here.
10103         (Coordinates and Windows): Update nomenclature and references.
10104         Describe new arguments of `window-edges'.  Comment out
10105         descriptions of `window-left-column', `window-top-line',
10106         `window-pixel-left' and `window-pixel-top'.  Describe
10107         `window-absolute-pixel-position'.
10109 2015-08-20  Alan Mackenzie  <acm@muc.de>
10111         Handling of `c-parse-state'.  Fix low level bug.
10112         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
10113         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
10115 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
10117         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
10118         window instead of deleting it.
10120 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10122         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
10123         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
10124         determine whether frame has a titlebar.
10125         Suggested by Eli Zaretskii <eliz@gnu.org>
10127 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
10129         Add a prettify-symbols-alist for (La)TeX
10130         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
10131         New variable holding an alist suitable as prettify-symbols-alist in
10132         (La)TeX modes.
10134 2015-08-19  Alan Mackenzie  <acm@muc.de>
10136         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
10137         Fixes debbugs#21275.
10138         In Emacs >= 25, let electric-pair-mode take precedence over
10139         delete-selection-mode.
10140         * lisp/delsel.el (delete-selection-uses-region-p): New function,
10141         previously a lambda expression in a property value for
10142         `self-insert-command'.
10143         (top-level): Set the `delete-selection' property of
10144         `self-insert-command' to `delete-selection-uses-region-p'.
10145         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
10146         property for c-electric-\(brace\|paren\) the value
10147         `delete-selection-uses-region-p' when the latter function exists.
10149 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10151         Fix key binding quoting in tutorial *Help*
10152         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
10153         When generating help for custom key bindings, use the user-preferred
10154         quoting style rather than hardcoding the grave style.
10156 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
10158         Improve and future-proof OTF fonts support in w32uniscribe.c
10159         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
10160         about the expected results and why the new Uniscribe APIs are not
10161         used in this function.
10162         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
10163         (ScriptGetFontFeatureTags_Proc): New function typedefs.
10164         (uniscribe_new_apis): New static variable.
10165         (uniscribe_check_features): New function, implements OTF features
10166         verification while correctly accounting for features in the list
10167         after the nil member, if any.
10168         (uniscribe_check_otf_1): New function, retrieves the features
10169         supported by the font for the requested script and language using
10170         the Uniscribe APIs available from Windows Vista onwards.
10171         (uniscribe_check_otf): If the new Uniscribe APIs are available,
10172         use them in preference to reading the font data directly.  Call
10173         uniscribe_check_features to verify that the requested features are
10174         supported, replacing the original incomplete code.
10175         (syms_of_w32uniscribe): Initialize function pointers for the new
10176         Uniscribe APIs.  (Bug#21260)
10177         (otf_features): Scan the script, langsys, and feature arrays back
10178         to front, so that the result we return has them in alphabetical
10179         order, like ftfont.c does.
10180         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
10181         New variable for debugging w32uniscribe.c code.
10183 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
10185         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
10186         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
10187         clause of `isearch-search-fun-default'.  That lax variable does not
10188         refer to lax-whitespacing.  Related to (bug#21777).
10189         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
10190         * lisp/character-fold.el (character-fold-search): Set to nil.
10191         Default to nil for now, until someone implements proper
10192         lax-whitespacing with char-fold searching.
10194 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10196         Fix doc-string of `help-mode-finish'.
10197         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
10199         In nsimage.m include coding.h (Bug#21292)
10200         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
10202         Move window edge functions to Elisp.
10203         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
10204         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
10205         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
10206         Move to window.el.
10207         (calc_absolute_offset): Remove.
10208         * lisp/frame.el (frame-edges): New function.
10209         * lisp/window.el (window-edges, window-pixel-edges)
10210         (window-absolute-pixel-edges): Move here from window.c.
10211         (window-body-edges, window-body-pixel-edges)
10212         (window-absolute-body-pixel-edges): Move here from window.c and
10213         rename "inside" to "body".  Keep old names as aliases.
10214         (window-absolute-pixel-position): New function.
10216 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10218         [Gnus]: Use overlay functions directly
10219         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
10220         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
10221         (gnus-article-highlight-signature, gnus-article-extend-url-button)
10222         (gnus-article-add-button, gnus-insert-prev-page-button)
10223         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
10224         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
10225         (gnus-cite-add-face):
10226         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
10227         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
10228         (gnus-tree-recenter, gnus-highlight-selected-tree):
10229         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
10230         (gnus-summary-show-thread, gnus-summary-hide-thread)
10231         (gnus-highlight-selected-summary):
10232         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
10233         * lisp/gnus/message.el (message-fix-before-sending)
10234         (message-toggle-image-thumbnails):
10235         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
10236         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
10237         Use overlay functions directly instead of using gnus-overlay-*,
10238         message-overlay-*, and sieve-overlay-*.
10239         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
10240         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
10241         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
10242         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
10243         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
10244         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
10245         (message-overlay-get, message-overlay-put, message-overlays-in):
10246         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
10247         (sieve-overlays-at): Remove.
10249 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10251         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
10252         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
10253         builds can use the declaration from the system headers.
10254         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
10255         definition of TITLEBAR_INFO.
10256         Suggested by Eli Zaretskii  <eliz@gnu.org>
10258 2015-08-19  Glenn Morris  <rgm@gnu.org>
10260         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
10262 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10264         Use new q ‘format’ flag when fixing quotes in C
10265         * src/image.c (image_size_error): New function.  All uses of
10266         image_error with "Invalid image size ..."  changed to use it.
10267         * src/image.c (image_size_error, xbm_load_image, xbm_load)
10268         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
10269         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10270         (imagemagick_load, svg_load, svg_load_image, gs_load)
10271         (x_kill_gs_process):
10272         * src/lread.c (load_warn_old_style_backquotes):
10273         * src/xfaces.c (load_pixmap):
10274         * src/xselect.c (x_clipboard_manager_error_1):
10275         Use %qs, not uLSQM and uRSQM.
10276         * src/syntax.c (Finternal_describe_syntax_value):
10277         Prefer Fsubstitute_command_keys to Fformat, as this lets
10278         us use AUTO_STRING.
10279         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
10280         as it's now guaranteed to be ASCII.
10281         * src/xselect.c (x_clipboard_manager_error_2):
10282         Avoid grave accent in low-level stderr diagnostic.
10284 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
10286         New q flag for ‘format’
10287         * doc/lispref/processes.texi (Sentinels):
10288         Don't hardwire grave quoting style in example.
10289         * doc/lispref/strings.texi (Formatting Strings):
10290         * etc/NEWS:
10291         Document new q flag.
10292         * src/editfns.c (Fformat): Implement it.
10294 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10296         pinentry.el: Add debugging support
10297         * lisp/net/pinentry.el (pinentry-debug): New variable.
10298         (pinentry-debug-buffer): New variable.
10299         (pinentry--process-filter): Send input to the debug buffer, if
10300         `pinentry-debug' is set.
10302         pinentry.el: Improve multiline prompt
10303         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
10304         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
10305         command.
10307 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10309         Fix multibyte confusion in diagnostics
10310         * src/print.c (print_error_message):
10311         Don't assume that the caller's name is unibyte.
10312         * src/xdisp.c (vadd_to_log):
10313         Don't assume that the formatted diagnostic is unibyte.
10315         Fix file name encodings in diagnostics
10316         Also, close some minor races when opening image files, by opening
10317         them once instead of multiple times.
10318         * src/gtkutil.c (xg_get_image_for_pixmap):
10319         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
10320         (svg_load):
10321         * src/nsimage.m (allocInitFromFile:):
10322         * src/xfns.c (xg_set_icon):
10323         Encode file name, since x_find_image_file no longer does that.
10324         * src/image.c (x_find_image_fd): New function.
10325         (x_find_image_file): Use it.  Do not encode resulting file name,
10326         since callers sometimes need it decoded.
10327         (slurp_file): File arg is now a fd, not a file name.
10328         All callers changed.  This saves us having to open the file twice.
10329         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
10330         (svg_load):
10331         Use x_find_image_fd and fdopen to save a file-open.
10332         Report file name that failed.
10333         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
10335 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
10337         Allow blink-matching-paren to jump off screen
10338         * doc/emacs/programs.texi (Matching): Mention the
10339         `blink-matching-paren' value `jump-offscreen'.
10340         * lisp/simple.el (blink-matching-paren): New possible value.
10341         (blink-matching-paren-on-screen): Clarify the docstring.
10342         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
10344         Refine the previous change
10345         * lisp/simple.el (blink-matching-open): Use minibuffer-message
10346         outside of save-excursion (bug#21286).
10348 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
10350         Rewrite and add frame geometry related functions.
10351         * src/frame.c (Fframe_position): New function.
10352         (Fset_frame_position): Rename parameters and rewrite doc-string.
10353         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
10354         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
10355         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
10356         Qtitle_bar_size.
10357         * src/nsfns.m (frame_geometry): New function.
10358         (Fx_frame_geometry): Call frame_geometry.
10359         (Fx_frame_edges): New function.
10360         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
10361         (GetTitleBarInfo_Proc): Define these so we can use the
10362         GetTitleBarInfo API.
10363         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
10364         (Fx_frame_geometry): Rewrite.
10365         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10366         (Fx_set_mouse_absolute_pixel_position): New functions.
10367         * src/xfns.c (frame_geometry): New function.
10368         (Fx_frame_geometry): Call frame_geometry.
10369         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10370         (Fx_set_mouse_absolute_pixel_position): New functions.
10372 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
10374         Improve Tramp's compatibility
10375         * lisp/net/tramp.el (tramp-get-method-parameter):
10376         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
10377         (tramp-adb-get-device):
10378         * lisp/net/trampver.el (tramp-repository-get-version):
10379         Use `tramp-compat-replace-regexp-in-string'.
10381 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
10383         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
10384         Encode/decode string.
10386 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10388         Clarify what happens to match data on failure
10389         Problem reported by Ernesto Alfonso (Bug#21279).
10390         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
10391         Document more carefully what happens to match data after a failed
10392         search.
10393         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
10394         the return value is undefined if the last search failed.
10395         (Fmatch_data): Simplify doc string line 1.
10397 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10399         Revert "pinentry.el: Support external passphrase cache"
10400         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
10401         pinentry.el shouldn't directly interact with the secrets service,
10402         but ask the caller to cache the passphrase.
10404 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
10406         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
10407         Message mode hooks.
10409 2015-08-17  Daiki Ueno  <ueno@gnu.org>
10411         epg.el: Make gpgconf output parsing future proof
10412         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
10413         --list-options" output.
10415         pinentry.el: Support external passphrase cache
10416         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
10417         (pinentry--allow-external-password-cache): New local variable.
10418         (pinentry--key-info): New local variable.
10419         (secrets-enabled, secrets-search-items, secrets-get-secret):
10420         Declare.
10421         (pinentry--send-passphrase): New function, split from
10422         `pinentry--process-filter'.
10423         (pinentry--process-filter): Use secrets.el to retrieve passphrase
10424         from login keyring.
10426         pinentry.el: Popup window for multiline prompt
10427         * lisp/net/pinentry.el (pinentry): New custom group.
10428         (pinentry-popup-prompt-window): New user option.
10429         (pinentry-prompt-window-height): New user option.
10430         (pinentry--prompt-buffer): New variable.
10431         (pinentry-prompt-mode-map): New variable.
10432         (pinentry-prompt-mode): New function.
10433         (pinentry--prompt): New function.
10434         (pinentry--process-filter): Use `pinentry--prompt' instead of
10435         `read-passwd' and `y-or-n-p'.
10437 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
10439         message.el: Silent the byte compiler
10440         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
10441         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
10442         (message-delete-overlay, message-window-inside-pixel-edges):
10443         Declare before using.
10445         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
10446         (message-window-inside-pixel-edges): XEmacs compatible functions.
10448 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10450         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
10452 2015-08-17  Noah Friedman  <friedman@splode.com>
10454         * lisp/simple.el (blink-matching-open): Restore point before
10455         calling minibuffer-message.
10457 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
10459         * lisp/play/dunnet.el: Update version number in header (now
10460         matches help).
10462 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10464         Curved quotes in --batch diagnostics in non-UTF-8
10465         When run with --batch, check that curved quotes are compatible with
10466         the system locale before outputting them in diagnostics.
10467         Problem reported by Eli Zaretskii in:
10468         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
10469         * lisp/startup.el (command-line): Set internal--text-quoting-flag
10470         after the standard display table is initialized.
10471         * src/doc.c (default_to_grave_quoting_style): New function.
10472         (text_quoting_style): Use it.
10473         (text_quoting_flag): New static var, visible to Lisp as
10474         internal--text-quoting-flag.
10475         * src/emacs.c: Include <wchar.h> if available.
10476         (using_utf8): New function.
10477         (main): Use it to initialize text_quoting_flag.
10478         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
10479         Don't define, as it's not needed and it clashes with wchar.h.
10481 2015-08-17  Glenn Morris  <rgm@gnu.org>
10483         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
10484         from makeinfo about spurious "Note:" cross-reference, and for grammar.
10486 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
10488         Minor change in variable initialization on MS-Windows
10489         * src/w32fns.c <after_dead_key>: Initialize to -1.
10490         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
10491         non-zero.
10493         Fix a bug with LWindow key remapping on MS-Windows
10494         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
10496 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
10498         Improve fontset support for latest OTF script tags
10499         * lisp/international/fontset.el (otf-script-alist): Add some
10500         missing script tags.
10501         (setup-default-fontset): Include settings for v2 versions of the
10502         script tags used by some modern OTF/TTF fonts.
10504 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10506         Spelling fixes
10508 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
10510         Use curved quotes in core elisp diagnostics
10511         In the core elisp files, use curved quotes in diagnostic formats,
10512         so that they follow user preference as per ‘text-quoting-style’
10513         rather than being hard-coded to quote `like this'.
10514         * lisp/abbrev.el (expand-region-abbrevs):
10515         * lisp/button.el (button-category-symbol, button-put)
10516         (make-text-button):
10517         * lisp/cus-start.el:
10518         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
10519         (custom--sort-vars-1, load-theme):
10520         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
10521         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
10522         (cl-generic-generalizers):
10523         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
10524         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
10525         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
10526         (advice--make, define-advice):
10527         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
10528         * lisp/emacs-lisp/timer.el (timer-event-handler):
10529         * lisp/env.el (setenv):
10530         * lisp/facemenu.el (facemenu-add-new-face)
10531         (facemenu-add-new-color):
10532         * lisp/faces.el (face-documentation, read-face-name)
10533         (face-read-string, read-face-font, face-spec-set-match-display)
10534         (read-color, x-resolve-font-name):
10535         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
10536         (set-auto-mode, hack-local-variables)
10537         (hack-one-local-variable--obsolete)
10538         (dir-locals-set-directory-class, write-file)
10539         (basic-save-buffer, delete-directory, copy-directory)
10540         (recover-session, recover-session-finish, insert-directory)
10541         (file-modes-char-to-who, file-modes-symbolic-to-number)
10542         (move-file-to-trash):
10543         * lisp/font-lock.el (font-lock-fontify-buffer):
10544         * lisp/format.el (format-write-file, format-find-file)
10545         (format-insert-file):
10546         * lisp/frame.el (get-device-terminal, select-frame-by-name):
10547         * lisp/fringe.el (fringe--check-style):
10548         * lisp/help.el (describe-minor-mode-from-indicator):
10549         * lisp/image.el (image-type):
10550         * lisp/international/fontset.el (x-must-resolve-font-name):
10551         * lisp/international/mule-cmds.el (prefer-coding-system)
10552         (select-safe-coding-system-interactively)
10553         (select-safe-coding-system, activate-input-method)
10554         (toggle-input-method, describe-current-input-method):
10555         * lisp/international/mule-conf.el (code-offset):
10556         * lisp/mouse.el (minor-mode-menu-from-indicator):
10557         * lisp/replace.el (query-replace-read-from)
10558         (occur-after-change-function, occur-1):
10559         * lisp/scroll-bar.el (scroll-bar-columns):
10560         * lisp/simple.el (execute-extended-command)
10561         (undo-outer-limit-truncate, compose-mail, set-variable)
10562         (choose-completion-string, define-alternatives):
10563         * lisp/startup.el (site-run-file, tty-handle-args)
10564         (command-line, command-line-1):
10565         * lisp/subr.el (noreturn, define-error, add-to-list)
10566         (read-char-choice):
10567         * lisp/term/common-win.el (x-handle-xrm-switch)
10568         (x-handle-name-switch, x-handle-args):
10569         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
10570         Use curved quotes in diagnostics.
10571         * lisp/international/mule.el (find-auto-coding):
10572         Use " to quote in a diagnostic, to be consistent with the rest of
10573         this file.
10575         Convert lisp/term/x-win.el to UTF-8
10576         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
10577         runtime behavior, and the file is multilingual so compile-time
10578         appearance shouldn't be an issue.
10579         * admin/notes/unicode: Document this.
10581 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
10583         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
10584         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
10585         issues and comments, bug#943.
10586         (verilog-type-font-keywords): Cycle delay operators like ##1 and
10587         ##[0:$] are now highlighted in their entirety similarly to the #
10588         delay-control operator.  Likewise, the followed-by operators #-#
10589         and #=# are no longer partially highlighed.
10590         (verilog-backward-syntactic-ws-quick)
10591         (verilog-skip-backward-comments): Minor performance improvements
10592         to buffer traversal functions for reduced latency.
10593         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
10594         keyword 'final' follows 'assert/assume/cover', then it is part of
10595         a deferred immediate assertion item and should not be treated as a
10596         final construct for indentation.  Reported by Yuri Sugihara.
10597         (verilog-do-indent): Virtual task/function/class definition lines
10598         should not be considered as declarations.  Reported by Enzo Chi.
10599         (verilog-do-indent): Do not falsely indent to '=' of
10600         property/sequence operators on subsequent lines of a multi-line
10601         statement.
10602         (verilog-assignment-operator-re): Fix '!==' operator and add
10603         support for '<->', ':/', '#-#', and '#=#' operators.
10604         (verilog-calculate-indent, verilog-label-be): Enable
10605         case-sensitive regular expression parsing when looking for
10606         keywords.
10607         (verilog-calc-1): Detect 'pure virtual method' declarations which
10608         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
10609         (verilog-backward-ws&directives): When moving back to the start of
10610         a line and the preceeding line ended with an escaped-newline, then
10611         jump up one line.  This properly consumes a multi-line
10612         pre-processor directive.  Reported by Kaushal Modi.
10613         (verilog-dpi-import-export-re, verilog-extended-complete-re)
10614         (verilog-calc-1): Teach verilog-mode to properly indent after a
10615         DPI import/export statement that resides outside of a module.
10616         Reported by Kaushal Modi.
10617         (verilog-extended-complete-re): Update regexp to match both
10618         "DPI-C" and "DPI".  Reported by Kaushal Modi.
10620 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10622         substitute-command-keys a few more doc strings
10623         * lisp/allout.el (outlineify-sticky):
10624         * lisp/files.el (hack-one-local-variable--obsolete):
10625         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
10626         Use substitute-command-keys on some doc strings so that
10627         they don't use hard-coded key bindings or quoting styles.
10629         Fix quoting in Fformat calls
10630         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
10631         (xpm_load, xpm_load_image, pbm_load, png_load_body)
10632         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10633         (imagemagick_load, svg_load, svg_load_image, gs_load)
10634         (x_kill_gs_process):
10635         * src/lread.c (load_warn_old_style_backquotes):
10636         * src/xfaces.c (load_pixmap):
10637         * src/xselect.c (x_clipboard_manager_error_1):
10638         Quote diagnostics according to user preference when calling
10639         Fformat or its derivatives.
10641 2015-08-15  Glenn Morris  <rgm@gnu.org>
10643         * admin/admin.el (set-version, set-copyright): Remove deleted files.
10645 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
10647         Allow describe-function helpers to access buffer-local values
10648         This will be used by cedet/mode-local.el `describe-mode-local-override'
10649         on `help-fns-describe-function-functions' in upstream CEDET.
10650         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
10651         `describe-function'.
10652         (describe-function): Bind it, save it on the help xref stack.
10654         Handle pulse-background being nil
10655         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
10656         pulse-background, handle it being nil.
10658 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10660         Fix "\`" confusion in Lisp strings
10661         * admin/authors.el (authors-canonical-author-name):
10662         Fix typo by using "\\`" not "\`" in string RE.
10663         * lisp/obsolete/complete.el (PC-complete-as-file-name):
10664         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
10665         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
10666         Use plain "`", not the equivalent-but-confusing "\`", in strings.
10667         * lisp/textmodes/texinfmt.el: Fix comment likewise.
10669 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
10671         * nt/zipdist.bat: Remove -- no longer used.
10673 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
10675         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
10676         rather than "getenforce".
10677         (tramp-sh-handle-set-file-selinux-context): Do not
10678         cache SELinux context if not all context components are given.
10680 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
10682         Add doc strings to 2 help-mode.el functions
10683         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
10684         strings.  (Bug#21263)
10686         Remove files used by the old MS-Windows specific build procedure
10687         * admin/unidata/makefile.w32-in:
10688         * doc/emacs/makefile.w32-in:
10689         * doc/lispintro/makefile.w32-in:
10690         * doc/lispref/makefile.w32-in:
10691         * doc/misc/makefile.w32-in:
10692         * leim/makefile.w32-in:
10693         * lib-src/makefile.w32-in:
10694         * lib/makefile.w32-in:
10695         * lisp/makefile.w32-in:
10696         * nt/INSTALL.OLD:
10697         * nt/config.nt:
10698         * nt/emacs-src.tags:
10699         * nt/envadd.bat:
10700         * nt/gmake.defs:
10701         * nt/makefile.w32-in:
10702         * nt/multi-install-info.bat:
10703         * nt/nmake.defs:
10704         * nt/paths.h:
10705         * src/makefile.w32-in: Files deleted.
10706         * nt/configure.bat: Remove everything except the blurb about the
10707         new build procedure.
10708         * make-dist: Remove references to makefile.w32-in in various
10709         directories, and to files in nt/ that were deleted.
10710         * etc/NEWS: Mention the fact that the files were dropped.
10712 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10714         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
10715         (Bug#21248)
10717 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
10719         Default to inotify instead of gfile
10720         * configure.ac (with_file_notification): Fix typo that
10721         prevented suppression of file notification if HAVE_NS.
10722         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
10723         with_file_notification is 'yes' (Bug#21241).
10724         * etc/NEWS: Mention this.
10726         Fix broken URLs for ISO-IR
10727         * doc/emacs/mule.texi (Charsets):
10728         * lisp/international/mule-conf.el:
10729         Fix broken URL (Bug#21248).
10731         Low-level diagnostics now use ‘text-quoting-style’
10732         * src/doprnt.c (doprnt):
10733         Format ` and ' as per ‘text-quoting-style’.
10734         * src/xdisp.c (vmessage, message): Mention that the format should
10735         not contain ` or '.
10737         Prefer ‘format’ to ‘substitute-command-keys’
10738         * src/character.h (uLSQM, uRSQM): Move here ...
10739         * src/doc.c (uLSQM, uRSQM): ... from here.
10740         * src/doc.c (Fsubstitute_command_keys):
10741         * src/syntax.c (Finternal_describe_syntax_value):
10742         * lisp/cedet/mode-local.el (mode-local-print-binding)
10743         (mode-local-describe-bindings-2):
10744         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
10745         * lisp/cus-theme.el (describe-theme-1):
10746         * lisp/descr-text.el (describe-text-properties-1, describe-char):
10747         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
10748         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
10749         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
10750         * lisp/emacs-lisp/package.el (describe-package-1):
10751         * lisp/faces.el (describe-face):
10752         * lisp/help-fns.el (help-fns--key-bindings)
10753         (help-fns--compiler-macro, help-fns--parent-mode)
10754         (help-fns--obsolete, help-fns--interactive-only)
10755         (describe-function-1, describe-variable):
10756         * lisp/help.el (describe-mode):
10757         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
10758         to implement quoting style.  This generally makes the code simpler.
10760         Extend ‘format’ to translate curved quotes
10761         This is a followup to the recent doc string change, and deals with
10762         diagnostics and the like.  This patch is more conservative than
10763         the doc string change, in that the behavior of ‘format’ changes
10764         only if its first arg contains curved quotes and the user prefers
10765         straight or grave quotes.  (Come to think of it, perhaps we should
10766         be similarly conservative with doc strings too, but that can wait.)
10767         The upside of this conservatism is that existing usage is almost
10768         surely unaffected.  The downside is that we'll eventually have to
10769         change Emacs's format strings to use curved quotes in places where
10770         the user might want curved quotes, but that's a simple and
10771         mechanical translation that I'm willing to do later.  (Bug#21222)
10772         * doc/lispref/help.texi (Keys in Documentation):
10773         Move description of text-quoting-style from here ...
10774         * doc/lispref/strings.texi (Formatting Strings):
10775         ... to here, and describe new behavior of ‘format’.
10776         * etc/NEWS: Describe new behavior.
10777         * lisp/calc/calc-help.el (calc-describe-thing):
10778         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
10779         * lisp/info.el (Info-find-index-name):
10780         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
10781         of recently-added curved quotes.
10782         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
10783         Move from here ...
10784         * src/lisp.h: ... to here.
10785         * src/doc.c (text_quoting_style): New function.
10786         (Fsubstitute_command_keys): Use it.
10787         * src/editfns.c (Fformat): Implement new behavior.
10788         * src/lisp.h (enum text_quoting_style): New enum.
10790 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
10792         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
10793         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
10795 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
10797         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
10798         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
10800 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
10802         Flush file properties in Tramp
10803         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
10804         (tramp-sh-handle-set-file-times):
10805         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
10806         (tramp-adb-handle-set-file-times): Flush the file properties of
10807         the directory.
10809 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
10811         * doc/emacs/misc.text (Amusements): Fixed typo.
10813 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
10815         Don't miss warnings about removing string text properties while dumping
10816         * src/alloc.c (purecopy): Warn about removing a string's text
10817         properties even when the same string was already pure-copied
10818         earlier.
10819         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
10820         (elisp--xref-format-extra): Fix the commentary.
10822 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
10824         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
10826 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
10828         * lisp/progmodes/compile.el: Use lexical-binding.
10829         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
10831 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
10833         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
10834         * lisp/uniquify.el: Remove redundant `:group's.
10836 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
10838         * lisp/net/tramp-adb.el
10839         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
10840         result to prevent modification of the tramp-cache by side effects.
10841         Use the correct cache key.
10843 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
10845         Make add_to_log varargs
10846         * src/alloc.c (run_finalizer_handler):
10847         * src/charset.c (load_charset_map_from_vector):
10848         * src/nsimage.m (ns_load_image):
10849         * src/xfaces.c (load_pixmap, load_color2):
10850         Simplify, now that add_to_log has a variable number of args.
10851         * src/image.c (image_error): Take a variable number of args.
10852         Callers simplified.
10853         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
10854         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
10855         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
10856         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
10858         Optional args for holiday-greek-orthodox-easter
10859         * etc/NEWS: Document this.
10860         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
10861         Add optional args N and STRING, mimicking the API and code of
10862         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
10864 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
10866         xref-find-definitions: Exclude more generic function items.
10867         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
10868         Add doc string.
10869         (cl--generic-find-defgeneric-regexp): New.
10870         (find-function-regexp-alist): Add it.
10871         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
10872         elisp-mode.el, change to search for ";;; Code:"
10873         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
10874         (find-function-regexp-alist): Add them.
10875         * lisp/progmodes/elisp-mode.el:
10876         (elisp--xref-format, elisp--xref-format-extra): Change back to
10877         defvar due to bug#21237.
10878         (elisp--xref-find-definitions): Exclude co-located default methods for
10879         generic functions.  Also exclude implicitly declared defgeneric.
10880         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
10881         mode variables defined by 'define-minor-mode'.
10882         * test/automated/elisp-mode-tests.el: Declare generic functions, add
10883         tests for them.
10884         (xref-elisp-test-run): Fix bug.
10885         (emacs-test-dir): Improve initial value.
10886         (find-defs-defun-defvar-el): Don't expect defvar.
10887         (find-defs-feature-el): Match change to find-feature-regexp.
10889 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
10891         Improve warning about purecopy of strings with properties
10892         * src/alloc.c (purecopy): Show the offending string with the
10893         warning about removing its text properties.
10895 2015-08-12  Alan Mackenzie  <acm@muc.de>
10897         Introduce new macros to cover Emacs's new names in cl-lib.el
10898         This also eliminates `mapcan' warnings in XEmacs.
10899         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
10900         characterise [X]Emacs versions.
10901         (top-level): Require either 'cl or 'cl-lib, depending on
10902         c--mapcan-status.
10903         Change this back to cc-external-require from an eval-when-compile
10904         require.
10905         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
10906         (c--delete-duplicates): New macros which expand into either old or new
10907         names.
10908         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
10909         rather than the old names.
10910         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
10911         rather than mapcan.
10912         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
10913         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
10914         depending on c--mapcan-status.
10915         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
10916         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
10917         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
10918         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
10919         (c-decl-block-key, c-keywords, c-keywords-obarray)
10920         (c-regular-keywords-regexp, c-primary-expr-regexp)
10921         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
10922         (c-known-type-key, c-nonlabel-token-key)
10923         (c-make-init-lang-vars-fun): Use the new macros rather than the old
10924         names.
10926 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
10928         loadhist.el (read-feature): Conform to completing-read
10929         * lisp/loadhist.el (read-feature): According to `completing-read'
10930         documentation, if collection is a list, then it must be a list of
10931         strings, not a list of symbols like before.
10933 2015-08-12  David Kastrup  <dak@gnu.org>
10935         Deal gracefully with up-events (Bug#19746)
10936         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
10937         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
10938         those may easily be injected by user-level Lisp code.
10939         (read_key_sequence): Discard unbound up-events like unbound
10940         down-events: they are even more likely only relevant for special
10941         purposes.
10942         While Emacs will not produce up-events on its own currently (those are
10943         converted to drag or click events before being converted to
10944         Lisp-readable structures), the input queue can be made to contain them
10945         by synthesizing events to `unread-command-events'.  Emacs should deal
10946         consistently with such events.
10948 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
10950         Fix display of thin lines whose newline has line-height property of t
10951         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
10952         and descent values of non-empty glyph rows, since they could have
10953         forced low values deliberately.  (Bug#21243)
10955 2015-08-12  Richard Stallman  <rms@gnu.org>
10957         Offer to combine multiple To or CC fields.
10958         * lisp/mail/sendmail.el (mail-combine-fields): New function.
10959         (mail-send): Call 'mail-combine-fields'.
10961         Don't decrypt encrypted files.
10962         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
10964         Handle encrypted mbox files.
10965         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
10966         the mbox file if necessary.
10968         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
10969         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
10970         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
10971         In a mime message, reenable Mime and show the parts that
10972         were shown before.
10973         Add keyword "decrypt" if anything decrypted.
10975         epa-inhibit inhibits auto-recognition of .gpg files
10976         * lisp/epa-file.el (epa-inhibit): New variable.
10977         (epa-file-handler): Check epa-inhibit.
10979 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10981         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
10983 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10985         Respect python.el imenu when semantic-mode is off
10986         Fixes bug#21220
10987         * lisp/cedet/semantic/wisent/python.el: Do not force
10988         wisent-python-default-setup on python-mode-hook.
10990 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
10992         Give names to Unicode code points in C code
10993         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
10994         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
10995         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
10996         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
10997         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
10998         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
10999         (OBJECT_REPLACEMENT_CHARACTER):
11000         New named constants for Unicode code points.
11001         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
11002         * src/composite.c (char_composable_p):
11003         * src/lread.c (readevalloop, read1):
11004         * src/xdisp.c (get_next_display_element):
11005         Use them.
11006         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
11007         Remove; now in character.h.
11009 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
11011         elisp--xref-find-definitions handle cl-defstuct default constructor
11012         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
11013         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
11014         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
11015         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
11016         from xref-elisp-test for ease of debugging.
11017         (xref-elisp-deftest): Rename from xref-elisp-test.
11018         (find-defs-constructor): New test.
11019         (find-defs-defgeneric-el): Match batch test config.
11020         (compile): Required for find-defs compilation-minor-mode test.
11021         (find-defs-defvar-el): Match code change.
11022         (find-defs-face-el): Match code change.
11023         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
11024         Improve doc string.
11026 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
11028         * lisp/replace.el (perform-replace): Document `replacements'.
11029         (perform-replace): Move the description of the format of `replacements'
11030         from the body's comment to the doc string.
11032 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
11034         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
11035         sequence.  Recent adb version send initial escape sequences, even
11036         when terminal type is set to TERM=dumb.
11038 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
11040         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
11041         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
11042         Function deleted.
11043         (elisp--xref-format-cl-defmethod): New defconst.
11044         (find-feature-regexp, find-alias-regexp): New defcustoms.
11045         (elisp--xref-make-xref): New function.
11046         (elisp--xref-find-definitions): Rewrite using the above, handle many
11047         more cases.  Always output all available definitions.
11048         (xref-location-marker): No need for special cases.
11049         * test/automated/elisp-mode-tests.el: Add more tests of
11050         elisp--xref-find-definitions, improve current tests.
11052 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
11054         Fix recording of events pushed onto unread-command-events
11055         * src/keyboard.c (read_char): Make sure events read from
11056         unread-command-events and unread-post-input-method-events are
11057         always recorded by record_char.  Reported by David Kastrup
11058         <dak@gnu.org>, see
11059         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
11061 2015-08-10  Samer Masterson  <samer@samertm.com>
11063         Set file buffer as current for "--file"
11064         * lisp/startup.el (command-line-1): Set file buffer as current before
11065         it is displayed so it can be used with options like "--eval".
11066         (Bug#21095)
11068 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
11070         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
11071         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
11072         after setting LC_ALL to the desired locale, to avoid affecting how
11073         numbers are read and printed.  (Bug#21223)
11075 2015-08-10  Alan Mackenzie  <acm@muc.de>
11077         Fix "Invalid search bound (wrong side of point)" in fontification
11078         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
11079         an initialization expression, check point is not beyond the
11080         fontification limit.
11082 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11084         Fix DPI calculation when Xft/DPI is default
11085         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
11086         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
11087         Remove unnecessary cast while we're in the neighborhood.
11089 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
11091         Add project-vc-search-path and project-vc-ignores
11092         * lisp/progmodes/project.el (project-vc): New group.
11093         (project-vc-search-path, project-vc-ignores): New variables.
11094         (project--value-in-dir): Utility function.
11095         (project-search-path, project-ignores): Use them.
11096         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
11097         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
11099 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11101         Fix some minor quoting issues with grave accent
11102         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
11103         Remove redundant quotes.
11104         * src/doc.c (uLSQM, uRSQM): New macros.
11105         * src/doc.c (Fsubstitute_command_keys):
11106         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
11107         preference for quotes rather than hardcoding the ‘grave’ style.
11108         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
11109         (re_match_2_internal) [DEBUG]: In debugging output, quote C
11110         strings with "...", not `...'.
11112         ChangeLog.2 ignores remote-tracking merges
11113         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
11114         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
11115         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
11117 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
11119         Use kpsewhich in ffap-latex-mode, if available
11120         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
11121         (ffap-latex-mode): Use kpsewhich if available.
11123         ffap: disallow braces in filenames for tex modes
11124         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
11125         braces in tex-related modes.
11127         Remove useless backslashes from ffap-string-at-point-mode-alist
11128         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
11129         misleading backslashes from default value.
11131         Augment docstring of ffap-string-at-point-mode-alist
11132         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
11133         and END are handled.
11135 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11137         * lisp/org/org-src.el (org-edit-src-code)
11138         (org-edit-fixed-width-region):
11139         * lisp/simple.el (completion-setup-function):
11140         Remove calls to substitute-command-keys that always just return
11141         their argument.
11143 2015-08-09  Daiki Ueno  <ueno@gnu.org>
11145         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
11146         (Bug#21210)
11148 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
11150         Fix link to source code in help window
11151         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
11152         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
11153         'No longer include timestamp in header of .elc files'.  Add code
11154         that will return .el source file in load-path.
11156 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
11158         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
11159         Respect `isearch-lax-whitespace' when searching through
11160         `isearch-word'.
11162 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
11164         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
11166         * org.el: Fix up some lexical scoping warnings, and use dolist
11167         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
11168         (org-set-regexps-and-options, org-assign-fast-keys)
11169         (org-contextualize-keys, org-contextualize-validate-key)
11170         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
11171         (org-find-olp, org-find-exact-heading-in-directory)
11172         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
11173         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
11174         (org-replace-escapes): Use dolist.
11175         (org-mode): Optimize away XEmacs-only code.
11176         (org-refile-get-targets): Remove unused var `f'.
11177         (org-fast-todo-selection): Remove unused var `e'.
11178         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
11179         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
11180         (org-format-latex): Use dolist.  Remove unused var `e'.
11181         (org-toggle-heading): Access vars lexically rather than dynamically.
11182         (org-backward-sentence, org-forward-sentence, org-meta-return)
11183         (org-kill-line): Mark arg as unused.
11184         (org-submit-bug-report): Silence compiler warning.
11185         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
11186         (org-get-cursor-date): Remove unused var `tm'.
11187         (org-comment-or-uncomment-region): Use standard name `_'.
11188         (reftex-docstruct-symbol, reftex-cite-format): Declare to
11189         silence byte-compiler.
11190         (org-reftex-citation): Add `org--' prefix to dynamically scoped
11191         `rds' var.
11193 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
11195         Electric quote if coding is undecided or no conv
11196         * lisp/electric.el (electric--insertable-p): Also say that a
11197         string is insertable if the buffer file coding system is undecided
11198         or uses no conversion, as curved quotes will work in either case.
11200         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
11202 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
11204         Fix overlay string display regressions introduced in Emacs 24.5
11205         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
11206         buffer position, if we move the iterator to a new position as
11207         result of jumping over text covered by a "replacing" display
11208         property.
11209         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
11211         Support recovery from C stack overflow on MS-Windows
11212         * src/w32fns.c (w32_reset_stack_overflow_guard)
11213         (stack_overflow_handler): New functions for handling C stack
11214         overflow exceptions.
11215         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
11216         specially, and zero out except_addr if we do.
11217         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
11218         mode.
11219         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
11220         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
11221         the MinGW build, but the code guarded by that is for Posix hosts.
11222         * src/keyboard.c (command_loop) [WINDOWSNT]:
11223         Call w32_reset_stack_overflow_guard.
11224         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
11225         (sigsetjmp): New macro.
11226         (w32_reset_stack_overflow_guard): Declare the prototype.
11227         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
11229 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
11231         Improve error signalling for seq-subseq
11232         * lisp/seq.el (seq-subseq): The existing behavior is to error
11233         when indexes are too large, but to silently ignore numbers which
11234         are too negative for lists.  String and vector handling errors in
11235         both cases.  This has been regularized.  Error signaling behavior
11236         has been explicitly added to the doc string.
11238         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
11239         therefore also impacted by this change.  Update the doc string
11240         to reflect this.
11242         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
11243         added for these exceptional cases, as well as one non exceptional
11244         base case.
11246 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
11248         Improve error checking in tramp-adb.el
11249         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
11250         Improve error checking.  "ls -l" on Android in Enforcing mode can
11251         print "lstat './FILENAME failed: Permission denied".
11253 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11255         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
11256         non-struct vectors.
11258 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
11260         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
11261         * lisp/window.el: Fix typo that broke build.
11262         (display-buffer--action-function-custom-type):
11263         Add `display-buffer-use-some-frame'.
11264         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
11266         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
11267         * lisp/window.el (display-buffer-use-some-frame): Add support for
11268         'inhibit-same-window in alist.
11269         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
11270         'inhibit-same-window in alist.
11272 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
11274         Avoid infinite loop in display of invisible text in strings
11275         * src/xdisp.c (handle_invisible_prop): If the next change of
11276         invisibility spec does not mean the beginning of a visible text,
11277         update the string position from which to start the search for the
11278         next invisibility change.  This avoids an infinite loop when we
11279         have more than one invisibility spec that are made inactive by
11280         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
11281         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
11282         for the situation that caused bug #21200.
11284 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
11286         * lisp/emacs-lisp/package.el: Simplify describe-package-1
11287         (package-help-section-name-face): New face.
11288         (package--print-help-section): New function.
11289         (describe-package-1): Refactor section printing.
11290         (package-make-button): Use face instead of font-lock-face, which
11291         doesn't work on buttons.
11293         * lisp/emacs-lisp/package.el: Define custom faces
11294         (package-name-face, package-description-face)
11295         (package-status-built-in-face, package-status-external-face)
11296         (package-status-available-face, package-status-new-face)
11297         (package-status-held-face, package-status-disabled-face)
11298         (package-status-installed-face, package-status-dependency-face)
11299         (package-status-unsigned-face, package-status-incompat-face)
11300         (package-status-avail-obso-face): New faces.
11301         (package-menu--print-info-simple): Use them.
11303 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
11305         Fix some confusion with ‘format’
11306         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
11307         (allout-graphics-modification-handler):
11308         Protect arbitrary string in a format context with "%s" format.
11309         * lisp/avoid.el:
11310         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
11311         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
11312         * lisp/erc/erc-button.el (erc-button-beats-to-time):
11313         * lisp/gnus/message.el (message-send-form-letter):
11314         * lisp/org/ob-core.el (org-babel-check-evaluate)
11315         (org-babel-confirm-evaluate):
11316         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
11317         * lisp/org/ox-latex.el (org-latex-compile):
11318         * lisp/org/ox-man.el (org-man-compile):
11319         * lisp/org/ox-odt.el (org-odt-template):
11320         * lisp/org/ox-texinfo.el (org-texinfo-compile):
11321         * lisp/progmodes/prolog.el (prolog-help-info)
11322         (prolog-view-predspec):
11323         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
11324         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
11325         * lisp/textmodes/rst.el (rst-replace-lines):
11326         Change (message (format ...)) to (message ...), and likewise
11327         for ‘error’.  This lessens the probability of confusion when the
11328         output of ‘format’ contains ‘%’.
11330 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11332         * lisp/replace.el (replace-character-fold): Default to nil.
11334         * lisp/character-fold.el: Fix lax whitespace.
11335         (character-fold-table): Don't make space match other whitespace chars.
11336         (character-fold-to-regexp): Simplify lax behavior.
11338 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
11340         Preserve window point in xref-find-definitions-other-window
11341         Fix the problem reported by Ingo Logmar in
11342         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
11343         * lisp/progmodes/xref.el (xref--goto-char): Extract from
11344         xref--goto-location.
11345         (xref--pop-to-location): Use it.  Replace xref--goto-location with
11346         a direct xref-location-marker call.
11347         (xref--show-location): Likewise.
11348         (xref--display-position): Use xref--goto-char.
11350         * lisp/progmodes/project.el: Add a paragraph to the front matter.
11352 2015-08-04  David Kastrup  <dak@gnu.org>
11354         * lisp/vc/emerge.el (emerge-show-file-name):
11355         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
11356         (vhdl-comment-insert, vhdl-hooked-abbrev):
11357         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
11358         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
11359         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
11360         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
11361         * lisp/obsolete/vip.el (vip-escape-to-emacs)
11362         (vip-prefix-arg-value, vip-prefix-arg-com):
11363         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
11364         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
11365         (quail-tibkey-update-translation):
11366         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
11367         * lisp/leim/quail/lao.el (quail-lao-update-translation):
11368         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
11369         (quail-japanese-self-insert-and-switch-to-alpha):
11370         * lisp/leim/quail/hangul.el (hangul2-input-method)
11371         (hangul3-input-method, hangul390-input-method):
11372         * lisp/language/hanja-util.el (hangul-to-hanja-char):
11373         * lisp/international/robin.el (robin-input-method):
11374         * lisp/international/quail.el (quail-start-translation)
11375         (quail-start-conversion):
11376         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
11377         (gnus-article-describe-key-briefly):
11378         * lisp/eshell/em-hist.el (eshell-list-history):
11379         * lisp/term.el (term-dynamic-list-input-ring)
11380         (term-dynamic-list-completions):
11381         * lisp/subr.el (momentary-string-display):
11382         * lisp/simple.el (read-quoted-char):
11383         * lisp/pcomplete.el (pcomplete-show-completions):
11384         * lisp/kmacro.el (kmacro-repeat-on-last-key):
11385         * lisp/info.el (Info-summary):
11386         * lisp/ehelp.el (electric-help-command-loop):
11387         * lisp/ebuff-menu.el (electric-buffer-list)
11388         (Electric-buffer-menu-exit):
11389         * lisp/double.el (double-translate-key):
11390         * lisp/comint.el (comint-dynamic-list-input-ring)
11391         (comint-dynamic-list-completions): Do not overwrite preexisting
11392         contents of `unread-command-events' when putting new events into it.
11394 2015-08-04  Daniel Colascione  <dancol@dancol.org>
11396         Improve ansi-color filtering of unrecognized escape sequences
11397         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
11398         escape sequences.
11399         (ansi-color-filter-apply, ansi-color-apply): Filter out
11400         unrecognized escape sequences.
11402 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11404         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
11405         definitions to `easy-menu-define', improve a couple to account for
11406         async, and add a couple of new commands.
11408 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
11410         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
11412 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
11414         Add new 'calendar-weekend-days' option
11415         Make the days receiving the 'calendar-weekend-header' face freely
11416         customizable, as they differ by region/culture.
11417         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
11418         new variable.
11419         * lisp/calendar/calendar.el (calendar-generate-month): New variable
11420         calendar-weekend-days to customize day header fontification.
11422 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
11424         Redo text-quoting-style variable
11425         Rename help-quote-translation to text-quoting-style,
11426         and use symbols rather than characters as values.
11427         This follows suggestions along these lines by Alan Mackenzie in:
11428         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
11429         and by Drew Adams in:
11430         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
11431         * doc/lispref/help.texi (Keys in Documentation)
11432         * etc/NEWS:
11433         * lisp/cus-start.el (standard):
11434         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
11435         Document and/or implement the new behavior instead of the old.
11436         (syms_of_doc): New symbols 'grave' and 'straight'.
11438 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
11440         nnimap.el: Use IMAP MOVE extension if available
11441         * lisp/gnus/nnimap.el (nnimap-request-move-article)
11442         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
11443         Use MOVE extension if available.
11445         nnimap.el: Explicitly ask for server capabilities
11446         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
11447         capabilities will be returned in the login-result.
11449 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11451         Treat help strings like other doc strings
11452         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
11453         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
11454         substitute-command-keys.
11455         * src/keyboard.c (show_help_echo, parse_menu_item): Call
11456         substitute-command-keys on the help string before displaying it.
11458         Also mention "curly quotes"
11459         See Drew Adams's email in:
11460         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
11461         * doc/lispref/help.texi (Keys in Documentation):
11462         Add index entry "curly quotes".
11463         * etc/NEWS: Use the phrase "curly quotes" too.
11465         ede-proj-target-makefile docstring tweaks
11466         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
11467         Consistently use "all:" to describe the all: target,
11468         replacing three different and confusingly-quoted usages.
11470 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
11472         Don't abort emacsclientw when -a was specified
11473         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
11474         out if we are in emacsclientw and -a was specified.
11476 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
11478         Fix handling of 1st keystroke on MS-Windows
11479         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
11480         This is needed to correctly handle the session's first keystroke,
11481         if it has any modifiers.  (Bug#19994)
11483 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11485         Substitute some customization etc. doc strings
11486         These changes apply substitute-command-keys to some
11487         doc strings that were going through untranslated
11488         when creating customization or other widgets.
11489         * lisp/cus-edit.el (custom-group-value-create):
11490         * lisp/wid-edit.el (widget-default-create):
11491         (widget-push-button-value-create):
11492         Treat the widget tag as a doc string.
11493         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
11494         Treat the :documentation value as a doc string.
11495         * lisp/wid-edit.el (widget-choose):
11496         Treat the choice names as doc strings.
11497         (widget-default-create): Treat the :doc value as a doc string.
11498         (widget-toggle-value-create): Treat the :on and :off values
11499         as doc strings.
11500         (widget-documentation-string-value-create):
11501         Substitute the doc string.
11503 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11505         Add a second argument to project-ignores
11506         * lisp/progmodes/project.el (project-ignores): Add a second
11507         argument DIR.
11508         * lisp/progmodes/project.el (project-ignores): Only include the VC
11509         ignores if DIR is the VC root.
11510         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
11512 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11514         Prevent incorrect display when 'line-spacing' variable is set
11515         * src/xdisp.c (try_window_id): Give up this optimization if the
11516         buffer has its 'line-spacing' variable set non-nil.
11518 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11520         Don't pass NOVISIT to find-file
11521         * lisp/progmodes/etags.el (next-file):
11522         Don't pass NOVISIT to find-file (bug#21175).
11524         Ignore buffer restriction for tags-loop-eval
11525         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
11526         restriction (bug#21167).
11528 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11530         Fix a thinko in 'ffap-gopher-at-point'
11531         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
11533         Honor 'line-spacing' for empty lines
11534         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
11535         property and 'line-spacing' frame parameter or variable or
11536         property for empty lines, by doing the same processing as in
11537         x_produce_glyph for newline characters.  (Bug#21165)
11539 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
11541         Simplify by assuming C99 integer division
11542         * src/floatfns.c (ceiling2, floor2, truncate2):
11543         Assume C99 (i.e., Fortran) semantics for integer division.
11544         This simplifies the code.
11546 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
11548         Don't overflow if computing approximate percentage
11549         * lisp/align.el (align-region):
11550         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
11551         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
11552         * lisp/cus-edit.el (custom-buffer-create-internal):
11553         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
11554         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
11555         (checkdoc-next-message-error):
11556         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
11557         * lisp/epa.el (epa-progress-callback-function):
11558         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
11559         * lisp/ffap.el (ffap-menu-rescan):
11560         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
11561         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
11562         * lisp/gnus/nneething.el (nneething-retrieve-headers):
11563         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
11564         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
11565         * lisp/gnus/nnml.el (nnml-retrieve-headers):
11566         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
11567         * lisp/gnus/nntp.el (nntp-retrieve-headers)
11568         (nntp-retrieve-articles):
11569         * lisp/imenu.el (imenu--relative-position):
11570         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
11571         (skkdic-convert-okuri-nasi):
11572         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
11573         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
11574         * lisp/org/org-list.el (org-update-checkbox-count):
11575         * lisp/org/org.el (org-table-map-tables)
11576         (org-update-parent-todo-statistics):
11577         * lisp/play/decipher.el (decipher-insert-frequency-counts)
11578         (decipher-analyze-buffer):
11579         * lisp/profiler.el (profiler-format-percent):
11580         * lisp/progmodes/cc-cmds.el (c-progress-update):
11581         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
11582         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
11583         (idlwave-list-load-path-shadows):
11584         * lisp/progmodes/opascal.el (opascal-step-progress):
11585         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
11586         (vhdl-scan-directory-contents):
11587         * lisp/textmodes/bibtex.el (bibtex-progress-message):
11588         * lisp/textmodes/flyspell.el (flyspell-small-region)
11589         (flyspell-external-point-words):
11590         * lisp/textmodes/table.el (table-recognize):
11591         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
11592         progress-report percentages and the like.  This avoids problems
11593         if (* 100 NUMERATOR) would overflow.
11594         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
11595         * lisp/gnus/registry.el (registry-reindex):
11596         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
11597         * lisp/descr-text.el (describe-char):
11598         * lisp/org/org-colview.el (org-nofm-to-completion):
11599         * lisp/ps-print.el (ps-plot):
11600         * lisp/simple.el (what-cursor-position):
11601         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
11602         more-complicated and less-accurate approximation.
11604         Fix some int overflows in profiler.c
11605         * src/profiler.c (make_log): Make args EMACS_INT, not int,
11606         to avoid unwanted behavior on 'int' overflow.
11607         (make_log, evict_lower_half, record_backtrace):
11608         Use ptrdiff_t, not int, for object indexes.
11610         Port to pedantic memcpy
11611         * src/keyboard.c (menu_bar_items, tool_bar_items):
11612         * src/xrdb.c (magic_db):
11613         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
11615         Merge from gnulib
11616         This incorporates:
11617         2015-07-29 time_rz: port to pedantic memcpy
11618         * lib/time_rz.c: Copy from gnulib.
11620 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
11622         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
11623         When updating the very last entry, tabulated-list-print would
11624         erase it and then try to look at the next one (which obviously
11625         isn't there).
11627 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
11629         Allow to use the old key processing code on MS-Windows
11630         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
11631         New variable.
11632         (w32_wnd_proc): Use it to invoke the old code that processed
11633         character keys, as fallback, when this variable is non-nil.
11634         Fix typos in comments.  (Bug#19994)
11636 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
11638         Improve handling of Unicode keyboard input on MS-Windows
11639         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
11640         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
11641         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
11642         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
11643         successful, don't call TranslateMessage.  (Bug#19994)
11645 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
11647         Fix default-directory in changeset diffs after vc-print-log
11648         * lisp/vc/log-view.el (log-view-diff-common): Move the
11649         revision-granularity check back into log-view-diff-changeset.
11650         (log-view-diff-changeset): Bind default-directory to the current
11651         VC root.
11653         Rename project-directories to project-roots
11654         * lisp/progmodes/project.el (project-search-path-function)
11655         (project-search-path): Update the docstring.
11656         (project-directories): Rename to `project-roots', update all
11657         callers and implementations accordingly.
11658         (project-root): Remove.
11659         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
11660         as the default file mask.
11662 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
11664         Support long URLs in w32-shell-execute
11665         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
11666         and filename_to_ansi to convert the DOCUMENT argument, as it could
11667         be a URL that is not limited to MAX_PATH characters.  Instead, use
11668         MultiByteToWideChar directly, and allocate heap storage as
11669         required to accommodate the converted string.  Likewise with
11670         non-Unicode operation.  Ensure OPERATION is null-terminated, even
11671         if it is longer than 32K bytes.  (Bug#21158)
11673 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
11675         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
11677 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
11679         Add docs for display-buffer action display-buffer-use-some-frame
11680         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
11681         * doc/lispref/windows.texi (Display Action Functions):
11682         Add display-buffer-use-some-frame.
11683         * etc/NEWS: Mention display-buffer-use-some-frame.
11685         Add display-buffer action display-buffer-use-some-frame
11686         * lisp/window.el (display-buffer-use-some-frame): New.
11688         Handle vc-mtn error more gently
11689         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
11690         branch is nil.
11692 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
11694         Fix Tramp problems with multihops, and nc
11695         * lisp/net/tramp-cache.el (tramp-get-file-property)
11696         (tramp-set-file-property, tramp-flush-file-property)
11697         (tramp-get-connection-property, tramp-set-connection-property)
11698         (tramp-flush-connection-property): Remove hop from vector.
11699         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
11700         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
11701         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
11702         netstat to 60".
11703         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
11704         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
11705         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
11706         Keep hop in result.
11707         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
11708         Add hop tests.
11710 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
11712         Resurrect highlighting of repeated words by Flyspell Mode
11713         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
11714         characters between point and the doublon candidate, so that
11715         flyspell-word-search-backward finds it.  (Bug#21157)
11717         Fix redisplay of large images on expose events
11718         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
11719         between signed negative values and unsigned values.  This
11720         prevented redisplay on expose events when the window showed a very
11721         large image.
11723 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
11725         Remove unnecessary stack overflow dependency
11726         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
11727         Don't worry about $ac_cv_header_sys_resource_h and
11728         $ac_cv_func_getrlimit, as they're no longer needed for this.
11729         Problem reported by Eli Zaretskii in:
11730         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
11732 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
11734         Pacify compilation -Wincompatible-pointer-types warnings
11735         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
11736         warning.
11737         (CompareStringW_Proc): New typedef.
11738         (w32_compare_strings): Use it, to pacify compiler warnings under
11739         "-Wincompatible-pointer-types".
11740         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
11741         (GetDiskFreeSpaceExA_Proc): New typedefs.
11742         (Ffile_system_info): Use them, to pacify compiler warnings under
11743         "-Wincompatible-pointer-types".
11745 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
11747         Fix subscript error in calculate_direct_scrolling
11748         Use slightly-longer cost vectors.  Without this change,
11749         calculate_direct_scrolling can have a subscript violation when
11750         FRAME_LINES (frame) <= delta.
11751         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
11752         (line_ins_del, do_line_insertion_deletion_costs):
11753         Allocate and use slightly-larger cost vectors, ones based on
11754         FRAME_TOTAL_LINES instead of FRAME_LINES.
11756         Fix uninitalized value in encode_coding_object
11757         * src/coding.c (encode_coding_object): Also initialize
11758         coding->src_pos and coding->src_pos_byte when NILP (src_object).
11759         This avoids later use of uninitialized storage.
11761 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
11763         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
11764         (Bug#21141)
11766 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
11768         Merge from gnulib
11769         This incorporates:
11770         2015-07-27 time_rz: port better to MinGW
11771         2015-07-27 time: port __need_time_t to MinGW
11772         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11773         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
11774         * lib/time-internal.h: New file, from gnulib.
11776 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
11778         Handle NULL pointers in w32heap.c allocation routines
11779         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
11780         freeable".
11781         (realloc_after_dump, realloc_before_dump, free_before_dump):
11782         Handle NULL pointers gracefully, as Emacs now seems to expect that.
11784         Fix Cairo build without PNG
11785         * src/image.c: Define PNG function when USE_CAIRO is defined, even
11786         if HAVE_PNG is not.  (Bug#21133)
11788         MS-Windows follow-up for recent TZ-related changes
11789         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
11790         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
11791         picking up 'struct timespec' from pthread.h, if it is installed on
11792         the user's system.  We want either the definitions from MinGW
11793         system headers, if available, or the Gnulib replacements if not.
11794         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
11795         lib/time.h.
11796         * lib/time.in.h: Don't let __need_* symbols affect what happens on
11797         MinGW.  These symbols are defined by MinGW system headers, but we
11798         don't want that to affect whether Gnulib portions of the header
11799         are or aren't used.
11801 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
11803         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
11805         New optional ZONE arg for format-time-string etc.
11806         This simplifies time conversions in other time zones.
11807         It also prevents display-time-world tampering with TZ (Bug#21020).
11808         * admin/admin.el (add-release-logs):
11809         Use improved add-log-time-format API.
11810         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
11811         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
11812         * configure.ac (tzalloc): Remove test for this, since
11813         Emacs no longer uses HAVE_TZALLOC directly.
11814         * doc/lispref/os.texi (Time of Day, Time Conversion)
11815         (Time Parsing):
11816         * etc/NEWS: Document the new behavior.
11817         Merge from gnulib, incorporating:
11818         2015-07-25 strftime: fix newly-introduced bug on Solaris
11819         2015-07-23 fprintftime, strftime: use timezone_t args
11820         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11821         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
11822         * m4/time_h.m4:
11823         Update from gnulib.
11824         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
11825         New files from gnulib.
11826         * lisp/time-stamp.el (time-stamp-string):
11827         * lisp/time.el (display-time-world-list)
11828         (display-time-world-display):
11829         Use new API, with time zone arg.
11830         * lisp/time.el (display-time-world-display):
11831         Fix race when current-time advances while we're running.
11832         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
11833         (add-log-iso8601-time-string): Accept optional time zone arg.
11834         * lisp/vc/add-log.el (add-change-log-entry):
11835         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
11836         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
11837         Add rules for the time module, since they're now needed
11838         for tzalloc etc.
11839         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
11840         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
11841         * src/editfns.c: Include errno.h.
11842         (set_time_zone_rule): Omit unnecessary forward decl.
11843         (initial_tz): Remove, replacing with ...
11844         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
11845         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
11846         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
11847         (tzlookup): New static functions.
11848         (init_editfns): New arg DUMPING.  All uses changed.
11849         (init_editfns): Omit most initialization if dumping, not if
11850         !initialized.  Initialize wall_clock_tz and local_tz.
11851         (emacs_nmemftime, format_time_string): Time zone argument can now
11852         be any time zone, not just a boolean for UTC or local time.  All
11853         callers changed.
11854         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
11855         (Fcurrent_time_zone): New optional arg ZONE.
11856         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
11857         the same form as with the other new additions.
11858         (decode_time_zone): Remove; no longer needed.
11859         (tzvalbuf): Now file-scope.
11860         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
11861         (syms_of_editfns): Define Qwall.
11862         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
11863         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
11864         [!HAVE_TZALLOC]:
11865         Remove; now supplied by gnulib.
11866         * src/emacs.c (main):
11867         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
11869 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
11871         Fix infinite loop in delete-consecutive-dups
11872         * lisp/subr.el (delete-consecutive-dups): Work even if the last
11873         element is nil (Bug#20588).  Avoid rescan of a circular list in
11874         deletion of last element.
11876 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
11878         Have `x-frame-geometry' return nil for terminal and initial
11879         frames (Bug#21132)
11880         * src/nsfns.m (Fx_frame_geometry):
11881         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
11882         terminal frames.
11883         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
11884         (Fx_frame_geometry): Return nil for terminal frames
11886 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
11888         * etc/tutorials/TUTORIAL.ja: Improve translation.
11890 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
11892         Avoid crashes when w32 GUI functions are called in -batch
11893         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
11894         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
11895         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
11897         Fix flyspell-check-previous-highlighted-word
11898         * lisp/textmodes/flyspell.el
11899         (flyspell-check-previous-highlighted-word): Really accept a
11900         numeric argument, as the doc string describes.  Fix an off-by-one
11901         error in looking up overlays, so invocation with point immediately
11902         after a word would check that word.  Clarify the doc string as
11903         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
11905 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
11907         Minor cleanup in tramp-tests.el
11908         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
11909         Implement using the documented interface
11910         `tramp-connection-properties', rather than with internal functions.
11912 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
11914         Pass lambdas to `skeleton-read'
11915         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
11916         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
11917         lambdas to `skeleton-read' (bug#20386).
11919 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
11921         * INSTALL (DETAILED BUILDING AND INSTALLATION):
11922         Mention --without-imagemagick.
11924         Don't require GUI frames and mouse for Flyspell menus
11925         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
11926         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
11927         support, since pop-up menus work with text terminals and can be
11928         controlled via the keyboard.
11930         Improve documentation of Flyspell commands
11931         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
11932         can be invoked via the keyboard.  Mention those commands by name
11933         and add them to the fn index.  (Bug#21125)
11935 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
11937         Fix some Tramp problems with HP-UX
11938         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11939         Add "tab0" to stty call.
11940         * test/automated/tramp-tests.el (tramp-persistency-file-name):
11941         Set to nil.
11942         (tramp--test-hpux-p): New defun.
11943         (tramp--test-utf8): Use it.
11945 2015-07-22  Glenn Morris  <rgm@gnu.org>
11947         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
11949 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
11951         Fix point positioning in ffap-next-guess
11952         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
11953         as our callers expect.  This was clobbered as part of fixing
11954         bug#5673.  (Bug#21107)
11955         (ffap-gopher-at-point): Set ffap-string-at-point-region.
11957 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
11959         * lisp/window.el (even-window-sizes): Fix customization type.
11961         Optionally even widths of `display-buffer' windows.  (Bug#21100)
11962         * lisp/window.el (quit-restore-window): Restore width if
11963         requested.
11964         (display-buffer-record-window): Record width when window is
11965         reused and horizontally combined.
11966         (even-window-sizes): New option to allow evening window widths.
11967         (even-window-heights): Defalias to `even-window-sizes'.
11968         (window--even-window-heights): Rename to
11969         `window--even-window-sizes'.  Handle side-by-side windows.
11970         (display-buffer-use-some-window): Call `window--even-window-sizes'
11971         instead of `window--even-window-heights'.
11972         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
11973         * doc/lispref/windows.texi (Choosing Window Options): Describe
11974         `even-window-sizes'.
11975         (Coordinates and Windows): Fix typo.
11977 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
11979         Add file name to autoload error messages
11980         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
11981         Add condition-case to add file name to error message.
11983 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
11985         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
11986         Use 0.0.0.1 as test host.
11988 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
11990         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
11991         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
11992         Fix inf-loop (bug#21083).
11994 2015-07-21  Glenn Morris  <rgm@gnu.org>
11996         * test/automated/package-test.el (package-test-signed):
11997         Update for recent changes.
11999         * test/automated/elisp-mode-tests.el
12000         (elisp-xref-finds-both-function-and-variable)
12001         (elisp-xref-finds-only-function-for-minor-mode):
12002         Update for recent xref name changes.
12004 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
12006         Make eldoc timer non-repeatable
12007         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
12008         non-repeatable.  Since it's on post-command hook, that just wasted
12009         CPU cycles.
12011 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
12013         Mention `tramp-connection-properties' in NEWS
12015         Sync with Tramp repository
12016         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
12017         required prior changing its configuration.
12018         (Connection caching, Predefined connection information)
12019         (Remote shell setup): Fix typos.
12020         (Predefined connection information): Describe, how to overwrite
12021         parameters of `tramp-methods'.
12022         (Remote programs, Remote processes, Traces and Profiles):
12023         Simplify example.
12024         (Remote programs): Remove superfluous comment.
12025         * doc/misc/trampver.texi: Update release number.
12026         * lisp/net/tramp-cache.el (tramp-connection-properties):
12027         Adapt docstring.
12028         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
12029         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
12030         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
12031         "gvfs-mkdir -p ..." does not work robust.
12032         (tramp-gvfs-maybe-open-connection):
12033         Adapt `tramp-get-method-parameter' call.
12034         * lisp/net/tramp-sh.el (tramp-methods):
12035         Add `tramp-remote-shell-login' parameter where it fits.
12036         (tramp-get-remote-path): Use it.
12037         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
12038         (all): Adapt `tramp-get-method-parameter' calls.
12039         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
12040         (tramp-get-method-parameter): Replace argument METHOD by VEC.
12041         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
12042         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
12043         (all): Adapt `tramp-get-method-parameter' calls.
12044         * lisp/net/trampver.el Update release number.
12045         * test/automated/tramp-tests.el (tramp--instrument-test-case):
12046         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
12047         (tramp-test13-make-directory, tramp--test-adb-p)
12048         (tramp--test-smb-or-windows-nt-p): Simplify.
12049         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
12050         (tramp--test-special-characters): Fix docstring.  Add gvfs and
12051         ftp tests.
12052         (tramp--test-utf8): Fix docstring.
12054 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
12056         Add new xref-query-replace command
12057         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
12058         New function, extracted from xref-pulse-momentarily.
12059         (xref-query-replace): New command.
12060         (xref--query-replace-1): New helper function.
12061         (xref--xref-buffer-mode-map): Add `r' binding.
12063 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
12065         Simplify icalendar decoding of Z dates
12066         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
12067         Simplify calculation of time strings with trailing "Z".
12069 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
12071         Do not corrupt grep-find-ignored-files
12072         * lisp/progmodes/project.el (project-ignores): Change the order of
12073         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
12075         Add xref-match-item, and use it
12076         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
12077         (xref-file-location): Add reader for the column slot.
12078         (xref-match-item): New class.
12079         (xref-match-bounds): A method implementation for it.
12080         (xref-make-match): New constructor function.
12081         (xref--current-item): New private variable.
12082         (xref-pulse-momentarily): Use it.
12083         (xref--pop-to-location): Change the first argument to an xref
12084         item, instead of location, bind xref--current-item.
12085         Update all callers.
12086         (xref-next-line, xref-prev-line, xref--next-error-function)
12087         (xref--mouse-2): Look for the property `xref-item',
12088         instead of `xref-location'.
12089         (xref--item-at-point): Likewise.  This function replaces
12090         `xref-location-at-point'.  Update all callers.
12091         (xref--insert-xrefs): Add the `xref-item' text property, instead
12092         of `xref-location'.
12093         (xref--collect-match): Use xref-make-match.
12095         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
12096         Update all references.
12098         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
12099         slot to `summary'.
12101         vc-hg: Perform the print-log call asynchronously
12102         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
12103         asynchronously (bug#21067).
12105         Add xref-after-jump-hook and xref-after-return-hook
12106         * lisp/progmodes/xref.el (xref-after-jump-hook)
12107         (xref-after-return-hook): New hooks.
12108         (xref-pulse-on-jump): Remove, in favor of the above.
12109         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
12110         (xref--pop-to-location, xref--display-position)
12111         (xref-pop-marker-stack): Use the new hooks, as requested in
12112         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
12114 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
12116         * lisp/progmodes/js.el (js-mode): Correct the lighter.
12118 2015-07-19  Leo Liu  <sdl.web@gmail.com>
12120         Fix a bug in cfengine3-mode
12121         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
12122         eldoc-documentation-function.
12124 2015-07-18  Julien Danjou  <julien@danjou.info>
12126         sieve-mode: support "body" test command
12127         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
12128         Add missing "body" test command.
12130 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12132         Fix info-apropos when the default encoding is Latin-N
12133         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
12134         'undecided', so that it is set to the encoding of the Info file we
12135         are about to insert.  Otherwise, 'info-apropos' will fail to find
12136         some index nodes in some UTF-8 encoded files, if the buffer's
12137         previous encoding is Latin-N or some such.
12139 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
12141         * lisp/epg.el (epg--start): Check that gpgconf can be found
12142         before calling it.
12144         Expose more file types to OS X that Emacs understands
12145         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
12146         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
12148 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12150         Fix visual-order cursor movement when lines are truncated
12151         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
12152         simulate display in a window of infinite width, to allow move_it_*
12153         functions reach positions outside of normal window dimensions.
12154         Remove code that tried to handle a subset of these situations by
12155         manual iteration of buffer text.  (Bug#17777)
12157         Fix following Info cross-references to anchors
12158         * lisp/info.el (Info-read-subfile): Add to the returned value the
12159         length of subfile preamble, after converting it to file's byte
12160         offset, as expected by the caller.  Use bufferpos-to-filepos.
12161         (Info-find-node-2): If searching for a node with a
12162         1000-character slop fails, try again with a 10000-character slop,
12163         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
12164         * lisp/international/mule-util.el (bufferpos-to-filepos): New
12165         function.
12166         * etc/NEWS: Mention bufferpos-to-filepos.
12168         Fix scrolling backwards on TTY frames under scroll-conservatively
12169         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
12170         in moving backwards on TTY frames.  (Bug#21080)
12172 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
12174         Consider a jsdoc tag to be a beginning of a paragraph as well
12175         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
12176         consider a jsdoc tag to be a beginning of a paragraph as well.
12178 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12180         * lisp/emacs-lisp/package.el: Fix warnings.
12182         * lisp/emacs-lisp/package.el (package-buffer-info):
12183         Add author and maintainers to `package-buffer-info'.
12185         * lisp/emacs-lisp/package.el: Many small changes.
12186         Replace all instances of 'face with 'font-lock-face.
12187         (describe-package-1): Improve some strings and move the summary
12188         up the list.
12189         (package-install-file): Update docstring.
12190         (package-menu-hide-package): Bind to `H'.
12192         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12193         Fix error handling.
12195 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
12197         Fix hang with large yanks This should fix the bug fixed by Mike
12198         Crowe's patch in:
12199         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
12200         A problem in this area has been reported by several users; see
12201         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
12202         This fix differs from Mike Crowe's patch in that it should avoid a
12203         race condition that could lose SIGIO signals.  ignore_sigio dates
12204         back to the 1980s when some platforms couldn't block signals, and
12205         could only ignore them, which led to races when signals arrived
12206         while being ignored.  We shouldn't have to worry about those old
12207         platforms now.
12208         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
12209         * src/emacs.c (shut_down_emacs):
12210         Don't call ignore_sigio; unrequest_sigio should suffice.
12211         * src/keyboard.c (kbd_buffer_store_buffered_event):
12212         Use unrequest_sigio, not ignore_sigio.
12213         (kbd_buffer_get_event):
12214         Call request_sigio when getting the ball rolling again.
12216 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12218         * lisp/obsolete/longlines.el (longlines-search-function):
12219         Fallback on `isearch-search-fun-default'.
12221 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
12223         Support @-mentions
12224         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
12225         of mentions/messages with @nick instead of just nick.
12227 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
12229         Fix bug#20943
12230         * lisp/autorevert.el (auto-revert-handler): Do not check for
12231         `buffer-modified-p'.
12232         * lisp/files.el (buffer-stale--default-function): Check for
12233         `buffer-modified-p'.
12234         * test/automated/auto-revert-tests.el
12235         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
12237 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
12239         Fix delete-dups bug on long lists
12240         * lisp/subr.el (delete-dups):
12241         Don't mistakenly keep some dups when applied to long lists.
12243 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
12245         Better heuristic for C stack overflow
12246         Improve the heuristic for distinguishing stack overflows from
12247         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
12248         the getrlimit method wasn't portable to Cygwin; see:
12249         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
12250         Corinna suggested pthread_getattr_np but this also has problems.
12251         Instead, replace the low-level system stuff with a simple
12252         heuristic based on known good stack addresses.
12253         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
12254         * src/sysdep.c: Don't include <sys/resource.h>.
12255         (stack_direction): Remove.  All uses removed.
12256         (stack_overflow): New function.
12257         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
12258         Make SEGV fatal in non-main threads.
12260 2015-07-16  Daiki Ueno  <ueno@gnu.org>
12262         epg: Automatically start pinentry server
12263         * lisp/epg-config.el (epg-gpgconf-program): New variable.
12264         * lisp/epg.el (epg--start): Call `pinentry-start' if
12265         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
12267 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
12269         * lisp/gnus/nnimap.el: Fix my last bogus change.
12270         Reinstall Stefan Monnier's change that was made in
12271         <83d824bc4041332f338ad7e5e830f443535aa300>.
12273 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
12275         Merge from gnulib
12276         This incorporates:
12277         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
12278         2015-07-05 acl-permissions: Fix on FreeBSD
12279         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
12280         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
12281         * lib/set-permissions.c: Copy from gnulib.
12283         Port to stricter C99
12284         * src/keyboard.h (kbd_buffer_store_event_hold):
12285         Don't return a void expression.
12287 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
12289         * doc/emacs/frames.texi (Creating Frames):
12290         Fix the command `C-x 5 m' runs.
12292 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
12294         New autorevert tests
12295         * test/automated/auto-revert-tests.el: New file.
12297 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
12299         Clear gcprolist etc. after stack overflow
12300         After stack overflow, command_loop calls init_eval, and this needs to
12301         clear gcprolist and byte_stack_list (Bug#20996).
12302         * src/alloc.c (init_alloc):
12303         Move gcprolist and byte_stack_list initialization from here ...
12304         * src/eval.c (init_eval): ... to here.
12306 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
12308         * doc/emacs/windows.texi (Pop Up Window): Fix the description
12309         of `C-x 4 m'.
12311 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12313         Avoid deprecated enums in mac-ct font backend driver
12314         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
12315         (mac_ctfont_get_advance_width_for_glyph)
12316         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
12318         Cache font family in mac-ct font backend driver
12319         * src/macfont.m (macfont_family_cache): New variable.
12320         (syms_of_macfont): Initialize it.
12321         (macfont_available_families_cache): New variable.
12322         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
12323         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
12324         (macfont_handle_font_change_notification)
12325         (macfont_init_font_change_handler)
12326         (macfont_copy_available_families_cache): New functions.
12327         (macfont_create_family_with_symbol): Use font family caches.
12328         (macfont_list, macfont_list_family):
12329         Use macfont_copy_available_families_cache instead of
12330         mac_font_create_available_families.
12332 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
12334         Show the default value in the prompt
12335         * lisp/progmodes/xref.el: Add `M-?' binding for
12336         xref-find-references.  Declare functions `grep-read-files' and
12337         `grep-expand-template'.
12338         (xref--read-identifier): Show the default value in the prompt.
12340         * lisp/progmodes/xref.el (xref-find-regexp): When called with
12341         prefix argument, ask for file patterns to search as well.  When
12342         prompting for the directory, require an existing one.
12343         (xref-collect-matches): Add a new argument, FILES.  Use it in the
12344         above function.
12346         Add `project-ignores'
12347         * lisp/progmodes/project.el (project-ignores): New generic
12348         function, and an implementation for the VC project type.
12349         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
12350         variant of rgrep-default-command that handles a generic list of
12351         ignores.
12352         (xref-collect-matches): Use it, and pass through to it the value
12353         of the newly added argument.
12354         (xref-find-regexp): Handle ignored paths within the project.
12355         Remove outdated comment.
12356         * lisp/vc/vc.el (vc-default-ignore-completion-table):
12357         Skip the comments and the empty lines.
12359 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
12361         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
12363 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
12365         gnus-registry.el: Correct function argument order
12366         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
12367         Reverse the order of function arguments.
12369 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
12371         Bind grep-highlight-matches to nil
12372         * lisp/progmodes/xref.el (xref-collect-matches):
12373         Bind grep-highlight-matches to nil (bug#20728).
12375 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
12377         nnimap.el: Fix IMAP message size parsing
12378         * lisp/gnus/nnimap.el (nnimap-transform-headers):
12379         Don't assume that UID comes before RFC822.SIZE.
12381 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12383         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
12384         (auth-source-creation-prompts): Declare.
12385         (nnimap-retrieve-headers, nnimap-status-message)
12386         (nnimap-request-create-group, nnimap-request-delete-group)
12387         (nnimap-close-group, nnimap-request-move-article)
12388         (nnimap-request-accept-article, nnimap-request-newgroups)
12389         (nnimap-request-post, nnimap-dummy-active-number)
12390         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
12391         (nnimap-parse-flags): Remove unused var `p'.
12392         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
12393         (nnimap-flags-to-marks): Remove unused var `totalp'.
12395 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
12397         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
12399 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12401         * src/macfont.m (macfont_list): Ignore font families lacking
12402         font descriptors.
12404 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12406         Don't check the exit status, it can be misleading
12407         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
12408         exit status, it can be misleading.
12410         Introduce a Project API
12411         * lisp/progmodes/project.el: New file.
12412         * lisp/cedet/ede.el (project-try-ede): New function.
12413         (project-root): New implementation.
12414         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
12415         Set project-search-path-function.
12416         (elisp--xref-find-references): Delegate some logic to
12417         project-search-path.
12418         (elisp-search-path): New function.
12419         (elisp-xref-find): Don't implement `matches' anymore.
12420         * lisp/progmodes/etags.el: Don't implement `matches'.
12421         Delegate some logic to project-search-path.
12422         (etags-search-path): New function.
12423         * lisp/progmodes/xref.el (xref-find-function):
12424         Remove `matches' from the API.
12425         (xref-find-regexp): Move whatever common logic was in elisp and
12426         etags implementations, and search the directories returned by
12427         project-directories and project-search-path.
12429 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
12431         * test/automated/map-tests.el (test-map-delete-return-value):
12432         Uncomment test.
12434         Add support for gv.el in map.el
12435         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
12436         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
12437         * test/automated/map-tests.el: Update tests to work with the new
12438         implementations of map-elt and map-put.
12440 2015-07-09  Glenn Morris  <rgm@gnu.org>
12442         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
12444 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12446         Syntax-propertize until the end of the line first
12447         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
12448         until the end of the line first.
12450 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
12452         * doc/emacs/files.texi (File Archives): Add a cross reference.
12454 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
12456         nnimap.el: Handle plain value for nnimap-stream
12457         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
12458         capabilities, so that a 'plain value for the `nnimap-stream' server
12459         variable is handled correctly.
12460         * doc/misc/gnus.texi (Customizing the IMAP Connection):
12461         Document the 'plain option.
12463 2015-07-08  Leo Liu  <sdl.web@gmail.com>
12465         Fix bug in thing-at-point--bounds-of-well-formed-url
12466         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
12467         sure boundary contains current point.
12469 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
12471         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
12472         in the end.
12474         Declare whitespace-line-column a safe file-local
12475         * lisp/whitespace.el (whitespace-line-column): Declare to be a
12476         safe file-local when the value is an integer.
12478 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
12480         gnus-group.el: Check if group names are already strings
12481         * lisp/gnus/gnus-group.el (gnus-group-group-name):
12482         The group name may already be a string.
12483         Specifically, in the group list reached from the *Server* buffer,
12484         the 'gnus-group text property returns a string.  Everywhere else
12485         it returns a symbol.
12487         nnimap.el: Remove unused let variables
12488         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
12490 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
12492         Support "maximized" property of runemacs's shortcut
12493         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
12494         the '--maximized' switch to Emacs.
12496         Support "minimized" property of runemacs's shortcut
12497         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
12498         pass the '--iconic' switch to Emacs.  (Bug#20991)
12500 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
12502         Doc fixes
12503         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
12504         C-w' in Diff mode.
12505         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
12506         Add a cross reference.
12508 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
12510         * lisp/obsolete/landmark.el: Add Obsolete-since header.
12512 2015-07-07  Glenn Morris  <rgm@gnu.org>
12514         * test/automated/ert-tests.el (ert-test-deftest):
12515         Update for recent changes.
12517 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12519         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
12520         * lisp/emacs-lisp/gv.el (gv-setter): New function.
12521         (gv-invalid-place): New error.
12522         (gv-get): Use them.
12523         (gv-synthetic-place, gv-delay-error): New places.
12524         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
12525         (cl-defgeneric, cl-defmethod): Use gv-setter.
12527 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
12529         Make vc-tests work with MSYS svn program
12530         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
12531         svn is an MSYS program.
12533 2015-07-07  Ken Brown  <kbrown@cornell.edu>
12535         Improve recent change to emacsclient on Cygwin
12536         * lisp/server.el (server-process-filter): Remove redundant check
12537         that 'cygwin-convert-file-name-from-windows' is defined as a
12538         function on Cygwin.  Don't call that function unless its argument
12539         starts with a drive letter.
12541 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12543         * lisp/emacs-lisp/package.el (package-compute-transaction):
12544         Fix void variable due to `found-something' being in the wrong `let'.
12546 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12548         * lisp/play/landmark.el: Move to lisp/obsolete/.
12550 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
12552         Have `x-show-tip' handle `right' and `bottom' frame parameters
12553         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
12554         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
12555         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
12556         tooltips also via `right' and `bottom' frame parameters.
12558 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12560         Add online-help support to describe types
12561         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
12562         (describe-symbol): Improve the selection of default.
12563         * lisp/help-mode.el: Require cl-lib.
12564         (describe-symbol-backends): Move from help-fns.el.
12565         (help-make-xrefs): Use it.
12566         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
12567         for types.
12568         (cl--typedef-regexp): New const.
12569         (find-function-regexp-alist): Add entry for types.
12570         (cl-help-type, cl-type-definition): New buttons.
12571         (cl-find-class): New function.
12572         (cl-describe-type): New command.
12573         (cl--describe-class, cl--describe-class-slot)
12574         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
12575         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
12576         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
12577         New functions.  Moved from eieio-opt.el.
12578         (cl--generic-class-parents): New function, extracted from
12579         cl--generic-struct-specializers.
12580         (cl--generic-struct-specializers): Use it.
12581         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
12582         Improve constructor's docstrings.
12583         (cl-struct-unknown-slot): New error.
12584         (cl-struct-slot-offset): Use it.
12585         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
12586         definition in current-load-list.
12587         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
12588         (eieio--add-new-slot): Set it.
12589         (eieio-defclass-internal): Use new name for current-load-list.
12590         (eieio-oref): Add compiler-macro to warn about unknown slots.
12591         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
12592         as compile-time as well.  Improve constructor docstrings.
12593         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
12594         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
12595         (eieio-class-def): Remove button.
12596         (eieio-help-constructor): Use new name for load-history element.
12597         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
12598         (eieio-method-documentation): Move to cl-generic.el.
12599         (eieio-display-method-list): Use new names.
12600         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
12601         Add "define-linline".
12602         (lisp-fdefs): Remove "defsubst".
12603         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
12604         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
12605         (macroexp--warn-and-return): Use it to avoid inf-loops.
12606         Add `compile-only' argument.
12608 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12610         python.el: Fix local/remote shell environment setup
12611         * lisp/progmodes/python.el (python-shell-with-environment):
12612         Fix remote/local environment setup.
12613         * test/automated/python-tests.el (python-shell-with-environment-1)
12614         (python-shell-with-environment-2): New tests.
12616 2015-07-06  Glenn Morris  <rgm@gnu.org>
12618         * lisp/simple.el (set-variable): Tweak recent doc fix.
12620 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12622         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
12624 2015-07-06  Glenn Morris  <rgm@gnu.org>
12626         * lisp/simple.el (set-variable): Use user-error for type mismatch.
12628 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12630         * src/emacs.c (main): Don't increase the stack size on Cygwin.
12632 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
12634         (describe-symbol): Rewrite describe-function-or-variable
12635         * lisp/help-fns.el (describe-symbol-backends): New var.
12636         (help-xref-stack-item): Declare.
12637         (describe-symbol): Rename from describe-function-or-variable.
12638         Rewrite using describe-symbol-backends instead of help-xref-interned.
12639         * lisp/help.el (help-map): Use it.
12640         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
12641         (help-xref-interned): Make it into an obsolete alias.
12643         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
12644         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
12645         and cl-letf.
12647 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
12649         Fix parsing glitches in dired-mark-sexp (bug#13575)
12650         * lisp/dired-x.el (dired-x--string-to-number): New function.
12651         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
12652         of directory-listing-before-filename-regexp.  Consider
12653         forward-word harmful and replace it.  Add more verbiage in
12654         comments and doc string.
12656 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12658         python.el: Respect process environment for remote shells
12659         * lisp/progmodes/python.el
12660         (python-shell-calculate-process-environment): Calculate
12661         process-environment or tramp-remote-process-environment depending
12662         whether current file is remote.
12663         (python-shell-calculate-exec-path): Calculate exec-path or
12664         tramp-remote-path depending whether current file is remote.
12665         (python-shell-with-environment): New macro.
12666         (python-shell-prompt-detect, python-shell-calculate-command)
12667         (python-shell-make-comint, python-check): Use it.
12669         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
12670         * lisp/progmodes/python.el (python-shell--interpreter)
12671         (python-shell--interpreter-args): New vars.
12672         (inferior-python-mode, python-shell-make-comint): Use them.
12674         python.el: Fixes for IPython 3.x  (Bug#20580)
12675         * lisp/progmodes/python.el:
12676         (python-shell-completion-native-setup): Fix IPython 3.x setup.
12677         (python-shell-completion-native-get-completions): Fix timeout
12678         logic.
12680         python.el: Fix mark-defun behavior  (Bug#19665)
12681         * lisp/progmodes/python.el (python-mark-defun): New function.
12682         * test/automated/python-tests.el (python-mark-defun-1)
12683         (python-mark-defun-2, python-mark-defun-3): New tests.
12685 2015-07-05  Glenn Morris  <rgm@gnu.org>
12687         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
12688         such as "extends(parent), private".  (Bug#20969)
12689         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
12690         New tests.
12692 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
12694         Avoid duplicate calls to current_timespec
12695         * src/process.c (wait_reading_process_output):
12696         Cache current_timespec results as long as we're not waiting.
12698 2015-07-05  Ian Kelling  <ian@iankelling.org>
12700         Avoid returning early reading process output due to SIGIO
12701         * src/process.c (wait_reading_process_output): Extend the behavior of
12702         not breaking due to not finding output when a timer has lowered the
12703         timeout to include when SIGIO lowers the timeout.
12705         Don't return as fast reading any process output
12706         * src/process.c (wait_reading_process_output):
12707         The patch for Bug#17647 returns too fast sometimes when reading
12708         from any processes.  Revert part of it, and limit the timeout more
12709         sensibly (Bug#20978).
12711         Refactor timeouts in wait_reading_process_output
12712         * src/process.c (wait_reading_process_output):
12713         Simplify timeouts with an enum.  Remove a redundant condition.
12714         (Bug#20978)
12716         Remove ADAPTIVE_READ_BUFFERING ifdef
12717         * src/process.c (make-process, make-pipe-process, deactivate_process)
12718         (wait_reading_process_output, read_process_output, send_process)
12719         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
12720         added in case there was an operating system in which it was not
12721         useful.  That was 11 years ago and it hasn't happened.  Make
12722         development easier by not considering the effect of changes on a
12723         theoretical OS where this is disabled (Bug#20978).
12725 2015-07-05  Glenn Morris  <rgm@gnu.org>
12727         * lisp/simple.el (set-variable): Doc fix.
12729         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
12731 2015-07-05  Ian Kelling  <ian@iankelling.org>
12733         accept-process-output fix
12734         This is a followon to the fix for bug#17647 (Bug#20976).
12735         * src/process.c (status_notify): Fix too high return in some cases.
12737 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
12739         * lisp/character-fold.el (character-fold-table):
12740         Only fold decompositions if at least one character is non-spacing.
12741         (Bug#20975)
12743 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
12745         Merge from gnulib
12746         This incorporates:
12747         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
12748         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
12749         2015-07-02 update-copyright: fix test failure with perl >= 5.22
12750         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
12751         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
12752         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
12753         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
12755 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
12757         Respect `prog-indentation-context' in python.el
12758         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
12759         (python-indent-context, python-indent--calculate-indentation)
12760         (python-info-current-defun)
12761         (python-info-dedenter-opening-block-message)
12762         (python-info-line-ends-backslash-p)
12763         (python-info-beginning-of-backslash)
12764         (python-info-continuation-line-p): Use `prog-widen'.
12765         (python-indent--calculate-indentation)
12766         (python-indent--calculate-levels)
12767         (python-indent-calculate-indentation): Use `prog-first-column'.
12768         (python-indent--calculate-levels): Simplify.
12769         Ignore also initial empty lines for syntax calculation.
12770         * lisp/progmodes/python.el (python-indent-context): Return
12771         :no-indent for first non-empty line, not just in line 1.
12772         * test/automated/python-tests.el (python-indent-base-case)
12773         (python-indent-inside-paren-1, python-indent-inside-paren-2)
12774         (python-indent-inside-paren-3, python-indent-inside-paren-4)
12775         (python-indent-inside-paren-5, python-indent-inside-paren-6)
12776         (python-indent-after-backslash-1)
12777         (python-indent-after-backslash-2)
12778         (python-indent-after-backslash-3)
12779         (python-indent-after-backslash-4, python-indent-inside-string-1):
12780         Expect :no-indent for first non-empty line.
12782 2015-07-04  Daniel Colascione  <dancol@dancol.org>
12784         Factor isearch word description into new function
12785         * lisp/isearch.el (isearch--describe-word-mode): New function.
12786         (isearch-message-prefix, isearch-query-replace): Use it.
12788 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
12790         Fix mouse pointer on w32 when a menu is active
12791         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
12792         shape while a menu is in use.  This started happening since we now
12793         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
12795 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
12797         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
12798         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
12799         parameter.  (Bug#17344)
12801         Have `compilation-set-window' use right window for getting fringes
12802         (Bug#20829)
12803         * lisp/progmodes/compile.el (compilation-set-window):
12804         Take `window-fringes' from argument window.
12806 2015-07-03  Glenn Morris  <rgm@gnu.org>
12808         Update eieio tests for recent eieio-core change.
12809         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
12810         * test/automated/eieio-tests.el
12811         (eieio-test-32-slot-attribute-override-2):
12812         Replace the deleted eieio--class-v with cl--find-class.
12814 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
12816         Fix some issues with `window-divider-mode'
12817         * lisp/frame.el (window-divider-default-places): New option.
12818         (window-divider-mode): Remove option.
12819         (window-divider-mode): Make it a "regular" minor mode.
12820         (window-divider-width-valid-p): Drop frame- prefix.
12821         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
12822         prefix.  Handle `window-divider-default-places'.
12823         (frame--window-divider-mode-set-and-apply): Remove.
12824         (window-divider-default-bottom-width)
12825         (window-divider-default-right-width): Drop :group entries.
12826         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
12827         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
12828         (menu-bar-no-window-divider): Set `window-divider-default-places'
12829         and call `window-divider-mode'.
12830         * doc/emacs/frames.texi (Window Dividers): Document
12831         `window-divider-default-places'.
12833 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
12835         * doc/emacs/display.texi (Displaying Boundaries):
12836         * doc/emacs/search.texi (Word Search): Add cross references.
12838 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12840         -batch should not affect ‘’ -> `' display
12841         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
12842         -batch (Bug#20926).
12844 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12846         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
12847         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
12848         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
12849         Use cl--find-class instead.
12851         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
12853 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
12855         Some further fixes in Change Window node (Bug#20183)
12856         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
12857         by "resizing" in section title.  Add some concept indices.
12858         Suggested by N. Jackson (Bug#20183).
12860         * doc/emacs/windows.texi (Change Window): Reference window
12861         dividers.
12863         Document new `window-divider-mode'.
12864         * lisp/frame.el (window-divider-mode): Fix doc-string.
12865         * doc/emacs/frames.texi (Window Dividers): New section.
12867         Improve accessibility of window dividers (Bug#20183)
12868         * lisp/faces.el (window-divider)
12869         (window-divider-first-pixel, window-divider-last-pixel): Change
12870         membership from `frames' to `window-divider' customization group.
12871         * lisp/frame.el (window-divider): New customization group.
12872         (window-divider-mode): New minor mode.
12873         (window-divider-default-bottom-width)
12874         (window-divider-default-right-width): New options.
12875         (frame--window-divider-previous-mode): New variable.
12876         (frame-window-divider-width-valid-p)
12877         (frame--window-divider-mode-apply)
12878         (frame--window-divider-mode-set-and-apply): New functions.
12879         * lisp/menu-bar.el (menu-bar-options-save): Save
12880         window-divider-mode settings.
12881         (menu-bar-window-divider-customize)
12882         (menu-bar-bottom-and-right-window-divider)
12883         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
12884         (menu-bar-no-window-divider): New functions.
12885         (menu-bar-showhide-window-divider-menu): New variable.
12886         (menu-bar-showhide-menu): Show/hide window divider menu.
12887         * lisp/mouse.el (mouse-split-window-vertically)
12888         (mouse-split-window-horizontally): Replace `error' by
12889         `user-error'.  Bind `window-combination-resize' to nil.
12890         (top-level): Add/reorder mouse key bindings on mode- and
12891         vertical-line.
12893 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12895         Don't display ‘’ as `' under X in en_GB
12896         The curved quote setup code invokes (char-displayable-p ?‘),
12897         but this isn’t reliable until after the X frame replaces the
12898         terminal frame (Bug#20926).
12899         * lisp/international/mule-cmds.el (set-locale-environment):
12900         Move curved quote setup code from here ...
12901         * lisp/startup.el (command-line): ... to here, after creating
12902         the X frame.
12904 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
12906         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
12908         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
12909         to reverse the meaning (Bug#15631).
12911 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
12913         Be more tolerant to fonts named "Foobar-12"
12914         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
12915         don't barf; instead, request a new fontset to be generated.  This
12916         avoids unnecessarily rejecting fonts named against XLFD rules.  See
12917         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
12918         for the description of the original problem.
12919         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
12920         by a hyphen in a font's name.
12922         Fix value of posn-at-pont in R2L lines
12923         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
12924         coordinate of -1, for a newline in a right-to-left line that
12925         overflowed into the left fringe.
12927 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
12929         (cl--copy-slot-descriptor): Copy the `props' alist as well
12930         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
12931         Rename from cl--copy-slot-descriptor.
12932         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
12934 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12936         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
12937         (xterm-query-timeout): New var.
12938         (xterm--query): Use it.  Fallback on async method if we timeout before
12939         getting the first byte of the reply (bug#12354).
12941 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12943         Spelling fixes
12944         * lisp/character-fold.el (character-fold-search):
12945         * lisp/emacs-lisp/package.el (package-hidden-regexps):
12946         Fix typos.
12948 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12950         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
12952 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12954         In strings, prefer plain ` and ' to \` and \'
12955         * lisp/allout.el (allout-insert-listified):
12956         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
12957         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
12958         (ls-lisp-string-lessp):
12959         * lisp/menu-bar.el (menu-bar-open):
12960         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
12961         * lisp/progmodes/compile.el (compile):
12962         * lisp/progmodes/etags.el (tags-loop-scan):
12963         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
12964         * lisp/subr.el (posn-actual-col-row):
12965         * lisp/term/pc-win.el (x-list-fonts):
12966         * lisp/textmodes/texinfmt.el (texinfmt-version):
12967         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
12968         * lisp/time.el (display-time-world-list):
12969         * lisp/tmm.el (tmm-menubar):
12970         * src/buffer.c (syms_of_buffer):
12971         * src/fileio.c (syms_of_fileio):
12972         Omit unnecessary and confusing backslash before quote.
12973         * lisp/erc/erc.el (erc-cmd-LASTLOG):
12974         * lisp/progmodes/flymake.el (flymake-fix-file-name):
12975         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
12976         Fix string that was intended to escape a backslash and not a quote.
12978 2015-06-30  Glenn Morris  <rgm@gnu.org>
12980         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
12982         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
12983         Replace hard-coded lists with wildcard + filter-out.
12985         * configure.ac (system-configuration-features): Add X11, NS.
12987         Improve reproducibility of generated loaddefs file
12988         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
12989         Make the return value the modtime of the input file (if no autoloads).
12990         (update-directory-autoloads): In the "no autoloads" section,
12991         use "most recent modtime" rather than "current time".
12993 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12995         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
12996         (Bug#20930)
12998 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
13000         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
13002         Add seq-min and seq-max
13003         Bump version number.
13004         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
13005         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
13007 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
13009         Make sure sleep-for always delays for as long as it's told
13010         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
13011         a loop, to ensure we always wait exactly the required amount of
13012         time.  (Bug#15990)
13014 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
13016         Fix pointer signedness glitch
13017         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
13019 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
13021         Don't block changes in mouse pointer inside 'track-mouse'
13022         * etc/NEWS:
13023         * doc/lispref/frames.texi (Mouse Tracking): Document the special
13024         effect of setting 'track-mouse' to 'dragging'.
13025         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
13026         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
13027         * lisp/mouse-drag.el (mouse-drag-throw):
13028         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
13029         to avoid changes in the shape of the mouse pointer.
13030         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
13031         pointer shape when do_mouse_tracking has the value of 'dragging',
13032         not just any non-nil value.  (Bug#20934)
13033         (syms_of_xdisp): DEFSYM 'dragging'.
13035 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13037         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
13039         * lisp/emacs-lisp/package.el (package-compute-transaction):
13040         Don't assume version sorting.
13042         * lisp/emacs-lisp/package.el (package--save-selected-packages):
13043         Don't save before init time, to avoid overwriting configurations.
13044         (Bug#20855)
13046 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
13048         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
13049         references.
13051 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
13053         Update for the upcoming CFEngine 3.7 release: support macros and
13054         quoted context strings; reformat JSON; indent promise attributes 2
13055         units by default; give function parameter descriptions in the eldoc
13056         glue.
13057         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
13058         Autoload `json-pretty-print'.  Support new features in 3.7.
13059         (cfengine-parameters-indent): Set default promise attribute indent to
13060         2 more than the promise itself.
13061         (cfengine3-macro-regex): New variable to match the new macro syntax.
13062         (cfengine3-font-lock-keywords): Use it to highlight macros.
13063         (cfengine3-indent-line): Use it to indent macros to column 0.
13064         (cfengine3-class-selector-regex): Update for the new quoted strings
13065         format.
13066         (cfengine3-reformat-json-string): New function to reformat a JSON
13067         string using `json-pretty-print'.
13068         (cfengine3-format-function-docstring): Use function parameter
13069         description if it's provided by the cf-promises syntax dump.
13071 2015-06-29  Michael R. Mauger  <michael@mauger.com>
13073         Cygwin emacsclient handles w32 file names
13074         * lisp/server.el (server-process-filter): Allow Cygwin's
13075         emacsclient to be used as a file handler on MS-Windows.
13077 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
13079         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
13080         (bug#20925).
13082 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
13084         * doc/lispref/text.texi (Sticky Properties): Improve wording.
13085         (Bug#20924)
13087         Allow font names that end in "-NN", where NN is a number
13088         * src/font.c (font_load_for_lface): If the font-spec didn't match
13089         any available fonts, try again without interpreting trailing "-NN"
13090         as the font size.  For the description of the original problem, see
13091         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
13093         .gdbinit followup to changes in !USE_LSB_TAG
13094         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
13095         !USE_LSB_TAG, as Emacs no longer does.
13097 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
13099         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
13100         Otherwise `s p' of f and F will stomp on each other's value.
13101         (Bug#20916)
13103 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13105         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13106         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
13108 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13110         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
13111         as additional guess.
13113         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
13114         to a string.
13116 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
13118         apropos-library quoting fix
13119         * lisp/apropos.el (apropos-library): Quote library consistently
13120         with the rest of the quoting used by apropos.
13122         Clarify interpreter-mode-alist doc
13123         * lisp/files.el (interpreter-mode-alist):
13124         Reword to avoid confusing quoting that wasn't working anyway.
13126 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
13128         Sync with Tramp 2.2.12
13129         * doc/misc/trampver.texi:
13130         * lisp/net/trampver.el: Update release number.
13131         * test/automated/tramp-tests.el (tramp-test13-make-directory):
13132         Fix cleanup.
13134 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13136         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
13138 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
13140         Bind grep-highlight-matches around the rgrep call
13141         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
13142         around the rgrep call (bug#20728).
13144         Put "--color" before the other options in grep-command
13145         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
13146         before the other options in grep-command (bug#20912).
13148         Add --color Grep option to the command dynamically
13149         * lisp/progmodes/grep.el (grep-template, grep-find-template):
13150         Update the description for <C>.  (Bug#20728)
13151         (grep-compute-defaults): Don't add the --color option to
13152         grep-options.  Only add it to grep-command.
13153         (grep-expand-keywords): Expand the env value opts into <C>.
13154         (grep-expand-template): Replace cf in the env with the opts list,
13155         that can include -i and --color.
13156         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
13157         "--color=always" from the template, because we don't have to.
13159 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
13161         cl-extra fixes for most-negative-fixnum
13162         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
13163         Don't mishandle an argument equal to most-negative-fixnum,
13164         whose absolute value equals itself.
13165         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
13167         Initialize cl--gensym-counter to 0
13168         Previously it was initialized to a random value, which made it
13169         harder to reproduce earlier Emacs runs.  The need for a random
13170         value went away when Emacs introduced and used the #: syntax for
13171         uninterned symbols (Bug#20862).
13172         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
13173         Document that cl--gensym-counter now starts with 0.
13174         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
13175         (cl--random-time): Move to near only remaining use.
13176         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
13178         Improve docstring for macroexp-let2
13179         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
13180         Improve as per suggestion by RMS in:
13181         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
13182         Also, rename args to match new doc string.
13184 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
13186         Fix VC test suite on MS-Windows
13187         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
13188         always starts with 3 slashes after the colon.
13189         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
13190         'w32-application-type' to invoke CVS on MS-Windows with properly
13191         formatted CVSROOT directory name.
13193         Add a new function w32-application-type
13194         * src/w32proc.c (Fw32_application_type): New function.
13196         Avoid error in TLS connections due to incorrect format
13197         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
13198         the call to 'error', instead of the unsupported %u.  Reported by
13199         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
13201 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
13203         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
13205 2015-06-26  Leo Liu  <sdl.web@gmail.com>
13207         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
13208         `with-output-to-string' in elisp.
13210         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
13211         with-output-to-string".
13212         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
13214 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
13216         Minor corrections in ELisp manual
13217         * doc/lispref/nonascii.texi (Character Properties): Correct
13218         inaccuracies in description of values of the Unicode properties.
13220         Fix invisible mouse pointers on Windows.
13221         * src/w32fns.c: Include windowsx.h.
13222         (w32_wnd_proc): If the mouse moved and the mouse pointer is
13223         invisible, make it visible again even when the main (Lisp)
13224         thread is busy.
13225         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
13226         garbaging the frame have the input thread call SetCursor.
13228 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
13230         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
13231         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
13232         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
13233         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
13234         (w32_toggle_invisible_pointer): New function.
13235         (w32_create_terminal): Add w32_toggle_invisible_pointer as
13236         toggle_invisible_pointer_hook for this terminal.
13238 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
13240         Doc fix for deletion commands
13241         'delete-char' does not respect the value of 'delete-active-region'.
13242         * doc/emacs/killing.texi (Deletion):
13243         Fix documentation for some single-char deletion commands.
13245         * doc/emacs/help.texi (Apropos):
13246         Improve documentation of 'apropos-do-all'.
13248         * doc/emacs/help.texi (Help Summary):
13249         Improve documentation of 'describe-mode'.
13251 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13253         Fix submake dependency bug with .h files
13254         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
13255         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
13256         before the submake in $(libsrc) would spin off a subsubmake
13257         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
13259 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
13261         * lisp/character-fold.el (character-fold-table): Reuse `table'.
13263 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13265         Translate undisplayable ‘ to `
13266         * doc/lispref/help.texi (Keys in Documentation):
13267         * lisp/international/mule-cmds.el (set-locale-environment):
13268         * lisp/term/w32console.el (terminal-init-w32console):
13269         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
13270         If ‘ is not displayable, transliterate it to `, not to '.  See:
13271         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
13273         Fix C99 incompatibilities in Cairo code
13274         * src/image.c (xpm_load) [USE_CAIRO]:
13275         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
13276         Fix pointer signedness problem.
13278 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
13280         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
13281         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
13282         `with-output-to-string' should have the same indent as `progn'.
13283         This is in line with the declaration of `with-output-to-string'.
13285 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13287         Get ‘./configure; make -C src emacs’ to work
13288         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
13289         * lib-src/Makefile.in (../lib/libgnu.a):
13290         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
13292 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13294         Fix GC bugs --with-wide-int and Qnil == 0
13295         Use the same alignment for the !USE_LSB_TAG case as for the
13296         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
13297         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
13298         once we changed the representation of symbols so that Qnil == 0.
13299         Problem reported by Eli Zaretskii (Bug#20862).
13300         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
13301         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
13302         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
13303         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
13304         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
13305         This optimization in the !USE_LSB_TAG case is no longer valid when
13306         symbols are represented via offsets.  Change the only use to
13307         assume that pointers might hide in objects.
13308         * src/lisp.h (alignas) [!USE_LSB_TAG]:
13309         Require support in this case, too.
13310         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
13311         This is OK, because the !USE_LSB_TAG case now applies only when
13312         Lisp_Object is wider than void *, so there's no longer any need
13313         to shift the offset.  Not shifting the offset means that
13314         symbol representations have the same alignment as pointers,
13315         which the GC assumes.
13317 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
13319         * doc/lispintro/emacs-lisp-intro.texi (Data types):
13320         Improve documentation of 'substring'.
13322 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13324         * lisp/character-fold.el (character-fold-table): Fix table generation.
13326 2015-06-24  Glenn Morris  <rgm@gnu.org>
13328         * nextstep/Makefile.in (all): Make it the first target.
13329         (../src/emacs${EXEEXT}): Add rule for making it.
13331 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13333         * etc/NEWS: Fix mention to old function name.
13335         * lisp/character-fold.el: New file (Bug#20887)
13336         (character-fold-to-regexp): New function.
13337         * lisp/replace.el (replace-search): Check value of
13338         `character-fold-search'.
13339         * lisp/isearch.el: Move character-folding code to
13340         character-fold.el
13341         (isearch-toggle-character-fold): New command.
13342         (isearch-mode-map): Bind it to "\M-sf".
13343         (isearch-mode): Check value of `character-fold-search'.
13345 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13347         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
13348         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
13349         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
13351         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
13352         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
13354 2015-06-24  Glenn Morris  <rgm@gnu.org>
13356         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
13358 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13360         lisp/gnus/nnmaildir.el: Silence lexical warnings
13361         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
13362         functional style.
13363         (nnmaildir--update-nov): Remove unused var `numdir'.
13364         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
13365         (nnmaildir-request-group, nnmaildir-request-create-group)
13366         (nnmaildir-request-post, nnmaildir-request-move-article)
13367         (nnmaildir-request-accept-article, nnmaildir-active-number):
13368         Mark unused args.
13369         (nnmaildir-get-new-mail, nnmaildir-group-alist)
13370         (nnmaildir-active-file): Declare.
13371         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
13372         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
13373         `mark', `end', `new-mark', and `mark-sym'.
13374         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
13375         `nlist2'.
13376         (nnmaildir-request-expire-articles):
13377         Remove unused vars `article', `stop' and `nlist2'.
13378         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
13379         `end'.  Use nnmaildir--article when dyn-binding is needed.
13380         Give the value directly in the `let' for `del-mark', `del-action',
13381         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
13382         (nnmaildir-close-server): Declare those local vars that need to be
13383         dyn-bound.
13385 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13387         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
13389         Port selection info fix to clang
13390         * src/keyboard.h (kbd_buffer_store_event_hold):
13391         Don't assume C11 semantics for alignof (Bug#20756).
13393         Fix bug that munged selection info
13394         On some optimizing C compilers, copying a structure did not
13395         copy the padding bytes between elements, and the type punning
13396         between struct input_data and struct selection_input_data did
13397         not work.  Change the C code to use a proper union type instead.
13398         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
13399         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
13400         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
13401         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
13402         (mark_kboards):
13403         Use union buffered_input_event, not struct input_event.
13404         (clear_event, deliver_input_available_signal, process_special_events):
13405         Remove unnecessary forward decls.
13406         (kbd_buffer_store_buffered_event): New function, mostly just the
13407         old kbd_buffer_store_event_hold, except its argument is of type
13408         union buffered_input_event, not struct input_event.
13409         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
13410         not needed otherwise.  Argument is now of type
13411         struct selection_input_event *, not struct input_event *.
13412         All callers changed.
13413         (clear_event): Arg is now of type union buffered_input_event *,
13414         not struct input_event *.  All callers changed.
13415         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
13416         (union buffered_input_event): New type.
13417         (kbd_buffer_store_event_hold): Now an inline function,
13418         defined here.
13419         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
13420         (struct input_event): Use it.
13421         * src/xselect.c (struct selection_event_queue):
13422         Make elements be of type struct selection_input_event,
13423         not struct input_event.
13424         (selection_input_event_equal): New static function.
13425         (x_queue_event): Use it.
13426         (x_queue_event, x_decline_selection_request)
13427         (x_selection_current_request, x_reply_selection_request)
13428         (x_handle_selection_request, x_handle_selection_clear)
13429         (x_handle_selection_event): Use struct selection_input_event,
13430         not struct input_event.  All callers changed.
13431         (x_convert_selection): Omit unused first arg.  All callers changed.
13432         (Fx_disown_selection_internal): Omit unnecessary union.
13433         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
13434         rather than rolling our own equivalent.  Prefer sie.kind when
13435         setting up that kind of structure.
13436         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
13437         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
13438         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
13439         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
13440         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
13441         (SELECTION_EVENT_TIME, x_handle_selection_event):
13442         Arg is now of type struct selection_input_event *)
13443         not struct input_event *.  All callers changed.
13445 2015-06-23  Glenn Morris  <rgm@gnu.org>
13447         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
13449 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13451         * lisp/isearch.el: Fold many unicode characters to ASCII.
13452         (isearch-character-fold-search, isearch--character-fold-extras)
13453         (isearch--character-fold-table): New variable.
13454         (isearch--character-folded-regexp): New function.
13455         (isearch-search-fun-default): Use them.
13456         * lisp/replace.el (replace-character-fold): New variable.
13457         (replace-search): Use it.
13458         * etc/NEWS: Document it.
13460 2015-06-23  Glenn Morris  <rgm@gnu.org>
13462         Check for an input event before showing a dialog box.  (Bug#20813)
13463         * lisp/subr.el (y-or-n-p):
13464         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
13465         as last-nonmenu-event.
13467 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
13469         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
13470         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
13471         (switch-to-prev-buffer, switch-to-next-buffer): Respect
13472         switch-to-visible-buffer independent of the windows history.
13474 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
13476         * src/keyboard.c (last_timer_event): Remove unused var.
13478 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13480         * test/automated/package-test.el (package-test-update-listing):
13481         Fix test.
13483 2015-06-23  Glenn Morris  <rgm@gnu.org>
13485         Revert 2014-06-25 nextstep/Makefile change.
13486         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
13487         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
13488         not as an order-only prerequisite.
13490         * configure.ac (--with-ns): Enable by default on OS X.
13492 2015-06-23  Leo Liu  <sdl.web@gmail.com>
13494         Fix shell-for/backward-command to exclude spaces
13495         * lisp/shell.el (shell-forward-command, shell-backward-command):
13496           Handle the 'move case from re-search-forward/backward.
13497           fixes debbugs:20873
13499 2015-06-22  Juri Linkov  <juri@linkov.net>
13501         * lisp/replace.el (query-replace-read-from): Add separator to
13502         the local binding of text-property-default-nonsticky.  (Bug#20690)
13504         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
13505         (Bug#20785)
13507 2015-06-22  Ken Brown  <kbrown@cornell.edu>
13509         Enable CPU profiling on Cygwin
13510         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
13511         change that undefined this.
13512         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
13513         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
13514           Cygwin.
13516         Improve diagnostics of profiler-cpu-start
13517         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
13518         return -1 if the sampling interval is invalid.
13519         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
13520         fails.  (Bug#20843)
13522 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13524         * lisp/emacs-lisp/package.el: Exclude packages by name.
13525         (package-hidden-regexps): New variable.
13526         (package-menu--refresh): Use it.
13527         (package-menu-hide-package): New command.
13529         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
13531 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
13533         Fix debug-timer-check on systems without HAVE_TIMERFD
13534         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
13535         the expired timers, since wait_reading_process_output doesn't.
13536         (debug_timer_callback): Enlarge the tolerance to 20 msec.
13538         Fix RCS crashes in vc-test
13539         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
13540         ports of 'ci' on MS-Windows by always passing the -t- switch.
13542 2015-06-22  Glenn Morris  <rgm@gnu.org>
13544         * doc/emacs/package.texi (Packages):
13545         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
13547         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
13549 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13551         Port tests to help-quote-translation
13552         * test/automated/ert-x-tests.el (ert-test-describe-test):
13553         * test/automated/package-test.el (package-test-describe-package)
13554         (package-test-signed): Allow straight quotes, too.
13556 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
13558         Make find-function-on-key use the current window
13559         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
13560         Extract from `find-function-on-key', add a second argument.
13561         (find-function-on-key): Use it (bug#19679).
13562         (find-function-on-key-other-window)
13563         (find-function-on-key-other-frame): New commands.
13565 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13567         Revert "Define `map-elt' as a generalized variable"
13568         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
13570 2015-06-21  Ken Brown  <kbrown@cornell.edu>
13572         Drop support for CPU profiling on Cygwin
13573         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
13574         (Bug#20843)
13576 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
13578         Fix some “nested” quoting confusion in doc strings
13579         * lisp/emacs-lisp/advice.el (ad-map-arglists):
13580         * lisp/kermit.el (kermit-clean-on):
13581         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
13582         * src/keyboard.c (Frecursive_edit):
13583         Use curved quotes when quoting text containing apostrophe,
13584         so that the apostrophe isn't curved in the output.
13586 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13588         Define `map-elt' as a generalized variable
13589         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
13590         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
13591         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
13592         `setf' with `map-elt'.
13593         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
13595 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
13597         Improve error handling in tramp-adb.el
13598         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
13599         Improve error handling.
13601 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13603         Reuse `alist-get' in map.el
13604         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
13605         elements.
13607 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
13609         Fix bytecomp-tests--warnings when $TMPDIR has a long name
13610         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
13611         Allow the warning to begin on the 3rd, not only 2nd line, which
13612         happens if temporary-file-directory has a very long name.
13614         Expect 2 icalendar tests to fail on MS-Windows
13615         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
13616         (icalendar-real-world): Make them expected failures on MS-Windows.
13618 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
13620         Improve port of settings UI to older displays
13621         * lisp/cus-start.el (standard): Don't assume curved quotes are
13622         easily distinguishable when users are tinkering with a setting
13623         that affects how curved quotes are generated.
13625         Fix quoting in electric-quote-mode doc string
13626         * lisp/electric.el (electric-quote-mode): Fix quoting.
13627         This is a fallout from the recent change introducing
13628         ‘help-quote-translation’.
13630         Spelling fix
13632         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
13634         * src/doc.c (syms_of_doc): Remove unused symbols.
13636 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
13638         * lisp/window.el (window-state-put): Undedicate target window
13639         before putting STATE into it.  (Bug#20848)
13641 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13643         Merge from origin/emacs-24
13644         a5e6f33 Fixes: debbugs:20832
13645         b9f02cf Fixes: debbugs:20832
13647 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13649         Fix file-in-directory-p when the directory is UNC
13650         * lisp/files.el (file-in-directory-p): Support files and
13651         directories that begin with "//".  (Bug#20844)
13653 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
13655         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
13656         in the minibuffer.  (Bug#20832)
13658 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
13660         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
13661         for adding new todo file is empty but modified.  (Bug#20832)
13663 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
13665         (filepos-to-bufferpos): Further tweaks to the utf-16 code
13666         * lisp/international/mule-util.el (filepos-to-bufferpos):
13667         Fix typo.  Move non-exact check to the utf-16 branch (the only one
13668         affected).  Don't use byte-to-position for the utf-16 case.
13670 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13672         Minor fixes in filepos-to-bufferpos
13673         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
13674         test for utf-8-emacs.  Exempt single-byte encodings from the
13675         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
13676         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
13677         UTF-16 encoded files for CR-LF EOLs.
13679 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13681         Improve the optional translation of quotes
13682         Fix several problems with the recently-added custom variable
13683         help-quote-translation where the code would quote inconsistently
13684         in help buffers.  Add support for quoting 'like this', which
13685         is common in other GNU programs in ASCII environments.  Change
13686         help-quote-translation to use more mnemonic values: values are now the
13687         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
13688         traditional Emacs help-buffer quoting style `like this'.  Change the
13689         default behavior of substitute-command-keys to match what's done in
13690         set-locale-environment, i.e., quote ‘like this’ if displayable,
13691         'like this' otherwise.
13692         * doc/lispref/help.texi (Keys in Documentation): Document
13693         new behavior of substitute-command-keys, and document
13694         help-quote-translation.
13695         * doc/lispref/tips.texi (Documentation Tips):
13696         Mention the effect of help-quote-translation.
13697         * etc/NEWS: Mention new behavior of substitute-command-keys,
13698         and merge help-quote-translation news into it.
13699         When talking about doc strings, mention new ways to type quotes.
13700         * lisp/cedet/mode-local.el (overload-docstring-extension):
13701         Revert my recent change to this function, which shouldn't be
13702         needed as the result is a doc string.
13703         * lisp/cedet/mode-local.el (mode-local-print-binding)
13704         (mode-local-describe-bindings-2):
13705         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
13706         * lisp/cus-theme.el (describe-theme-1):
13707         * lisp/descr-text.el (describe-text-properties-1, describe-char):
13708         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
13709         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
13710         (eieio-help-constructor):
13711         * lisp/emacs-lisp/package.el (describe-package-1):
13712         * lisp/faces.el (describe-face):
13713         * lisp/help-fns.el (help-fns--key-bindings)
13714         (help-fns--compiler-macro, help-fns--parent-mode)
13715         (help-fns--obsolete, help-fns--interactive-only)
13716         (describe-function-1, describe-variable):
13717         * lisp/help.el (describe-mode):
13718         Use substitute-command-keys to ensure a more-consistent quoting
13719         style in help buffers.
13720         * lisp/cus-start.el (standard):
13721         Document new help-quote-translation behavior.
13722         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
13723         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
13724         (help-xref-url-regexp):
13725         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
13726         * lisp/wid-edit.el (widget-documentation-link-regexp):
13727         Also match 'foo', in case we're in a help buffer generated when
13728         help-quote-translation is ?'.
13729         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
13730         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
13731         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
13732         (Fsubstitute_command_keys): Document and implement new behavior.
13733         (Vhelp_quote_translation): Document new behavior.
13735 2015-06-18  Glenn Morris  <rgm@gnu.org>
13737         * lisp/cus-start.el (help-quote-translation): Add :version.
13739         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
13741 2015-06-18  Alan Mackenzie  <acm@muc.de>
13743         Make translation of quotes to curly in doc strings optional.
13744         * src/doc.c (traditional, prefer-unicode): New symbols.
13745         (help-quote-translation): New variable.
13746         (Fsubstitute_command_keys): Make translation of quotes dependent on
13747         `help-quote-translation'; also translate curly quotes back to ASCII
13748         ones.
13749         * lisp/cus-start.el (top-level): Add a customization entry for
13750         `help-quote-translation'.
13752 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13754         * lisp/emacs-lisp/package.el: Don't always propagate async errors
13755         (package--with-work-buffer-async): Only propagate the error if the
13756         callback returns non-nil.
13757         (package--download-one-archive): Return nil on the signature
13758         checking callback if we accept unsigned.
13759         (package--download-and-read-archives): Return non-nil on the
13760         archive download callback.
13762 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
13764         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
13765         * src/nsfns.m (Fx_create_frame):
13766         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
13767         image_cache_refcount before first x_default_parameter call.
13769 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
13771         Improve and extend filepos-to-bufferpos
13772         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13773         Don't barf if F returns nil for some argument.
13774         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
13775         that every encoding of type 'charset' is single-byte.
13777 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13779         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
13780         Properly delete packages.  (Bug#20836)
13782 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
13784         Update data files from just-released Unicode 8.0
13785         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
13786         status.
13787         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
13788         * admin/unidata/BidiMirroring.txt:
13789         * admin/unidata/BidiBrackets.txt:
13790         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
13792 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
13794         Document curved quotes a bit better
13795         * doc/emacs/basic.texi (Inserting Text):
13796         Mention C-x 8.  Change example to use curved quote rather
13797         than infinity, as this lets us give more ways to do it.
13798         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
13799         and quotation marks.
13800         * doc/emacs/text.texi (Quotation Marks):
13801         * doc/lispref/tips.texi (Documentation Tips):
13802         Add "curly quotes" and "curved quotes" to the index.
13803         * doc/emacs/text.texi (Quotation Marks):
13804         Give the C-x 8 shorthands for curved quotes.
13805         Cross-reference to "Quotation Marks".
13807 2015-06-17  Daiki Ueno  <ueno@gnu.org>
13809         Add pinentry.el for better GnuPG integration
13810         * lisp/pinentry.el: New file.
13811         * etc/NEWS: Add entry about pinentry.el.
13812         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
13813         (Bug#20550)
13815 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
13817         * lisp/emacs-lisp/package.el: Slightly better error reporting.
13819 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
13821         (define-minor-mode): Use setq-default for :global minor modes
13822         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
13823         Use setq-default for :global minor modes (bug#20712).
13825 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
13827         Avoid infloop in redisplay with tall images
13828         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
13829         down near ZV.  (Bug#20808)
13830         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
13831         instead of CHARPOS.
13833 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
13835         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
13836         Fix error reporting.
13838         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
13840         * lisp/emacs-lisp/package.el: Revert buffer after any operation
13841         Call `package-menu--post-refresh' after any operation that changes
13842         the package database (`package-install' and `package-delete').  To
13843         avoid performance issues in large transactions, these functions
13844         add `post-refresh' to `post-command-hook' instead of calling it
13845         immediately.
13846         (package-menu--mark-or-notify-upgrades): New function.
13847         (list-packages): Add it to `package--post-download-archives-hook'.
13848         (package-menu--post-refresh): Lose the upgrade-checking code, add
13849         code to remove itself from `post-command-hook'.
13850         (package-install, package-delete): Add it to `post-command-hook'.
13851         (package-menu-execute): Don't call `package-menu--post-refresh'.
13853 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
13855         Add missing function xref-location-group for elisp-mode.
13856         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
13858 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
13860         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
13861         The behavior now matches the description in the manual.  (Bug#20783)
13863 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
13865         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
13867 2015-06-17  Glenn Morris  <rgm@gnu.org>
13869         Generate char-script-table from Unicode source.  (Bug#20789)
13870         * admin/unidata/Makefile.in (AWK): New, set by configure.
13871         (all): Add charscript.el.
13872         (blocks): New variable.
13873         (charscript.el, ${unidir}/charscript.el): New targets.
13874         (extraclean): Also remove generated charscript.el.
13875         * admin/unidata/blocks.awk: New script.
13876         * admin/unidata/Blocks.txt: New data file, from unicode.org.
13877         * lisp/international/characters.el: Load charscript.
13878         * src/Makefile.in (charscript): New variable.
13879         (${charscript}): New target.
13880         (${lispintdir}/characters.elc): Depend on charscript.elc.
13881         (temacs$(EXEEXT)): Depend on charscript.
13883         * lisp/international/characters.el (char-script-table): Tweak
13884         some ranges to better match the source.  (Bug#20789#17)
13886         Remove "no-byte-compile: t" from a few files.
13887         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
13888         * lisp/obsolete/patcomp.el: No reason not to compile these.
13890 2015-06-16  Glenn Morris  <rgm@gnu.org>
13892         Fix some typos in copied Unicode data.  (Bug#20789)
13893         * lisp/international/characters.el (char-script-table):
13894         * lisp/international/fontset.el (script-representative-chars)
13895         (setup-default-fontset): Fix typos.
13897         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
13898         Don't print filename twice (it's in the prefix now).
13900         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
13901         No longer needed.
13903         Address a compilation warning.
13904         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
13905         Replace 't' with '_' in pcase.
13907         Address some check-declare warnings.
13908         * lisp/simple.el (tabulated-list-print):
13909         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
13910         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
13911         (ns-get-selection): Update declarations.
13913         Address some compilation warnings.
13914         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
13915         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
13916         Replace 't' with '_' in pcase.
13918         Address some compilation warnings.
13919         * lisp/face-remap.el (text-scale-adjust):
13920         * lisp/menu-bar.el (popup-menu-normalize-position):
13921         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
13922         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
13923         * lisp/emacs-lisp/generator.el (cps--transform-1):
13924         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
13925         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
13926         * lisp/progmodes/octave.el (octave-goto-function-definition)
13927         (octave-find-definition-default-filename):
13928         Replace 't' with '_' in pcase.
13930         * lisp/emacs-lisp/pcase.el (pcase--u1):
13931         Paper-over today's bootstrap failure.
13933 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
13935         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
13937         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
13939         Better confirmation message in `find-alternate-file' (Bug#20830)
13940         * lisp/files.el (find-alternate-file'): Improve the confirmation
13941         message to show the buffer name.
13943         Better docstring for null.  (Bug#20815)
13944         * src/data.c (null): Improves the docstring, saying what null returns
13945         when OBJECT is non-nil.
13947 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13949         * lisp/net/newst-treeview.el: Use lexical-binding.
13951         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
13952         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13953         New auxiliary function, extracted from filepos-to-bufferpos.
13954         Make sure it terminates.
13955         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
13956         Add support for the `exact' quality.
13958 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
13960         Identify feeds in newsticker treeview with :nt-feed property
13961         * lisp/net/newst-treeview.el:
13962         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
13964 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13966         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
13967         (pcase--self-quoting-p): Floats aren't self-quoting.
13968         (pcase): Tweak docstring.
13969         (pcase--u1): Deprecate the t pattern.  Improve error detection for
13970         the nil pattern.
13971         (\`): Tweak docstring.  Signal an error for unrecognized cases.
13972         (bug#20784)
13974 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
13976         Fix infloop in filepos-to-bufferpos
13977         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
13978         offset calculation, and make it conditional on the eol-type of the
13979         file's encoding.  (Bug#20825)
13981 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
13983         Fix handling of image cache refcounts.  (Bug#20802)
13984         This backports Eli Zaretskii's solution of this problem for W32
13985         to X and NS.
13986         * src/nsfns.m (image_cache_refcount): Define unconditionally.
13987         (unwind_create_frame): If the image cache's reference count
13988         hasn't been updated yet, do that now.
13989         (Fx_create_frame): Set image_cache_refcount unconditionally.
13990         * src/xfns.c (image_cache_refcount): Define unconditionally.
13991         (unwind_create_frame): If the image cache's reference count
13992         hasn't been updated yet, do that now.
13993         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
13994         unconditionally.
13995         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
13996         X and NS.
13998 2015-06-16  Nils Ackermann  <nils@ackermath.info>
14000         Improve reftex-label-regexps default value
14001         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
14002         keyvals label regexp more strict to better cope with unbalanced
14003         brackets common in math documents.
14005 2015-06-16  Glenn Morris  <rgm@gnu.org>
14007         * doc/emacs/calendar.texi (Format of Diary File):
14008         Move "nonmarking" from here...
14009         (Displaying the Diary): ... to here.
14011         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
14012         Swap the order of these nodes.
14013         * doc/emacs/emacs.texi: Update detailed menu for the above change.
14015         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
14016         Update date of examples.
14017         (Diary, Format of Diary File): Move example from former to latter.
14018         Reduce duplication.
14020         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
14021         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
14022         Don't set no-byte-compile in the outputs.
14023         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
14025 2015-06-15  Glenn Morris  <rgm@gnu.org>
14027         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
14028         * doc/emacs/calendar.texi (Diary, Format of Diary File):
14029         Update for above diary-file change.
14031         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
14032         (apply-macro-to-region-lines): Use user-error.
14034         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
14035         (pages-directory-for-addresses): Doc fixes.
14037 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14039         * lisp/info.el: Cleanup bytepos/charpos issues
14040         * lisp/international/mule-util.el: Use lexical-binding.
14041         (filepos-to-bufferpos): New function.
14042         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
14043         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
14044         (Info-read-subfile, Info-search): Use 0-based file positions.
14046         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
14047         (perl--syntax-exp-intro-keywords): New var.
14048         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
14049         (bug#20800).
14051 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
14053         Fix quoting when making derived mode docstring
14054         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14055         Nest regexp-quote inside format, not the reverse.
14056         Problem reported by Artur Malabarba in:
14057         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
14059 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
14061         Fix current-iso639-language on MS-Windows
14062         * lisp/international/mule-cmds.el (set-locale-environment):
14063         Downcase the locale name before interning it.  This is so the
14064         'current-iso639-language' on MS-Windows matches the ':lang'
14065         property of font-spec objects.
14067         Limit Symbola usage some more
14068         * lisp/international/fontset.el (setup-default-fontset): Limit
14069         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
14070         (Bug#20727)
14072 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
14074         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14076 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
14078         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
14079         (help-fns-test-funny-names): Spelling fixes.
14081 2015-06-14  Glenn Morris  <rgm@gnu.org>
14083         * lisp/version.el (emacs-repository-version-git): Demote errors.
14084         Check result is a hash.
14086 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14088         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
14089         Catch errors that happen before going async.  (Bug#20809)
14091 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
14093         Another improvement of documentation of set-fontset-font
14094         * doc/lispref/display.texi (Fontsets): Say explicitly that
14095         CHARACTER can be a single codepoint.
14096         * src/fontset.c (Fset_fontset_font): Doc fix.
14098         Another improvement for symbol and punctuation characters
14099         * lisp/international/fontset.el (setup-default-fontset): Exclude
14100         from Symbola character ranges for symbols and punctuation covered
14101         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
14102         installed and where its coverage of symbols and punctuation is
14103         known to be good.  (Bug#20727)
14105 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
14107         Some generic support for multi-mode indentation.
14108         * lisp/progmodes/prog-mode.el (prog-indentation-context):
14109         New variable.
14110         (prog-first-column, prog-widen): New convenience functions.
14112 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14114         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
14115         Don't assume that `tabulated-list-printer' will leave point at the
14116         end of the buffer.  (Bug#20810)
14118 2015-06-13  Glenn Morris  <rgm@gnu.org>
14120         Tweaks for getting repository version; a bit more like it was for bzr
14121         * lisp/version.el (emacs-repository-version-git)
14122         (emacs-repository--version-git-1): New functions,
14123         split from emacs-repository-get-version.
14124         (emacs-repository-get-version): Make the second argument meaningful.
14126         * lisp/startup.el (command-line-1): Inform if skipping relative
14127         file names due to deleted PWD.
14129         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
14130         when starup directory is missing.  (Bug#18851)
14131         (errno.h): Include it.
14133 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
14135         Better fix for documenting `X as "`X"
14136         Fix suggested by Stefan Monnier.
14137         * lisp/help-fns.el (help-fns--signature):
14138         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
14139         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14140         Don't treat `X specially, as help-fns--signature now handles this.
14142 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
14144         Improve the default fontset when Symbola is not installed
14145         * lisp/international/fontset.el (setup-default-fontset): Only
14146         prepend Symbola and FreeMono font specs for symbols and
14147         punctuation; do not replace the default spec for them.  This
14148         should have better results when Symbola/FreeMono are not
14149         installed.  (Bug#20727)
14151         Improve documentation of ':lang' in font specs
14152         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
14153         use of the ':lang' property of the font spec.
14154         * doc/emacs/frames.texi (Fonts): Document the language names that
14155         can be in the STYLE part of XLFD.
14156         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
14157         property.
14159         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
14161         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
14163         Revert last change in fontset.el
14164         * lisp/international/fontset.el (setup-default-fontset): Revert
14165         the change "Configure Symbola font only if installed", since font
14166         search is evidently not yet set up when this function is called.
14167         (Bug#20727)
14169 2015-06-12  Glenn Morris  <rgm@gnu.org>
14171         Ensure early startup warnings are visible at the end.  (Bug#20792)
14172         * lisp/emacs-lisp/warnings.el (display-warning):
14173         If startup isn't complete, delay the warning.
14174         * lisp/startup.el (normal-top-level, command-line):
14175         Let display-warning automatically handle the needed delays.
14176         Run delayed-warnings-hook.
14178         * lisp/version.el (emacs-repository-get-version):
14179         Avoid calling external executable if possible.  (Bug#20799)
14181 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14183         Document `X as "`X", not as "(` X)"
14184         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14185         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
14187         * src/print.c (print_object): Minor simplification.
14189 2015-06-12  Glenn Morris  <rgm@gnu.org>
14191         * src/buffer.c (init_buffer): Add final newline to message.
14193 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14195         Configure Symbola font only if installed
14196         * lisp/international/fontset.el (setup-default-fontset):
14197         Don't specify the Symbola font if it's not installed.
14198         Likewise for FreeMono.  (Bug#20727)
14200 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
14202         Configure Symbola font only for symbols and punctuation
14203         * lisp/international/fontset.el (setup-default-fontset): Leave
14204         only symbols and punctuation in the fontset setup for Symbola
14205         font; remove "Greek and Coptic" and "Cyrillic Supplement".
14206         (Bug#20798)
14208 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
14210         Fix crash in fontset-info
14211         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
14212         non-nil.
14214 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14216         Port to Solaris 10 sparc + Sun C 5.13
14217         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
14218         Adjust to process.c change.
14219         * src/process.c (create_process): Declare volatile variables at
14220         top level of this function, so that they're less likely to be
14221         reused later in the function in the code executed by the vforked
14222         child.  Do not declare locals used only in the vforked child, as
14223         they might share memory with locals still live in the parent.
14224         Instead, use the same variables in the child as in the parent.
14225         This works around a subtle bug that causes a garbage collector
14226         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
14228 2015-06-12  Glenn Morris  <rgm@gnu.org>
14230         * lisp/startup.el (normal-top-level): Don't let *Messages* get
14231         a nil default-directory.
14233 2015-06-11  Glenn Morris  <rgm@gnu.org>
14235         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
14237         Some progress towards starting with PWD deleted.  (Bug#18851)
14238         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
14239         * lisp/startup.el (normal-top-level, command-line-1):
14240         * lisp/minibuffer.el (read-file-name-default):
14241         Handle default-directory being nil.
14243 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14245         Fix "not a tty" bug on Solaris 10
14246         * configure.ac (PTY_OPEN): Define to plain 'open'
14247         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
14248         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
14249         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
14250         hosts that call grantpt which does its work via a setuid subcommand
14251         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
14252         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
14253         seems relevant in that case too.
14255 2015-06-11  Juri Linkov  <juri@linkov.net>
14257         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
14258         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
14259         (Bug#20785)
14261 2015-06-11  Glenn Morris  <rgm@gnu.org>
14263         * lisp/international/characters.el (char-script-table): Fix typo.
14265 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14267         Fix quoting of help for functions with odd names
14268         While investigating Bug#20759, I discovered other quoting problems:
14269         C-h f mishandled characters like backslash and quote in function names.
14270         This fix changes the behavior so that 'C-h f pcase RET' now
14271         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
14272         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
14273         in src/lread.c's read1 function says that the backslash will be
14274         needed starting in Emacs 25, which implies that 'format' is
14275         correct and the old pcase documention was wrong to omit the backslash.
14276         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
14277         * lisp/help-fns.el (help-fns--signature):
14278         * lisp/help.el (help-add-fundoc-usage):
14279         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
14280         Use help--make-usage-docstring rather than formatting
14281         help-make-usage.
14282         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
14283         Return raw docstring.
14284         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
14285         raw docstring.  Take more care to distinguish raw from cooked dstrings.
14286         (describe-function-1): Let help-fns--signature substitute
14287         command keys.
14288         * lisp/help.el (help--docstring-quote): New function.
14289         (help-split-fundoc): Use it, to quote funny characters more
14290         systematically.
14291         (help--make-usage): Rename from help-make-usage, since this
14292         should be private.  Leave an obsolete alias for the old name.
14293         (help--make-usage-docstring): New function.
14294         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
14296 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
14298         * lisp/thingatpt.el (in-string-p): Revert last change,
14299         since in-string-p is not used in thingatpt.el but only from outside.
14300         Also, use lexical binding.
14302 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14304         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
14305         * test/automated/let-alist.el (let-alist-cons): Test it.
14307 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
14309         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
14311 2015-06-10  Glenn Morris  <rgm@gnu.org>
14313         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
14315         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
14316         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
14317         * admin/gitmerge.el (gitmerge-commit-message):
14318         Exclude "skipped" messages from ChangeLog once again.
14320         Slight namespace cleanup for thingatpt.el.
14321         * lisp/thingatpt.el (thing-at-point--in-string-p)
14322         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
14323         (thing-at-point--read-from-whole-string): Rename from
14324         old versions without "thing-at-point--" prefix.
14325         Keep old versions as obsolete aliases.  Update all uses.
14327         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
14328         Move requiring of finder from here...
14329         (checkdoc-package-keywords): ... to here.
14331         Use 'user-error' in a few calendar files.
14332         * lisp/calendar/appt.el (appt-add):
14333         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
14334         (calendar-generate):
14335         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
14336         Replace 'error' with 'user-error'.
14338         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
14340         * lisp/files-x.el (add-file-local-variable):
14341         Special-case 'lexical-binding'.  (Bug#20641)
14343         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
14344         No longer autoload.
14345         * doc/misc/autotype.texi (Executables):
14346         Undocument executable-self-display.
14348         * lisp/progmodes/executable.el (executable-self-display):
14349         Use non-obsolete tail syntax.  (Bug#20779)
14350         (executable-self-display): Doc update.
14352 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
14354         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
14355         (finder-known-keywords): Silence byte-compiler.
14357 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14359         * lisp/simple.el (eval-expression): Macroexpand before evaluating
14360         (bug#20730).
14362         * lisp/progmodes/sh-script.el: Better handle nested quotes.
14363         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
14364         (sh-font-lock-quoted-subshell): Make sure double quotes within single
14365         quotes don't mistakenly end prematurely the surrounding string.
14367         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
14369 2015-06-09  Glenn Morris  <rgm@gnu.org>
14371         * test/automated/Makefile.in (ELFILES): Sort.
14373         * Makefile.in (SUBDIR_MAKEFILES):
14374         * lwlib/Makefile.in (WARN_CFLAGS):
14375         Use built-in Make functions rather than echo+sed.
14377 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
14379         Update char-script-table
14380         * lisp/international/characters.el (char-script-table): Update
14381         from Unicode 8.0 Draft.
14383         Improve font selection for punctuation and other symbols
14384         * src/fontset.c (face_for_char): If the character's script is
14385         'symbol', and the font used for ASCII face has a glyph for it, use
14386         the font for the ASCII face instead of searching the fontsets.
14387         This comes instead of NS-specific code that used the current
14388         face's font instead, which is now disabled due to undesirable
14389         consequences.  (Bug#20727)
14391 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
14393         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14394         Skip past `#' to find BEG (bug#20771).
14395         * test/automated/elisp-mode-tests.el
14396         (elisp-completes-functions-after-hash-quote): New test.
14398 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14400         Fix compilation warning/error in --without-x builds
14401         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
14402         code on HAVE_WINDOW_SYSTEM.
14404         Improve the default fontset wrt symbols
14405         * lisp/international/fontset.el (setup-default-fontset): Better
14406         setup of fontset-default for symbols: use Symbola and FreeMono.
14407         (Bug#20727)
14409 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14411         Add new command checkdoc-package-keywords
14412         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14413         New defcustom.
14414         (checkdoc-list-of-strings-p): Add doc.
14415         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
14416         non-nil, call `checkdoc-package-keywords'.
14417         (checkdoc-get-keywords): New defun.
14418         (checkdoc-package-keywords): New command.  Warns if the current file
14419         has package.el-style keywords that aren't in `finder-known-keywords'.
14420         * etc/NEWS: Add entry.
14422 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14424         Avoid crashes when key-binding is called from a timer
14425         * src/keymap.c (Fkey_binding): Don't segfault if called with an
14426         empty vector as KEY.  (Bug#20705)
14428         Fix a thinko in arc-mode.el
14429         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
14430         non-Zip64 case.  (Bug#20769)
14432 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
14434         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
14436 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14438         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
14439         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
14440         "*warn*", print the warning to the standard output.  (bug#20754)
14442 2015-06-07  Glenn Morris  <rgm@gnu.org>
14444         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
14446         * src/font.c (syms_of_font) <font-log>: Doc fix.
14448         Remove the obsolete leading "*" from some C doc strings.
14449         * src/coding.c (syms_of_coding):
14450         * src/font.c (syms_of_font): Remove leading "*" from docs.
14451         * lisp/cus-start.el (enable-character-translation): Add it.
14453 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
14455         Move gen_origin from program to data
14456         That way, 'make change-history' needs to change only ChangeLog.2,
14457         instead of having to change two files.
14458         * ChangeLog.2: Add commit info for range that this file covers.
14459         * Makefile.in (new_commit_regexp): New macro.
14460         (change-history-nocommit): Simplify, by putting what used to be
14461         the gen_origin value into the data (ChangeLog.2) rather than
14462         into the program (gitlog-to-emacslog).
14463         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
14464         the input file (e.g., ChangeLog.2) rather than by having a
14465         constant in the program.  Substitute it into the output.
14467 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
14469         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
14470         function name (bug#20759).
14472 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
14474         Adapt 'struct timespec' to next release of MinGW runtime
14475         * nt/inc/ms-w32.h (struct timespec): Don't declare if
14476         __struct_timespec_defined is defined.
14478 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
14480         Merge from gnulib
14481         This incorporates:
14482         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
14483         2015-06-05 stdio: Don't redefine gets when using C++
14484         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
14485         2015-06-02 file-has-acl: fix build on Mac OS X 10
14486         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
14487         2015-06-01 pthread_sigmask: discount system version if a simple macro
14488         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
14489         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
14490         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
14491         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
14492         * lib/gnulib.mk: Regenerate.
14494 2015-06-06  Juri Linkov  <juri@linkov.net>
14496         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
14497         before calling grep-compute-defaults because now it affects the
14498         command lines computed in grep-compute-defaults.  (Bug#20728)
14500 2015-06-06  Glenn Morris  <rgm@gnu.org>
14502         Address some compilation warnings.
14503         * lisp/international/mule-cmds.el (w32-get-console-codepage)
14504         (w32-get-console-output-codepage):
14505         * lisp/progmodes/elisp-mode.el (xref-collect-references):
14506         * lisp/version.el (cairo-version-string): Declare.
14507         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
14509 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14511         Fix display when a font claims large values of ascent and descent
14512         This fixes bug#20628.
14513         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
14514         coordinate of a hollow cursor glyph when the original glyph's
14515         ascent is too small.
14516         (get_font_ascent_descent, normal_char_ascent_descent)
14517         (normal_char_height): New functions.
14518         (handle_single_display_spec, append_space_for_newline)
14519         (calc_pixel_width_or_height, produce_stretch_glyph)
14520         (calc_line_height_property): Use normal_char_ascent_descent and
14521         normal_char_height.
14522         (x_produce_glyphs): When font-global values of ascent and descent
14523         are too large, use per-character glyph metrics instead, if
14524         possible.  But don't allow the glyph row's ascent and descent
14525         values become smaller than the values from the metrics of the
14526         font's "normal" character.
14527         * src/xftfont.c (xftfont_draw):
14528         * src/w32font.c (w32font_draw): Correct the values of ascent and
14529         descent used to draw glyphless characters' hex code in a box.
14530         * src/xterm.c (x_draw_glyph_string_background):
14531         * src/xdisp.c (x_produce_glyphs):
14532         * src/w32term.c (x_draw_glyph_string_background):
14533         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
14534         to detect fonts whose global ascent and descent values are too
14535         large to be used in layout decision, and redraw the background
14536         when that happens.
14537         * src/dispextern.h (FONT_TOO_HIGH): New macro.
14538         (get_font_ascent_descent): Add prototype.
14539         * src/xterm.c (x_new_font):
14540         * src/w32term.c (x_new_font):
14541         * src/nsterm.m (x_new_font):
14542         * src/font.c (font_open_entity):
14543         * src/composite.c (composition_gstring_width):
14544         Use get_font_ascent_descent to obtain reasonable values for ascent
14545         and descent of a font.
14547 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14549         Add assertion in adjust_point_for_property
14550         * src/keyboard.c (adjust_point_for_property): Add eassert for
14551         current buffer being shown in selected window.
14553 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
14555         Replace uses of in-string-p; make it obsolete
14556         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
14557         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
14559 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14561         Fix Dired display of an explicit list of files by ls-lisp.el
14562         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
14563         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
14564         correct for when displaying individual files separately, not as
14565         part of listing a directory, in which case these values are not
14566         recomputed by 'ls-lisp-insert-directory', but used verbatim.
14568         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
14570 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14572         Do not adjust point in a non-selected window
14573         * src/keyboard.c (command_loop_1): Do not adjust point when
14574         current buffer is not shown in selected window (Bug#20590).
14576         * etc/DEBUG: Mention 'maybe_call_debugger'
14578 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
14580         Fix a unit test for map.el
14581         * test/automated/map-tests.el (test-map-let): Fix the test to work
14582         with the new syntax of `map-let'.
14584         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14586         Better syntax for the map pcase pattern
14587         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
14588         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
14590         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
14592         Fix a byte-compiler error in map-put and map-delete
14593         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
14594         called with a symbol.
14596 2015-06-05  Glenn Morris  <rgm@gnu.org>
14598         * admin/gitmerge.el (gitmerge-commit-message):
14599         Revert to including "skipped" messages in ChangeLog once again.
14601 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
14603         Use string> instead of equiv lambda with string<
14604         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
14605         lambda with string<.
14607 2015-06-05  Glenn Morris  <rgm@gnu.org>
14609         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
14610         (map--delete-array): Fix typo.
14612         * test/automated/map-tests.el: Replace "assert" with "should".
14614         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
14615         (SUBDIRS_REL): Derive from SUBDIRS.
14617         Tweak some build messages.
14618         * lisp/Makefile.in ($(lisp)/loaddefs.el):
14619         * lisp/cus-dep.el (custom-make-dependencies):
14620         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
14621         * lisp/international/titdic-cnv.el (batch-titdic-convert):
14622         Don't say how to compile.
14624 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
14626         Omit U+0332 COMBINING LOW LINE in previous change
14627         It turns out that it does not work on Ubuntu 15.04.
14629         Fix transliteration of Bahá'í months
14630         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
14631         Improve quality of Latin transliteration of Bahá'í month names.
14633         Fix curved quotes in a few places
14634         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
14635         The strings in question are not doc strings, so this partially
14636         undoes the recent change that assumed they were doc strings.
14637         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
14638         * lisp/info.el (Info-finder-find-node):
14639         Use curved quotes.
14640         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14641         Also allow curved quotes in doc strings.
14643 2015-06-04  Glenn Morris  <rgm@gnu.org>
14645         * lisp/Makefile.in (AM_V_at): Add missing definition.
14647         * lisp/Makefile.in: Quieten output a bit.
14648         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
14649         Don't echo directories, since the commands we invoke print them.
14651         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
14652         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
14653         (SUBDIRS_SUBDIRS): New variables.
14654         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
14655         Remove.
14656         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
14657         (update-subdirs, compile-main, compile-clean):
14658         Replace "setwins" usage with new "SUBDIRS" variables.
14660         * lisp/vc/compare-w.el (compare-windows-get-window-function):
14661         Fix :version tag.
14663 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14665         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
14667         Undo removal of x_clear_area call on expose for GTK3 or cairo
14668         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
14669         Clear exposed area.  (Bug#20677)
14671 2015-06-04  Glenn Morris  <rgm@gnu.org>
14673         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
14675         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
14677         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
14678         Rename from quail-lao-update-translation, since lao.el defines that.
14680 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
14682         Handle new-style advice in find-funct
14683         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
14684         Handle new-style advice.  Return the symbol's function definition.
14685         (Bug#20718)
14686         (find-function-library): Update accordingly.
14688 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
14690         Merge branch 'map'
14692         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
14694         Add new function string-greaterp
14695         * lisp/subr.el (string-greaterp): New function.  Also aliased to
14696         `string>'.
14697         * test/automated/subr-tests.el (string-comparison-test): Add unit
14698         tests for `string>'and `string<'.
14699         * src/fns.c (string-lessp): Better docstring.
14701 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
14703         Fix timezone-related functions on MS-Windows
14704         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
14705         'xputenv', even if no reallocation of tzvalbuf was necessary.
14706         This fixes a bug in timezone-related functions on MS-Windows.
14707         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
14709 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
14711         Don't pass raw directory name to 'error'
14712         * lisp/files.el (basic-save-buffer-2): Avoid format error if
14713         a directory name contains a string like "%s".
14715 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
14717         Override 'grep --color=always'
14718         * lisp/progmodes/xref.el (xref-collect-matches):
14719         Override --color=always in grep-find-template.
14721 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
14723         Fix error introduced recently in file-notify-tests.el
14724         * test/automated/file-notify-tests.el
14725         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
14726         (file-notify--deftest-remote): Revert previous patch, not
14727         necessary anymore.
14729 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
14731         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
14732         Starting from a display string after a newline, point went to the
14733         previous line.  Also, fix an inadvertent use of a buffer position
14734         with FETCH_BYTE.  (Bug#20701)
14736 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
14738         Instrument file-notify-test.el in order to catch hydra error
14739         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
14740         Wrap body by `ignore-case', in order to trap non-local errors.
14742 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14744         Undo previous changes in non-toolkit scroll bar drawing
14745         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
14746         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
14748 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
14750         * .gitignore: Also ignore doc/*/*/*.html and .ps.
14752         Support quotes 'like this' in info files
14753         This is possible when 'makeinfo --disable-encoding' is used
14754         in Texinfo 5.
14755         * lisp/calc/calc-help.el (calc-describe-thing):
14756         * lisp/gnus/gnus-art.el (gnus-button-alist):
14757         * lisp/info.el (Info-find-index-name):
14758         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
14759         Also support quotes 'like this'.
14760         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
14761         * lisp/finder.el (finder-font-lock-keywords): Remove var that
14762         hasn't been used in years, instead of bothering to fix its quoting.
14764 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
14766         * .gitignore: Remove !test/etags/html-src/*.html.
14767         It's no longer needed, since *.html was removed.  Sort.
14769 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
14771         Restore <D> instead of '.' in grep-find-template
14772         * lisp/cedet/semantic/symref/grep.el
14773         (semantic-symref-grep-use-template): Update a comment.
14774         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
14775         instead of '.' in grep-find-template (bug#20719).
14776         (rgrep): Pass nil as the directory to rgrep-default-command.
14777         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
14778         default value for DIR.
14779         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
14780         workaround.
14782 2015-06-02  Glenn Morris  <rgm@gnu.org>
14784         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
14786         * configure.ac (emacs_config_features): Add Cairo.
14788         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
14790 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
14792         Ensure that autorevert works for remote files in file-notify-tests.el
14793         * test/automated/file-notify-tests.el (file-notify--test-desc):
14794         New defvar.
14795         (file-notify--test-remote-enabled)
14796         (file-notify-test00-availability, file-notify-test01-add-watch)
14797         (file-notify-test02-events): Use it.
14798         (file-notify--test-event-test): Check proper descriptor.
14799         (file-notify-test03-autorevert): Ensure that
14800         `visited-file-modtime' has changed.  (Bug#20392)
14802 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
14804         Add a pcase pattern for maps and `map-let' based on it
14805         * lisp/emacs-lisp/map.el (map-let): New macro.
14806         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
14807         * test/automated/map-tests.el: New test for `map-let'.
14809 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
14811         Reuse rgrep mechanics in xref-find-regexp
14812         * lisp/progmodes/grep.el (rgrep-default-command):
14813         Extract from `rgrep'.
14814         * lisp/progmodes/xref.el (xref-collect-references): Split from
14815         `xref-collect-matches'.  Only handle the case of symbol search.
14816         (xref-collect-matches): Instead of Semantic Symref, use
14817         `rgrep-default-command', to take advantage of its directory and
14818         file ignore settings.
14819         (xref--collect-match): Remove the last argument, leaving the
14820         regexp construction up to the caller.
14821         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
14822         Change to take the xref-collect- function to use as an argument.
14823         (elisp-xref-find): Update accordingly.
14824         * lisp/progmodes/etags.el (etags--xref-find-matches)
14825         (etags-xref-find): Same.
14827         Move xref-elisp-location to elisp-mode.el
14828         * lisp/progmodes/xref.el (xref-elisp-location)
14829         (xref-make-elisp-location, xref-location-marker): Remove here.
14830         (xref--xref): Don't limit the type of the location slot.
14831         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
14832         Define as a cl-struct here.
14833         (xref-location-marker): Move here.
14835 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
14837         Minor tweaks for .gitignore
14838         * .gitignore: Don't ignore versioned *.html and *.ps files.
14839         Don't ignore admin/notes/tags that might be ignored as TAGS
14840         on case-insensitive filesystems.  (Bug#20710)
14842 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
14844         Generate curved quotes in ert doc
14845         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
14846         (ert-results-mode-menu)
14847         (ert-results-pop-to-backtrace-for-test-at-point)
14848         (ert-results-pop-to-messages-for-test-at-point)
14849         (ert-results-pop-to-should-forms-for-test-at-point)
14850         (ert-describe-test):
14851         Quote ‘like this’, not `like this', when generating doc strings
14852         and the like.
14853         * test/automated/ert-x-tests.el (ert-test-describe-test):
14854         Allow quoting ‘like this’.
14856 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
14858         Add test for previous commit
14859         * test/automated/replace-tests.el: New file.
14860         (query-replace--split-string-tests): Add test for previous commit.
14862         Avoid confusion in query-replace history when replacing NUL chars
14863         * lisp/replace.el (query-replace--split-string): New function.
14864         (query-replace-read-from): Rely on the 'separator' property
14865         instead of searching for the NUL character (Bug#20690).
14867 2015-06-02  Glenn Morris  <rgm@gnu.org>
14869         Merge from origin/emacs-24
14870         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14872         * admin/gitmerge.el (gitmerge-commit-message):
14873         Exclude "skipped" messages from ChangeLog.
14875 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
14877         Sync with Tramp repository
14878         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
14879         messages.
14880         (tramp-handle-make-auto-save-file-name): When calling
14881         `make-auto-save-file-name' internally, make sure it uses Unix-like
14882         behavior, not Windows-like behavior.
14883         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
14884         the local case, because "chown" might fail on w32.
14885         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
14886         for XEmacs.
14888 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
14890         MS-Windows followup for batch stdout/stderr output changes
14891         * lisp/international/mule-cmds.el (set-locale-environment):
14892         In batch mode, use console codepages for keyboard and terminal
14893         encoding.  (Bug#20545)
14895         Update .gitattributes for DOS EOL files
14896         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
14897         CRLF end-of-line format.
14899         NS equivalents of xterm.c and w32term.c changes
14900         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
14901         glyph string background also when the font in use claims
14902         preposterously large global height value.  Helps to remove
14903         artifacts left from previous displays when glyphless characters
14904         are displayed as hex code in a box.
14905         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
14906         value for FRAME_LINE_HEIGHT, even when a font claims very large
14907         value for its height.
14909 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
14911         Avoid grave accent quoting in stderr diagnostics
14912         A few Emacs diagnostics go directly to stderr, and so can't easily
14913         contain curved quotes (as non-UTF-8 locales might mishandle them).
14914         Instead of bothering to add support for this rarity, reword the
14915         diagnostics so that they don't use grave accent to quote.
14916         * src/alloc.c (mark_memory): Fix comment.
14917         * src/buffer.c (init_buffer):
14918         * src/dispnew.c (init_display):
14919         * src/emacs.c (main, sort_args):
14920         * src/lread.c (dir_warning):
14921         * src/term.c (init_tty):
14922         * src/unexmacosx.c (unexec):
14923         * src/xfns.c (select_visual):
14924         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
14925         Reword stderr diagnostics to avoid quoting `like this'.
14926         * src/unexmacosx.c: Include errno.h.
14927         * src/xfns.c (select_visual): Encode value for locale.
14929 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14931         Treat batch stdout/stderr like standard display
14932         Calls like (print FOO) could generate improperly encoded or
14933         hard-to-read output if FOO contains characters outside the system
14934         locale.  Fix this by treating batch stdout and stderr like
14935         interactive standard display, when it comes to transliterating and
14936         encoding characters (Bug#20545).
14937         * doc/emacs/mule.texi (Communication Coding):
14938         * doc/lispref/display.texi (Active Display Table):
14939         * doc/lispref/nonascii.texi (Locales):
14940         * etc/NEWS:
14941         * src/coding.c (syms_of_coding):
14942         * src/dispnew.c (syms_of_display):
14943         Document this.
14944         * src/print.c: Include disptab.h.
14945         (printchar_to_stream): New function, with much of the guts of the
14946         old Fexternal_debugging_output, except this one also uses the
14947         standard display table.
14948         (printchar, strout, Fexternal_debugging_output): Use it.
14950 2015-05-31  Glenn Morris  <rgm@gnu.org>
14952         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
14954 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14956         Remove DEFSYMs that aren't used at the C level.  Also:
14957         * src/decompress.c (Qzlib_dll):
14958         * src/font.c (Qunicode_sip):
14959         * src/frame.c (Qtip_frame):
14960         * src/ftfont.c (Qserif):
14961         * src/gnutls.c (Qgnutls_dll):
14962         * src/xml.c (Qlibxml2_dll):
14963         Move from here ...
14964         * src/w32fns.c (syms_of_w32fns): ... to here,
14965         as these are used only on MS-Windows.
14967 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
14969         Use another default value for tramp-histfile-override
14970         * lisp/net/tramp-sh.el (tramp-histfile-override):
14971         Use ".tramp_history" as default.
14972         Fixes bug#20446
14974 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
14976         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14978 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
14980         * etc/NEWS: Add an entry about map.el.
14982         Improve the docstring of functions in map.el
14983         Since a map is not a data structure but a concept, adding information
14984         about the possible types of maps can be useful information.
14985         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
14986         each public function.
14988 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
14990         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
14991         specific tests depending on the type of the map.
14993         * lisp/emacs-lisp/map.el: Better docstrings.
14995 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
14997         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
14999 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
15001         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
15003         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
15005         Fix a false negative in `map-elt' with alists and values being nil
15006         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
15007         found but its associated value is nil, do not return the default
15008         value.
15009         * test/automated/map-tests.el: Add a regression test.
15011 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
15013         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
15015         Do not signal an error when trying to delete a key from an array
15016         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
15017         the key is present to avoid signaling an error.
15018         * test/automated/map-tests.el: Add a test for deleting non-existing
15019         keys from maps.
15021         * lisp/emacs-lisp/map.el: Better docstring.
15023         Minor improvement in map-elt
15024         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
15025         doing a lookup in arrays, but check the boundaries of the array
15026         instead.
15027         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
15028         and a negative integer as key.
15030 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
15032         * test/automated/map-tests.el: Refactoring of test methods.
15034         * test/automated/map-tests.el: Renamed from map-test.el.
15036 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
15038         * lisp/emacs-lisp/map.el (map-into): Better error message.
15040         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
15042         Throw an error when converting a map into an unknown map type
15043         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
15044         not valid.
15045         * test/automated/map-test.el: Add a regression test.
15047         New library map.el similar to seq.el but for mapping data structures.
15048         * test/automated/map-test.el: New file.
15049         * lisp/emacs-lisp/map.el: New file.
15051 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15053         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
15054         there's no explicit tag name (bug#20629).
15056 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15058         Remove format2
15059         * src/editfns.c, src/lisp.h (format2): Remove.
15060         It is more trouble than it's worth, now that we have CALLN.
15061         This is just a minor refactoring.
15062         * src/buffer.c (Fkill_buffer):
15063         * src/dbusbind.c (XD_OBJECT_TO_STRING):
15064         * src/fileio.c (barf_or_query_if_file_exists):
15065         Adjust to format2 going away.
15067         Don't misencode C-generated messages
15068         Also, be more consistent about calls to 'Fmessage' vs 'message'.
15069         * src/alloc.c (Fgc_status):
15070         Prefer AUTO_STRING to build_string for Fmessage call.
15071         * src/data.c (Fmake_variable_buffer_local)
15072         (Fmake_local_variable, Fmake_variable_frame_local):
15073         * src/doc.c (store_function_docstring):
15074         Use Fmessage, not message, since the argument can contain
15075         non-ASCII characters, and this can cause the resulting message
15076         to be incorrectly encoded for the current environment.
15077         * src/fns.c (maybe_resize_hash_table):
15078         * src/xselect.c (x_clipboard_manager_save_all):
15079         Use message, not Fmessage, since Fmessage's power isn't needed here.
15080         * src/process.c (Fmake_network_process): Reword message to avoid %s.
15081         * src/xdisp.c (vmessage): Document restrictions on message contents.
15082         (message_nolog) [false]: Remove unused code.
15084         Use \r rather than ^M in string literals
15085         This is less likely to cause problems on platforms that
15086         use CRLF (or CR!) termination for lines.
15088         Update .gitattributes to match current sources
15089         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
15090         * .gitattributes: Accommodate tests that insist on DOS format.
15091         Remove test/automated/data/decompress/foo-gzipped.
15092         Add etc/e/eterm-color.
15094 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15096         * doc/emacs/mule.texi (Modifying Fontsets):
15097         Document face-ignored-fonts.  (Bug#20628)
15099         Add etags test for the new -Q option
15100         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15101         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15102         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15103         test-case changes below.
15104         * test/etags/ETAGS.good_6: New file.
15105         * test/etags/cp-src/x.cc: New file.
15106         * test/etags/Makefile (CPSRC): Add x.cc.
15107         (check): Add one more test, for -Q.
15109 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15111         Use list for the tags completion table, not obarray
15112         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
15113         list instead of an obarray
15114         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
15115         (tags-completion-table): Combine those lists.
15116         (tags-completion-table): Update the docstring.
15118 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15120         Restore EOL format testing in etags
15121         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15122         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15123         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15124         test-case changes below.
15125         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
15126         * test/etags/cp-src/c.C (B): Add back stray CR character.
15127         * test/etags/c-src/dostorture.c: Add back.
15128         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
15130 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
15132         Declare Emacs on MS-Windows to be DPI-aware
15133         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
15134         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
15135         This avoids Windows entering compatibility mode for Emacs,
15136         which causes fonts to look less nice.
15138 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
15140         Improve Tramp traces
15141         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
15142         * lisp/net/tramp.el (tramp-debug-message): Use it.
15144 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15146         backup-buffer minor reworking of internals
15147         * lisp/files.el (backup-buffer): Rework to avoid a couple of
15148         unused locals inadvertently introduced in the previous change.
15150         backup-buffer now reports .emacs.d/%backup% ills
15151         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
15152         fails due to disk space exhaustion or whatever, do not pretend
15153         that it succeeded.  More generally, do a better job of checking
15154         for I/O failures, and limit the scope of the condition-case to
15155         just the operations where file errors should be caught and ignored
15156         (Bug#20595).  Also, don't bother trying to delete later backups if
15157         an earlier deletion fails, as this is a sign of trouble and it's
15158         better to stop when there's trouble.
15160         copy-file now truncates output after writing
15161         * src/fileio.c (Fcopy_file): Truncate output after writing rather
15162         than before.  This is more likely to work than truncation before
15163         writing, if the file system is out of space or the user is over
15164         disk quota (Bug#20595).  Also, check for read errors.
15166 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15168         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
15169         Don't load descriptors from directories above the package directories.
15171 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15173         Merge from gnulib
15174         This incorporates the following (Bug#20681):
15175         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
15176         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
15177         * lib/set-permissions.c: Copy from gnulib.
15179 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
15181         Improve Tramp traces
15182         * lisp/net/tramp.el (tramp-call-process-region): New defun.
15183         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
15185 2015-05-29  Glenn Morris  <rgm@gnu.org>
15187         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
15189 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
15191         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
15192         The signature was changed in the cairo branch, merged on 2015-05-23.
15193         This oversight broke compiling only the non-toolkit X version.
15195 2015-05-29  Samer Masterson  <samer@samertm.com>
15197         * doc/lispref/os.texi: Update initial-buffer-choice docs.
15199 2015-05-29  Glenn Morris  <rgm@gnu.org>
15201         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
15202         Mark as an expected failure.
15204 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15206         Change package test to look for curved quotes
15207         * test/automated/package-test.el (package-test-describe-package)
15208         (package-test-signed): Search for curved single quotes as well as
15209         for grave accent and apostrophe.
15211 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
15213         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
15214         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
15216 2015-05-28  Samer Masterson  <samer@samertm.com>
15218         Show files when `initial-buffer-choice' is non-nil
15219         * lisp/startup.el (command-line-1): When Emacs is given a file as an
15220         argument and `initial-buffer-choice' is non-nil, display both the file
15221         and `initial-buffer-choice'.  For more than one file, show
15222         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
15223         commands out of the command line arg parser.
15224         (initial-buffer-choice): Clarify docstring.
15226 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
15228         Fix last commit
15229         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
15230         (gnulib module qcopy-acl): Add back, as it is harmless.  This
15231         minimizes differences wrt lib/gnulib.mk.
15233         Fix the MS-Windows build as followup to gnulib update
15234         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
15235         set-permissions.c, as they don't compile on MinGW.
15236         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
15238 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
15240         Revert my change to gnus-art.el
15241         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
15242         It wasn't that important, and it caused a Gnus build to fail.  See:
15243         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
15245         New minor mode Electric Quote
15246         This lets you easily insert quotes ‘like this’ by typing
15247         quotes `like this', and similarly you can easily insert
15248         quotes “like this” by typing quotes ``like this'' (Bug#20545).
15249         * doc/emacs/basic.texi (Inserting Text):
15250         * doc/emacs/modes.texi (Minor Modes):
15251         * etc/NEWS: Document it.
15252         * doc/emacs/text.texi (Quotation Marks): New section.
15253         * lisp/electric.el (electric-quote-comment)
15254         (electric-quote-string, electric-quote-paragraph):
15255         New custom vars.
15256         (electric--insertable-p)
15257         (electric-quote-post-self-insert-function): New functions.
15258         (electric-quote-mode, electric-quote-local-mode): New minor modes.
15259         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15260         Add curved single quotes to electric-pair-text-pairs.
15261         Set electric-quote-string in this buffer.
15263         A few more doc string fixes (Bug#20385)
15265         Accept curved quotes in doc strings
15266         * lisp/info-look.el (info-lookup-guess-custom-symbol):
15267         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
15269         Generate curved quotes in pseudo-info nodes
15270         * lisp/info.el (Info-virtual-index-find-node)
15271         (Info-virtual-index, Info-apropos-find-node, info-apropos):
15272         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
15274         Fix minor quoting problems in doc strings
15275         Most of these fixes involve escaping grave accents that are
15276         actually intended to be grave accents, not left quotes.
15277         (Bug#20385)
15279         Support curved quotes in doc strings
15280         Emacs's traditional doc string style has been to quote symbols
15281         `like this'.  This worked well on now-obsolete terminals where
15282         ` and ' were symmetric quotes, but nowadays curved quotes
15283         ‘like this’ look better.  Support quoting the new way too.
15284         (Bug#20385)
15285         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
15286         ‘like-this’ as well as `like-this'.
15287         * etc/NEWS: Mention this.
15288         * lisp/cedet/mode-local.el (overload-docstring-extension)
15289         (mode-local-print-binding, mode-local-describe-bindings-2):
15290         * lisp/cus-theme.el (describe-theme-1):
15291         * lisp/descr-text.el (describe-text-properties-1, describe-char):
15292         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
15293         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
15294         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
15295         (eieio-help-constructor):
15296         * lisp/emacs-lisp/package.el (describe-package-1):
15297         * lisp/faces.el (describe-face):
15298         * lisp/help-fns.el (help-fns--key-bindings)
15299         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
15300         (help-fns--interactive-only, describe-function-1):
15301         (describe-variable):
15302         * lisp/help.el (describe-mode):
15303         * lisp/international/mule-cmds.el (describe-input-method)
15304         (describe-language-environment):
15305         * lisp/international/mule-diag.el (describe-character-set)
15306         (print-coding-system-briefly, list-input-methods)
15307         (list-input-methods-1):
15308         Insert curved quotes rather than grave accent and apostrophe.
15309         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
15310         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
15311         (checkdoc-proper-noun-region-engine):
15312         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
15313         (lisp-cl-font-lock-keywords-2):
15314         * lisp/finder.el (finder-font-lock-keywords):
15315         * lisp/gnus/gnus-art.el (gnus-button-alist):
15316         * lisp/help-fns.el (help-do-arg-highlight)
15317         (describe-function-1, describe-variable):
15318         * lisp/help-mode.el (help-xref-symbol-regexp)
15319         (help-xref-info-regexp, help-xref-url-regexp):
15320         * lisp/help.el (describe-mode):
15321         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
15322         * lisp/wid-edit.el (widget-documentation-link-regexp):
15323         Parse symbols quoted ‘like-this’ as well as `like-this'.
15324         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15325         Add "‘" and "’" to electric-pair-text-pairs.
15326         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
15327         (elisp-completion-at-point, elisp--preceding-sexp):
15328         Also treat "‘" and "’" as quoting chars.
15330         substitute-command-keys now curves quotes
15331         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
15332         * doc/lispref/help.texi (Keys in Documentation):
15333         * etc/NEWS: Document this.
15334         * src/doc.c (Fsubstitute_command_keys): Implement it.
15336 2015-05-28  Glenn Morris  <rgm@gnu.org>
15338         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
15339         (rmail-summary-by-topic, rmail-summary-by-senders):
15340         No longer strip leading/trailing whitespace.
15342         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
15343         (f90-no-block-limit): Add "enum".  (Bug#20680)
15344         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
15345         New tests.
15347 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15349         * lisp/isearch.el (isearch--current-buffer): Give a default value.
15350         Un-revert changes mistakenly dropped by f9fabb2b.
15352 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
15354         Merge from gnulib
15355         This incorporates:
15356         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
15357         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
15358         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
15359         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
15360         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
15361         2015-05-26 stdio: fix probe on mingw under gcc 5.1
15362         * admin/merge-gnulib (GNULIB_MODULES):
15363         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
15364         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
15365         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
15366         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
15367         Get latest versions from gnulib.
15368         * lib/get-permissions.c, lib/set-permissions.c: New files.
15369         * lib/gnulib.mk, m4/gnulib-comp.m4:
15370         Regenerate.
15371         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
15373 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
15375         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
15376         process here.
15377         (vc-do-command): Rather than here (bug#20608).
15379 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
15381         Avoid gratuitous delete-dups in face-at-point
15382         * lisp/faces.el (face-at-point): Do not compute the properly
15383         ordered, duplicate-free list if only a single value is
15384         requested anyway.  (Bug#20519)
15386         Show the exact C-x 8 RET invocation in describe-char
15387         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
15388         invocation instead of a template.  (Bug#20522)
15390 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15392         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
15393         (package-menu--post-refresh): Call `tabulated-list-print' with the
15394         UPDATE argument.  This only affects the refresh action, the revert
15395         action still erases tags.
15396         (package-menu-get-status): Change `assq' to `assoc'.
15397         (package-menu--mark-upgrades-1): New function.
15398         (package-menu--mark-upgrades-pending): New variable.
15399         (package-menu-mark-upgrades): Use them to delay marking until
15400         after refresh is done.
15401         (package-menu--post-refresh): Call mark-upgrades-1 if
15402         mark-upgrades-pending is non-nil.
15404 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15406         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
15407         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
15408         (commit 3953c4be2816537be95520605d45b866dc731f4b).
15410 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15412         * lisp/isearch.el (isearch--current-buffer): New var.
15413         (isearch-update): Set cursor-sensor-inhibit here.
15414         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
15415         (bug#20532).
15417         Change inhibit-point-motion-hooks to t
15418         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
15419         to t and document it as obsolete.
15421 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
15423         Support ZIP files that use Zip64 extensions
15424         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
15425         format of central directory offsets used by Zip64 extensions.
15426         (Bug#20665)
15428 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15430         New test tramp-test30-make-auto-save-file-name
15431         * test/automated/tramp-tests.el
15432         (tramp-test30-make-auto-save-file-name): New test.
15433         (tramp-test31-special-characters)
15434         (tramp-test31-special-characters-with-stat)
15435         (tramp-test31-special-characters-with-perl)
15436         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
15437         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
15438         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
15439         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
15441         Improve tramp-handle-make-auto-save-file-name
15442         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
15443         (tramp-handle-make-auto-save-file-name): Let native
15444         `make-auto-save-file-name' use `auto-save-file-name-transforms',
15445         if `tramp-auto-save-directory' is not set.
15447 2015-05-27  Glenn Morris  <rgm@gnu.org>
15449         No longer set dired-directory in eshell.  (Bug#16477)
15450         * lisp/eshell/esh-mode.el (eshell-mode):
15451         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
15453         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
15455         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
15456         * lisp/progmodes/cc-mode.el (c-mode-help-address):
15457         Change to submit@debbugs.
15458         (c-mode-bug-package): New constant.
15459         (mail-position-on-field): Declare.
15460         (c-submit-bug-report): Insert X-Debbugs-Package header.
15461         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
15462         Mention debbugs.gnu.org.
15464 2015-05-26  Glenn Morris  <rgm@gnu.org>
15466         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
15467         (rmail-summary-by-recipients, rmail-summary-by-topic)
15468         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
15469         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
15471 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
15473         Handle curved quotes in info files
15474         * lisp/calc/calc-help.el (calc-describe-thing):
15475         * lisp/info.el (Info-find-index-name)
15476         (Info-try-follow-nearest-node, Info-fontify-node):
15477         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
15478         In info files, process quotes ‘like this’ the same way we process
15479         quotes `like this'.  This catches a few places we missed earlier.
15481 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
15483         xref-prompt-for-identifier: Use a list value
15484         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
15485         value, to be interpreted as a list of commands.
15486         (xref--prompt-p): New function.
15487         (xref--read-identifier): Use it.
15489 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
15491         Teach MS-Windows font back-end return per-glyph ascent/descent
15492         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
15493         values.
15494         * src/w32font.c (w32font_text_extents): Compute, cache, and
15495         accumulate per-glyph ascent and descent values, instead of copying
15496         global values from the font.  If the values are not available from
15497         the font data, i.e., non-TTF fonts, fall back on font-global values.
15498         (compute_metrics): Compute and return per-glyph ascent and descent
15499         values, if returned by GetGlyphOutlineW, falling back on
15500         font-global values.  (Bug#20628)
15501         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
15502         height of rectangle to be drawn, to be compatible with
15503         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
15504         box, when per-glyph ascent/descent values are used.
15506 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15508         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
15509         Don't sort if sorter is nil.
15511 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
15513         Fix Bug#20621
15514         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
15515         are major modes which set `auto-save-mode' on their own rules;
15516         Tramp shall not overwrite such settings.
15518 2015-05-26  Glenn Morris  <rgm@gnu.org>
15520         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
15521         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
15522         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
15523         Doc updates.
15524         (vc-dir-mode): Remove unnecessary autoload.
15526 2015-05-25  Philipp Stephani  <phst@google.com>
15528         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
15529         (xterm--extra-capabilities-type): Add `getSelection'.
15530         (xterm--query): Add `no-async' argument.
15531         (xterm--init-activate-get-selection): New function.
15532         (terminal-init-xterm): Use it.
15533         (xterm--init-modify-other-keys): Rename from
15534         terminal-init-xterm-modify-other-keys.
15535         (xterm--init-bracketed-paste-mode): Rename from
15536         terminal-init-xterm-bracketed-paste-mode.
15537         (xterm--init-activate-set-selection): Rename from
15538         terminal-init-xterm-activate-set-selection.
15539         (xterm--selection-char): New function.
15540         (gui-backend-set-selection): Use it.  Use the &context to only apply
15541         this method in terminals where we enabled the feature.
15542         (gui-backend-get-selection): New method.
15544 2015-05-25  Daniel Colascione  <dancol@dancol.org>
15546         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
15547         keyword constants to C++.
15549 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
15551         Make TAGS files more portable to MS-Windows
15552         * etc/NEWS: Document this.
15553         * lib-src/etags.c (readline_internal) [DOS_NT]:
15554         Don't treat CRs differently from GNUish hosts.
15555         * lisp/progmodes/etags.el (etags-goto-tag-location):
15556         Adjust STARTPOS to account for the skipped CRs in dos-style files.
15558 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15560         Improve fix of bug#20634 in tramp-sh.el
15562 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15564         Fix a typo in last commit
15565         * lib-src/etags.c (C_entries): Fix a typo.
15566         * test/etags/ETAGS.good_1:
15567         * test/etags/ETAGS.good_2:
15568         * test/etags/ETAGS.good_3:
15569         * test/etags/ETAGS.good_4:
15570         * test/etags/ETAGS.good_5:
15571         * test/etags/CTAGS.good: Update due to the change in etags.c.
15573         Fix tagging of class members in C-like OO languages
15574         * lib-src/etags.c (longopts): Add new option --class-qualify and
15575         its shorthand -Q.
15576         (print_help): Add help text for --class-qualify.
15577         (main): Add handling of -Q.
15578         (consider_token, C_entries) <omethodparm>: Append argument types
15579         to Objective C methods only if --class-qualify was specified.
15580         Qualify C++, Objective C, and Java class members with their class
15581         names only if --class-qualify was specified.
15582         (C_entries): If --class-qualify was not specified, remove the
15583         namespace and class qualifiers from tag names of C++ methods.
15584         This allows to use etags.el as xref back-end without the
15585         tag-symbol-match-p method, which greatly increases the number of
15586         potentially false positives.  (Bug#20629)
15587         * doc/man/etags.1: Update to document the new --class-qualify
15588         option.
15589         * test/etags/ETAGS.good_1:
15590         * test/etags/ETAGS.good_2:
15591         * test/etags/ETAGS.good_3:
15592         * test/etags/ETAGS.good_4:
15593         * test/etags/ETAGS.good_5:
15594         * test/etags/CTAGS.good: Update due to changes in etags.c.
15596 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15598         (cl-generic-define-method): Side effects are evil (bug#20644)
15599         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
15600         cons-cells that might be used as keys in an `equal' hash-table.
15602 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15604         Make erc timestamps visible again
15605         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
15606         Make timestamps visible again (if requested).
15608 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15610         Fix last change in etags.c that broke tagging compresed files
15611         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
15612         quoting of decompression shell command for MS-Windows/MS-DOS.
15614 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15616         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
15617         (Bug#20639)
15619 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15621         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
15622         Fix typo in "Inhibit `epa-file-handler' in Tramp"
15623         (commit 89035e247591c8d688fce922b7079881aa110f33).
15625 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
15627         Fix IPv6 addresses in Tramp
15628         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
15629         Add square brackets around host name.
15631 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15633         Inhibit `epa-file-handler' in Tramp (Bug#20634)
15634         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
15635         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
15636         `epa-file-handler'.
15638 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
15640         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
15641         (pcase-let): Document the behavior in case the pattern doesn't match.
15643 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15645         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
15646         (tabulated-list-print): New optional argument, UPDATE.  If
15647         non-nil, the list is printed by only adding and deleting the
15648         changed entries, instead of erasing the whole buffer.  This method
15649         is much faster when few or no entries have changed.
15650         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
15651         * etc/NEWS: Document it.
15653         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
15654         (tabulated-list--get-sorter): New function.
15655         (tabulated-list-print): Restore window-line when remember-pos is
15656         passed and optimize away the `nreverse'.
15658 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
15660         Simpilify etags TEX mode scanning
15661         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
15662         Remove static vars.
15663         (TeX_commands): Deduce escapes here instead.
15664         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
15665         This removes the need for a reset_input call.
15667         Improve etags I/O error reporting
15668         * lib-src/etags.c:
15669         Don't include sys/types.h and sys/stat.h; no longer needed.
15670         (infilename): New static var.
15671         (process_file_name): Don't call 'stat'.  Instead, just open the
15672         file for reading and report any errors.  Don't bother making
15673         a copy of the file argument; it's not needed.  Be more careful to
15674         use the failing errno when reporting an error.
15675         Quote the real name better (though no perfectly)
15676         when passing it to the shell.
15677         (reset_input): New function, which reports I/O errors.
15678         All uses of 'rewind' changed to use this function.
15679         (perhaps_more_input): New function, which also checks for
15680         I/O errors.  All uses of 'feof' changed to use this function.
15681         (analyze_regex): Report an error if fclose fails.
15682         (readline_internal): Report an error if getc fails.
15683         (etags_mktmp): Return an error if close fails.
15685         etags.c: avoid side effects in 'if'
15686         * lib-src/etags.c (process_file_name, Perl_functions)
15687         (TEX_decode_env): Hoist side effects into previous statement.
15689         .gitignore tweaks
15690         * .gitignore: Ignore all *.stamp files.  Sort.
15691         Ignore [0-9]*.txt (commonly used name for git patches)
15692         and /vc-dwim-log-* (vc-dwim temporary).
15694 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
15696         Fix last change in etags.c, which failed the test suite
15697         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
15698         before the last change.
15700 2015-05-23  Glenn Morris  <rgm@gnu.org>
15702         Remove charset map files from repository, generate in first bootstrap
15703         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
15704         (all): Create the stamp file.
15705         (extraclean): Delete the stamp file.
15706         * src/Makefile.in (lispintdir, charsets): New variables.
15707         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
15708         New rules.
15709         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
15710         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
15711         * etc/charsets/*.map: Remove from repository.
15713 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
15715         Cleanup etags.c to use locale-independent code
15716         Although this doesn't alter behavior (as etags doesn't use
15717         setlocale), the new version is more clearly locale-independent and
15718         the executable is a bit smaller on my platform.
15719         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
15720         Include <c-ctype.h> instead of <ctype.h>.
15721         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
15722         (begtk, midtk):
15723         Remove; no longer needed.
15724         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
15725         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
15726         c_islower, c_tolower, respectively.
15727         (notinname, begtoken, intoken, endtoken): Rewrite as functions
15728         instead of macros, and initialize the tables at compile-time
15729         rather than at run-time.
15731         Put default action first in src/Makefile
15732         * src/Makefile.in (all): Put this rule before lisp.mk.
15733         That way, plain 'make' works in the src directory again.
15735 2015-05-23  Glenn Morris  <rgm@gnu.org>
15737         * Makefile.in: Fix extraclean rule.
15738         (extraclean_dirs): New.
15739         (extraclean): Use it.
15741 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15743         Avoid compiler warning in image.c on MS-Windows
15744         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
15745         warning in image.c.
15747 2015-05-23  Glenn Morris  <rgm@gnu.org>
15749         Fix --without-toolkit-scroll-bars builds.
15750         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
15751         Add new argument to x_clear_area1.
15752         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15753         Update x_clear_area arguments.
15755         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
15756         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
15757         Change to included version.
15758         (LOCAL, local, totalclean): Remove.
15759         (extraclean): Delete all generated files.
15761 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15763         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
15764         CVS/Entries exists.
15766         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
15768         * lisp/progmodes/etags.el (tags-completion-at-point-function):
15769         Don't trust the find-tag function.
15771 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
15773         Pacify --enable-gcc-warnings
15774         * src/frame.h (x_query_color): Remove redundant extern decl.
15775         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
15776         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
15777         (ftcrfont_text_extents, ftcrfont_draw):
15778         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
15779         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
15780         (x_ins_del_lines, frame_highlight, frame_unhighlight)
15781         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
15782         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
15783         (x_update_window_begin, x_connection_closed)
15784         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15785         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
15786         (*x_gc_get_ext_data, x_extension_initialize)
15787         (x_cr_accumulate_data):
15788         Remove redundant static decl.  Many of these GCC doesn't complain
15789         about, but we might as well clean out the duplication while we're
15790         in the neighborhood.
15791         * src/xterm.c (x_fill_trapezoid_for_relief):
15792         Remove decl of nonexistent function.
15794 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15796         Replace gui-method macros with cl-generic with &context
15797         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
15798         (gui-method-declare, gui-call): Remove.
15799         (frame-creation-function): Use cl-defgeneric.
15800         (make-frame): Adjust callers.
15801         * lisp/menu-bar.el (menu-bar-edit-menu):
15802         Use gui-backend-selection-exists-p.
15803         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
15804         (gui-backend-get-selection): New cl-generic to replace
15805         gui-get-selection method.
15806         (gui-backend-set-selection): New cl-generic to replace
15807         gui-set-selection method.
15808         (gui-selection-owner-p): New cl-generic to replace
15809         gui-selection-owner-p method.
15810         (gui-backend-selection-exists-p): New cl-generic to replace
15811         gui-selection-exists-p method.  Adjust all callers.
15812         * lisp/server.el (server-create-window-system-frame): Don't ignore
15813         window-system spec even when unsupported.
15814         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
15815         * lisp/startup.el (handle-args-function, window-system-initialization):
15816         Use cl-defgeneric.
15817         (command-line): Adjust calls accordingly.
15818         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
15819         a window-system-initialization method.
15820         (handle-args-function, frame-creation-function): Use cl-defmethod.
15821         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15822         (gui-get-selection): Use cl-defmethod on the new functions instead.
15823         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
15824         a gui-backend-get-selection method.
15825         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
15826         Use cl-defmethod on the new functions instead.
15827         (msdos-window-system-initialization): Turn into
15828         a window-system-initialization method.
15829         (frame-creation-function, handle-args-function): Use cl-defmethod.
15830         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
15831         a window-system-initialization method.
15832         (handle-args-function, frame-creation-function): Use cl-defmethod.
15833         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15834         (gui-get-selection): Use cl-defmethod on the new functions instead.
15835         * lisp/term/x-win.el (x-window-system-initialization): Turn into
15836         a window-system-initialization method.
15837         (handle-args-function, frame-creation-function): Use cl-defmethod.
15838         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15839         (gui-get-selection): Use cl-defmethod on the new functions instead.
15840         * lisp/term/xterm.el (xterm--set-selection): Turn into
15841         a gui-backend-set-selection method.
15842         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
15843         (Fns_selection_owner_p): Remove unused arg `terminal'.
15844         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
15846 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15848         Revert "Fix etags Bug#20629 that broke C++ support"
15849         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
15851 2015-05-23  Jan D  <jan.h.d@swipnet.se>
15853         Fix etags Bug#20629 that broke C++ support
15854         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
15855         Revert commit from Sun May 10 (Bug#20629).
15857         Merge branch 'cairo'.
15858         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
15859         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
15861         Merge branch 'master' into cairo
15863         Fixes to compile cairo branch without cairo
15864         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
15865         first argument.
15866         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
15867         USE_CAIRO.
15869 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
15871         * lisp/emacs-lisp/package.el: Always update selected-packages.
15872         (package--update-selected-packages): New function.
15873         (package-menu-execute): Use it before starting the transaction,
15874         this way the list of selected packages is updated even when the
15875         transaction fails.
15876         (package-menu--perform-transaction): Don't edit selected-packages.
15878 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15880         Fix etags reading of compressed files
15881         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
15882         Include fcntl.h, for O_CLOEXEC.
15883         (process_file_name): Don't use 'popen', whose streams cannot be
15884         rewound.  Instead, uncompress the file to a temporary file,
15885         created by 'etags_mktmp', and read from that as usual.
15886         (etags_mktmp): New function.
15887         * test/etags/ETAGS.good_1:
15888         * test/etags/ETAGS.good_2:
15889         * test/etags/ETAGS.good_3:
15890         * test/etags/ETAGS.good_4:
15891         * test/etags/ETAGS.good_5: Update to be consistent with latest
15892         changes in etags.c regarding reading compressed files.
15894         Improve documentation of 'set-fontset-font'
15895         * doc/lispref/display.texi (Fontsets): Document the value of nil
15896         for the 3rd argument of 'set-fontset-font'.
15898         Fix documentation of forward-line
15899         * src/cmds.c (Fforward_line): Clarify the return value if the line
15900         at end of accessible portion of the buffer has no newline.
15901         * doc/lispref/positions.texi (Text Lines): Document what happens
15902         if the line at end of accessible portion of buffer has no newline.
15903         (Bug#20587)
15905 2015-05-22  Glenn Morris  <rgm@gnu.org>
15907         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
15909         * admin/charsets/mapconv (LC_ALL): Set to C.
15911         * Makefile.in: Add admin/charsets into top-level clean rules.
15912         (clean): Add admin/charsets.
15913         (maybeclean_dirs): New variable.
15914         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
15916         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
15918 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
15920         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
15922 2015-05-22  Glenn Morris  <rgm@gnu.org>
15924         Generate admin/charsets Makefile via configure, and make more portable
15925         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
15926         (admin/charsets/Makefile): Generate it.
15927         * admin/charsets/Makefile.in: Rename from Makefile.
15928         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
15929         New variables, set by configure.
15930         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
15931         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
15932         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
15933         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
15934         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
15935         (all): Declare PHONY.
15936         (local): New PHONY target.
15937         (map_template): New template.  Use to define short PHONY aliases.
15938         (*.map): Add directory prefixes to targets and prerequisites.
15939         Respect make verbosity.
15940         (JISC6226.map): Replace non-portable sed append without newline.
15941         (install): Remove rule.
15942         (clean): Only delete temporary sedscript.
15943         (bootstrap-clean, distclean, maintainer-clean, extraclean)
15944         (totalclean): New PHONY rules.
15945         * admin/charsets/mapconv (BASE): Replace basename with expr.
15946         (FILE): Add "mapfiles" subdirectory.
15947         (AWK): New variable.  Use throughout in place of "awk".
15948         (main): Use "gunzip -c" in place of "zcat".
15949         Don't leave whitespace before "p", for older sed.
15950         * admin/charsets/mapfiles/PTCP154: Add final newline,
15951         to make older sed versions happy.
15953 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15955         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
15956         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
15957         (auto-revert-notify-watch-descriptor): Use defvar-local.
15958         (find-file-hook, auto-revert-tail-mode)
15959         (auto-revert-notify-add-watch): Use setq-local.
15960         (auto-revert-notify-add-watch): Don't call make-local-variable on
15961         kill-buffer-hook (bug#20601).
15963 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
15965         Change defgeneric so it doesn't completely redefine the function
15966         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
15967         previously defined methods.
15968         (cl-generic-define-method): Let-bind purify-flag instead of
15969         using `fset'.
15970         (cl--generic-prefill-dispatchers): Only define during compilation.
15971         (cl-method-qualifiers): Remove redundant alias.
15972         (help-fns-short-filename): Silence byte-compiler.
15973         * test/automated/cl-generic-tests.el:
15974         Adjust to new defgeneric semantics.
15976 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
15978         * lisp/emacs-lisp/package.el (package-menu-execute):
15979         Remove reference to remove-dups.
15981 2015-05-21  kwhite  <kwhite@gnu.org>
15983         * lisp/erc/erc.el: Hide network/channel messages.
15984         (erc-network-hide-list, etc-channel-hide-list): New lists to define
15985         message types per network/channel.
15986         (erc-add-targets): New function to parse list of targets.
15987         (erc-hide-current-message-p): Modified to check for new targets.
15989 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
15991         Don't quote nil and t in doc strings
15992         This is as per "Tips for Documentation Strings" in the elisp manual.
15993         For consistency, do the same in diagnostics and comments.
15995 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
15997         Fix a minor problem with mouse-face on mode line
15998         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
15999         mouse face also if the mouse pointer hovers above mode-line glyphs
16000         that don't come from any Lisp string.  (Bug#20620)
16002 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16004         * lisp/emacs-lisp/package.el: Fix selected-package logic.
16005         (package-menu-execute): Mark as selected all non-upgrade packages
16006         being installed.
16007         (package-menu--perform-transaction): Don't mark anything.
16009         * lisp/emacs-lisp/package.el: Mode-line progress report.
16010         (package-menu--transaction-status): New variable.
16011         (package-menu-mode, package-menu--perform-transaction): Use it.
16013         * lisp/emacs-lisp/package.el: Better transaction messages.
16014         (package-menu--partition-transaction): New function.
16015         (package-menu--prompt-transaction-p, package-menu-execute):
16016         Use it.
16017         (package-menu--perform-transaction): Don't do any messaging.
16019         * lisp/emacs-lisp/package.el: Revert async package transactions.
16020         (package-menu-async): Update doc.
16021         (package-install-from-archive, package-download-transaction)
16022         (package-install, package-menu--perform-transaction)
16023         (package-menu-execute): Remove asynchronous functionality.
16025 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
16027         Revert doc string changes to f90.el
16028         Problem reported by Glenn Morris in:
16029         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
16030         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16031         Revert recent changes to doc strings, as it's intended that they
16032         use grave accent, not quote.
16034 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
16036         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
16037         Improve parameter name.
16039         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
16041 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
16043         Don't require help-fns when not needed
16044         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
16045         * lisp/emacs-lisp/elint.el:
16046         Don't require help-fns at the top level
16047         * lisp/emacs-lisp/advice.el (ad-arglist):
16048         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16049         Don't require help-fns.  (Bug#17001)
16051 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
16053         Fix slash collapsing in etags on MS-Windows
16054         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
16055         MS-Windows code from the Posix code, and support collapsing both
16056         forward- and back-slashes on MS-Windows.  Fixes a regression found
16057         by the test suite.
16059         Improve documentation of glyphless-char-display
16060         * doc/lispref/display.texi (Glyphless Chars): Improve
16061         documentation of glyphless character display.
16063         Fix "acronym" display of glyphless characters on w32
16064         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
16065         ignore "acronym" substitutes of 1 character for glyphless characters.
16067 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
16069         Add an automated test for let-when-compile
16070         * test/automated/subr-tests.el (let-when-compile): New test.
16072         Add let-when-compile macro instead of using pcase-let
16073         * lisp/subr.el (let-when-compile): New let-like macro that makes its
16074         bindings known to macros like `eval-when-compile' in the body.
16075         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
16076         a `let-when-compile'.  Also comment out the unused lexical var
16077         `el-kws-re'.
16078         The change greatly improves readability, while providing almost the
16079         same (even shorter) byte code: instead of pre-evaluating 10 variables,
16080         tossing them into a list, and destructuring that list a full screen
16081         page later, the variables are simply bound as they are evaluated,
16082         wrapped individually in `eval-when-compile'.
16084 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
16086         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
16087         (package-delete-button-action): New function.
16088         (describe-package-1): Add Delete button.
16090         * lisp/emacs-lisp/package.el: Better dependency description.
16091         (package--used-elsewhere-p): New optional arg, ALL, and return
16092         package-desc objects instead of names.
16093         (package-delete): Update accordingly.
16094         (describe-package-1): Describe which packages require the package.
16096 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
16098         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
16099         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
16100         Fix doc-string.
16102         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
16103         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
16104         (switch-to-buffer): If the selected window is strongly dedicated
16105         to its buffer, signal error before prompting for buffer name.
16106         Handle `switch-to-buffer-in-dedicated-window'.
16107         * doc/lispref/windows.texi (Switching Buffers):
16108         Document `switch-to-buffer-in-dedicated-window'.
16110 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16112         Prefer "this" to “this” in doc strings
16113         This mostly just straightens quotes introduced in my previous patch.
16114         Suggested by Dmitry Gutov in:
16115         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
16116         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
16117         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
16118         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
16119         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
16120         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
16121         Prefer straight double quotes to curved double quotes in doc strings.
16123         Fix minor quoting problems in doc strings
16124         These were glitches regardless of how or whether we tackle the
16125         problem of grave accent in doc strings.
16126         * lisp/calc/calc-aent.el (math-restore-placeholders):
16127         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
16128         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
16129         * lisp/leim/quail/hebrew.el ("hebrew-new")
16130         ("hebrew-biblical-sil"):
16131         * lisp/leim/quail/thai.el ("thai-kesmanee"):
16132         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
16133         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
16134         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
16135         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
16136         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
16137         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
16138         (semantic-tag-components):
16139         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
16140         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
16141         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
16142         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
16143         * lisp/emacs-lisp/generator.el (iter-next):
16144         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
16145         (gnus-article-mode-syntax-table):
16146         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
16147         * lisp/net/soap-client.el (soap-wsdl-get):
16148         * lisp/net/telnet.el (telnet-mode):
16149         * lisp/org/org-compat.el (org-number-sequence):
16150         * lisp/org/org.el (org-remove-highlights-with-change)
16151         (org-structure-template-alist):
16152         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
16153         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
16154         (handwrite-12pt, handwrite-13pt):
16155         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16156         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
16157         * lisp/progmodes/verilog-mode.el (verilog-tool)
16158         (verilog-string-replace-matches, verilog-preprocess)
16159         (verilog-auto-insert-lisp, verilog-auto-insert-last):
16160         * lisp/textmodes/makeinfo.el (makeinfo-options):
16161         * src/font.c (Ffont_spec):
16162         Fix minor quoting problems in doc strings, e.g., missing quote,
16163         ``x'' where `x' was meant, etc.
16164         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
16165         Fix minor quoting problem in other string.
16166         * lisp/leim/quail/ethiopic.el ("ethiopic"):
16167         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
16168         Omit unnecessary quotes.
16169         * lisp/faces.el (set-face-attribute, set-face-underline)
16170         (set-face-inverse-video, x-create-frame-with-faces):
16171         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
16172         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
16173         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
16174         * lisp/net/tramp.el (tramp-methods):
16175         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
16176         * lisp/textmodes/artist.el (artist-ellipse-right-char)
16177         (artist-ellipse-left-char, artist-vaporize-fuzziness)
16178         (artist-spray-chars, artist-mode, artist-replace-string)
16179         (artist-put-pixel, artist-text-see-thru):
16180         * lisp/vc/ediff-util.el (ediff-submit-report):
16181         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
16182         Use double-quotes rather than TeX markup in doc strings.
16183         * lisp/skeleton.el (skeleton-pair-insert-maybe):
16184         Reword to avoid the need for grave accent and apostrophe.
16185         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
16186         Don't use grave and acute accents to quote.
16188 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
16190         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
16191         Silence compiler.
16193 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16195         Try to port new etags tests to MS-Windows
16196         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16197         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16198         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16199         Adjust to test-case changes below.
16200         * test/etags/Makefile (CSRC): Remove dostorture.c.
16201         Whatever it was trying to test, wasn't working portably.
16202         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
16203         just a line-ending problem.
16204         * test/etags/c-src/dostorture.c: Remove.
16205         * test/etags/cp-src/c.C: Remove stray CR.
16206         * test/etags/html-src/algrthms.html: Remove trailing CRs.
16207         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
16208         but if someone edits it later it should stay UTF-8-compatible.
16210 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
16212         Fix display of overlapping window-specific overlays
16213         * src/keyboard.c (adjust_point_for_property): When adjusting point
16214         due to display strings, ignore overlays that are specific to
16215         windows other than the currently selected one.
16216         * src/xdisp.c (handle_single_display_spec): If the display
16217         property comes from an overlay, arrange for buffer iteration to
16218         resume only after the end of that overlay.  (Bug#20607)
16220 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
16222         New command icomplete-force-complete-and-exit
16223         * lisp/icomplete.el (icomplete-force-complete-and-exit):
16224         New command
16225         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
16226         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
16227         (icomplete-minibuffer-map): Bind C-j to it.
16228         (icomplete-forward-completions, icomplete-backward-completions):
16229         Mention the new command in the docstring.
16230         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
16231         Revert the previous fix for bug#17545.
16233 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
16235         Fix last commit
16237         In Elisp manual explain how to override window manager positioning
16238         (Bug#20552)
16239         * doc/lispref/frames.texi (Position Parameters): Give example of
16240         how to override a window manager positioning decision.
16242         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
16243         * src/frame.c (Fdelete_frame): In doc-string mention that frame
16244         can't be deleted if it has a surrogate minibuffer.
16245         * doc/lispref/frames.texi (Minibuffers and Frames)
16246         (Deleting Frames): Explain "surrogate minibuffer frames".
16248         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
16250 2015-05-18  Glenn Morris  <rgm@gnu.org>
16252         Add option to ignore commit lines matching a pattern in ChangeLog
16253         * build-aux/gitlog-to-changelog: Add --ignore-line option.
16254         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
16256 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
16258         Don't skip new etags tests on non-UTF-8 hosts
16259         Problem reported by Eli Zaretskii for MS-Windows.
16260         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
16261         (LC_ALL): Set to C if the current locale isn't UTF-8.
16262         (.PHONY): Remove ediff_1 thru ediff_5.
16263         (check): Always run.
16265 2015-05-18  Glenn Morris  <rgm@gnu.org>
16267         * lisp/calculator.el (calculator-funcall):
16268         * lisp/textmodes/artist.el (artist-spray-random-points):
16269         Use standard degree/radian conversion utilities.
16271         Further lisp-complete-symbol related cleanup.
16272         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
16273         Unadvertise non-functional argument.  Replace obsolete alias.
16275 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16277         Add a test case for Maven warning ouput
16278         * test/automated/compile-tests.el
16279         (compile-tests--test-regexps-data): Add a case for Maven warning
16280         ouput.
16281         (compile--test-error-line): Check the compilation message type, if
16282         it's specified in the test data.
16284 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
16286         Update Maven compilation-mode entry to distinguish warnings
16287         * lisp/progmodes/compile.el
16288         (compilation-error-regexp-alist-alist): Update Maven entry to
16289         distinguish warnings (bug#20556).
16291 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
16293         * test/automated/sgml-mode-tests.el: New file.
16295 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16297         Improve handling of the first Git revision
16298         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
16299         there's no next entry, delete until the end of the buffer.
16300         (log-view-end-of-defun-1): Stop at eob.
16301         * lisp/vc/vc-annotate.el
16302         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
16303         when previous-revision is nil.
16304         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
16305         with `--' to avoid ambiguity.
16306         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
16307         returned revision string.
16308         (vc-git-annotate-time): Expect `^' before the first revision.
16309         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
16310         REV1 is nil, and REV2 is not.
16311         * lisp/vc/vc.el: Update the description of the `diff' function.
16313 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
16315         Allow checkdoc to be called in batch
16316         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
16317         is non-nil, echo the error with `warn'.
16318         How it can be used in -batch:
16319         (with-current-buffer (find-file "checkdoc.el")
16320           (checkdoc-current-buffer t))
16322 2015-05-18  Glenn Morris  <rgm@gnu.org>
16324         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
16326 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
16328         * admin/notes/unicode: New section "binary files".
16330         Change new etags test to use UTF-8 encoding
16331         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16332         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16333         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16334         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
16335         * test/etags/html-src/softwarelibero.html:
16336         Switch to UTF-8 encoding.
16337         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
16338         Remove Makefile, as it's too incestuous to have the test input
16339         include the build procedure.
16340         (UTF8_LOCALE, UTF_ENCODING): New macros.
16341         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
16342         (check): Skip if not UTF-8.
16343         (.PHONY): New rule.
16344         (FRC): Remove, as superseded by .PHONY.  All uses removed.
16345         (regexfile): Prefer printf to echo when outputting oddball chars.
16346         (.PRECIOUS): Remove, as these files are not built.
16348         Rename 'foo-gzipped' to 'foo.gz'
16349         * test/automated/data/decompress/foo.gz:
16350         Rename from test/automated/data/decompress/foo-gzipped,
16351         to make it easier for other tools to tell that it's compressed.
16352         * test/automated/zlib-tests.el (zlib--decompress):
16353         Adjust to renamed file.
16355 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
16357         Set up default-directory
16358         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
16359         binding for `v'.
16360         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
16361         appropriate value for default-directory.
16363 2015-05-17  Samer Masterson  <samer@samertm.com>
16365         * lisp/eshell/em-term.el (eshell-term-sentinel):
16366         No-op by default, only kills term buffer if
16367         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
16368         (eshell-destroy-buffer-when-process-dies): New custom to preserve
16369         previous behavior.
16371         eshell: Introduce new buffer syntax
16372         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
16373         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
16374         needed (Bug#19319).
16375         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
16376         (eshell-get-target): Remove shorthand-specific code.
16377         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
16378         '#<buffer-name>'.
16380 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16382         Merge branch 'master' into cairo
16384 2015-04-26  Jan D  <jan.h.d@swipnet.se>
16386         Merge branch 'master' into cairo
16388         Add PBM support for cairo
16389         * src/image.c (xcolor_to_argb32): New function.
16390         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
16391         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
16392         XImagePtr if ! USE_CAIRO.
16393         (pbm_load): Add cairo support.
16395 2015-04-12  Jan D  <jan.h.d@swipnet.se>
16397         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
16398         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
16399         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
16400         x_free_cr_resources.
16402         Handle specified bg in images.  Use generic libpng code for PNGs.
16403         * src/image.c (get_spec_bg_or_alpha_as_argb)
16404         (create_cairo_image_surface): New functions when USE_CAIRO.
16405         (xpm_load): Call the above functions.  Handle XPM without mask
16406         when USE_CAIRO.
16407         (png_load_body): Handle USE_CAIRO case.
16408         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
16409         instead.
16410         (jpeg_load_body): Call create_cairo_image_surface.
16411         (gif_load, svg_load_image): Handle specified background, call
16412         create_cairo_image_surface.
16413         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
16415 2015-04-11  Jan D  <jan.h.d@swipnet.se>
16417         Support GIF and TIFF with cairo
16418         * configure.ac: Allow jpeg with cairo.
16419         Allow tiff and gif with cairo.
16420         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16421         (tiff_load): Create cairo image surface if USE_CAIRO.
16422         (gif_load): Ditto.
16424         Support JPEG with USE_CAIRO
16425         * configure.ac: Allow jpeg with cairo.
16426         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16428 2015-04-05  Jan D  <jan.h.d@swipnet.se>
16430         Support RSVG and cairo
16431         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
16432         * src/dispextern.h (struct image): Add cr_data2 if cairo.
16433         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
16434         (x_clear_image): Free cr_data and cr_data2 if set.
16435         (xpm_load): Assign data to cr_data2.
16436         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
16438 2015-04-03  Jan D  <jan.h.d@swipnet.se>
16440         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
16441         * configure.ac (HAVE_RSVG): Move after cairo.
16442         (USE_CAIRO): Disable rsvg, don't disable Xpm.
16443         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
16444         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
16445         don't return early.
16446         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
16447         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
16448         and create a surface.
16450         Tool tips for menus did not show any text.
16451         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
16452         tip frames, the geometry may be wrong.
16454         Merge branch 'master' into cairo, fixes tooltips not shown.
16456         Merge branch 'master' into cairo
16458         Add CAIRO_CFLAGS to lwlib/Makefile.in
16459         * Makefile.in (CAIRO_CFLAGS): Add.
16461 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16463         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
16465 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16467         Draw outermost line using black relief and erase corners also for cairo.
16468         * src/xterm.c [USE_CAIRO]: Include math.h.
16469         (enum corners) [USE_CAIRO]: New enum.
16470         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
16471         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
16472         than 1, draw the outermost line using the black relief.
16474         * src/xterm.c (x_fill_trapezoid_for_relief):
16475         Remove unnecessary cairo_close_path.
16477 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16479         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
16481         * src/xterm.c (x_draw_stretch_glyph_string):
16482         Call x_reset_clip_rectangles instead of XSetClipMask.
16484         Use int instead of unsigned int for width and height args.
16485         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
16486         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
16487         width and height args.
16489         Modernize k&r cairo-related function declarations.
16490         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16491         (xg_print_frames_dialog): Modernize k&r declarations.
16492         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
16493         (Fx_print_frames_dialog): Modernize k&r declarations.
16494         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
16495         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
16496         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16497         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
16498         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
16499         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16500         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
16501         (x_clear_area): Modernize k&r declarations.
16503         Implement wave-style variant of underlining for cairo.
16504         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
16505         (x_draw_underwave) [USE_CAIRO]: Use it.
16507         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
16508         instead of XFillRectangle.
16510 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16512         Fix fringe bitmap initialization for cairo
16513         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
16514         data for cairo image surface.
16515         * src/xterm.c (x_cr_define_fringe_bitmap):
16516         Call cairo_surface_mark_dirty.
16518 2015-02-11  Jan D  <jan.h.d@swipnet.se>
16520         Add cairo drawing
16521         * configure.ac (with-cairo): New option.
16522         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
16523         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
16524         Output "Does Emacs use cairo?".
16525         * lisp/version.el (emacs-version): Add cairo version.
16526         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
16527         (FONT_OBJ): Add comment about ftcrfont.
16528         (ALL_CFLAGS): Add CAIRO_CFLAGS.
16529         (LIBES): Add CAIRO_LIBS.
16530         * src/dispextern.h (struct image): Add cr_data for cairo.
16531         (x_cr_init_fringe): Declare.
16532         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
16533         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
16534         * src/fringe.c (x_cr_init_fringe): New function name that shares code
16535         with w32_init_fringe.
16536         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
16537         * src/ftfont.c (ftfont_info_size); New global variable.
16538         (ftfont_open2): New extern function almost the same as old ftfont_open,
16539         but takes the font_object as argument.
16540         (ftfont_open): Build font object and call ftfont_open2.
16541         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
16542         * src/gtkutil.c (xg_clear_under_internal_border)
16543         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
16544         Only queue_draw if not cairo.  Change args to x_clear_area.
16545         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
16546         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16547         (xg_print_frames_dialog): New functions for printing.
16548         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
16549         (xg_print_frames_dialog): Declare.
16550         * src/image.c: Add defined (USE_CAIRO) for PNG.
16551         Add !defined USE_CAIRO for W32 PNG code.
16552         (x_clear_image): If cairo, destroy the surface in cr_data.
16553         (png_load): Add new cairo compatible implementation.
16554         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
16555         * src/xfns.c: New section Printing.
16556         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
16557         (x-print-frames-dialog): New printing functions.
16558         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
16559         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
16560         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
16561         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
16562         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
16563         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
16564         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16565         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
16566         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
16567         Declare.
16568         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
16569         (max_fringe_bmp, fringe_bmp): New variables.
16570         (x_gc_get_ext_data, x_extension_initialize)
16571         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
16572         (x_set_cr_source_with_gc_foreground)
16573         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16574         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
16575         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
16576         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
16577         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
16578         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
16579         (x_update_begin): Create cairo surface if needed.
16580         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
16581         (x_update_end): Paint cairo drawing surface to xlib surface.
16582         (x_clear_under_internal_border, x_after_update_window_line): Adjust
16583         arguments to x_clear_area.
16584         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
16585         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
16586         of XSetClipMask.
16587         (x_set_glyph_string_clipping)
16588         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
16589         instead of XSetClipRectangles.
16590         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
16591         Use x_fill_rectangle instead of XFillRectangle.
16592         (x_draw_glyph_string_foreground)
16593         (x_draw_composite_glyph_string_foreground)
16594         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
16595         instead of XDrawRectangle.
16596         (x_draw_relief_rect): Add code for USE_CAIRO.
16597         Call x_reset_clip_rectangles instead of XSetClipMask.
16598         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
16599         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
16600         instead of XSetClipMask.
16601         (x_draw_image_foreground, x_draw_image_foreground_1):
16602         x_draw_rectangle instead of XDrawRectangle.
16603         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
16604         XFillRectangle.
16605         (x_draw_image_glyph_string): If img has cr_data, use it as
16606         a cairo surface.
16607         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
16608         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
16609         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
16610         x_reset_clip_rectangles instead of XSetClipMask.
16611         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
16612         (x_clear_area1): New function that calls XClearArea.
16613         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
16614         non-cairo.
16615         (x_clear_frame): x_clear_window instead of XClearWindow.
16616         (x_scroll_run): Set frame garbaged if cairo.
16617         (XTmouse_position): Initialize *part to 0.
16618         (x_scroll_bar_create): Adjust arguments to x_clear_area.
16619         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
16620         x_fill_rectangle instead of XFillRectangle.
16621         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
16622         arguments to x_clear_area.
16623         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
16624         (handle_one_xevent): Adjust arguments to x_clear_area.
16625         Destroy cairo surface for frame if ConfigureNotify.
16626         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
16627         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
16628         x_reset_clip_rectangles instead of XSetClipMask.
16629         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
16630         x_reset_clip_rectangles instead of XSetClipMask.
16631         (x_clear_frame_area): Adjust arguments to x_clear_area.
16632         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
16633         (x_term_init): Call x_extension_initialize if cairo.
16634         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
16635         x_cr_destroy_fringe_bitmap for cairo.
16636         (x_initialize): Call x_cr_init_fringe for cairo.
16637         * src/xterm.h: Add include of cairo header files.
16638         (x_bitmap_record): Add img if cairo.
16639         (x_gc_ext_data): New struct for cairo.
16640         (x_display_info): Add ext_codes for cairo.
16641         (x_output): Add cr_context and cr_surface for cairo.
16642         (x_clear_area): Change arguments from Display*/Window to frame pointer.
16643         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
16644         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
16645         (x_cr_draw_frame, x_cr_export_frames): Declare.
16647 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
16649         Fix integer-valued `mouse-highlight' (Bug#20590)
16650         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
16652 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
16654         MS-Windows followup for ASCIIfication of curved quotes
16655         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
16656         test for curved quotes being displayable, after switching the
16657         terminal encoding.  (Bug#20545)
16659 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16661         Add comment that x_shift_glyphs_for_insert is never called
16662         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
16663         Add comment that this function is never called.
16665 2015-05-16  Glenn Morris  <rgm@gnu.org>
16667         * src/lisp.mk: Remove from repository and generate at build-time.
16668         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
16669         (shortlisp_filter): New variable.
16670         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
16671         (distclean): Remove lisp.mk.
16672         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
16673         * lisp/loadup.el: Tweak layout to make it easier to parse.
16674         * make-dist: Do not distribute src/lisp.mk.
16676 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16678         Display shorter dates in Git annotate output
16679         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
16680         format (when not overridden with vc-git-annotate-switches).
16681         (vc-git-annotate-time): Support the short format, as well as ISO
16682         8601 that has been used until now (bug#5428).
16684 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
16686         ASCIIfy curved quotes on displays lacking them
16687         * lisp/international/mule-cmds.el (set-locale-environment):
16688         If curved quotes don't work, display straight ASCII approximations
16689         (Bug#20545).
16691 2015-05-16  Glenn Morris  <rgm@gnu.org>
16693         Small src/Makefile simplification
16694         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
16695         * src/Makefile.in (lisp): Derive from shortlisp.
16696         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
16698 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
16700         * lisp/help-mode.el (help-go-forward): Doc fix.
16701         (Bug#20577)
16703         * doc/lispref/debugging.texi (Profiling): Improve indexing.
16704         (Bug#20576)
16706 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16708         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
16709         have one fewer `not'.
16711         * lisp/vc/vc-git.el (vc-git-diff-switches)
16712         (vc-git-annotate-switches, vc-git-resolve-conflicts)
16713         (vc-git-program, vc-git-root-log-format): Remove the redundant
16714         :group declarations.
16716 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
16718         Removes the predicate from lisp-complete-symbol (Bug#20456)
16719         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
16720         and remove it from the docstring.
16722 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16724         Add new option vc-git-resolve-conflicts
16725         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
16726         (vc-git-find-file-hook): Add to after-save-hook only when the
16727         above is non-nil.
16728         (vc-git-resolve-when-done): Update to honor the new variable.
16729         (Bug#20292)
16731 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16733         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
16734         (tabulated-list-init-header): Document new behavior.
16735         (tabulated-list-print-fake-header): Do nothing if
16736         `tabulated-list--header-string' is nil.
16737         (tabulated-list--header-string): Add a docstring.
16738         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
16739         * etc/NEWS: Document it.
16741 2015-05-15  Leo Liu  <sdl.web@gmail.com>
16743         Revert "Fix cps--gensym"
16744         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
16745         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
16747 2015-05-15  Glenn Morris  <rgm@gnu.org>
16749         Replace AC_SUBST_FILE in configure with include in Makefiles
16750         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
16751         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
16752         (AUTO_DEPEND): New output variable.
16753         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
16754         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16755         (lwlib_deps_frag): Replace by conditional include.
16756         * lwlib/autodeps.mk: Remove file.
16757         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
16758         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16759         (oldxmenu_deps_frag): Replace by conditional include.
16760         * oldXMenu/autodeps.mk: Remove file.
16761         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
16762         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16763         (lisp_frag): Replace by an include.
16764         (deps_frag): Replace by conditional include.
16765         * src/autodeps.mk: Remove file.
16767         Tweak japanese.el's loading of dependencies
16768         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
16769         * lisp/language/japanese.el: Use require rather than load.
16770         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
16771         Provide a feature.
16772         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
16773         Provide a feature in the generated file.
16775 2015-05-15  Jan D  <jan.h.d@swipnet.se>
16777         Fix NS warnings
16778         * src/nsmenu.m (ns_popup_dialog)
16779         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
16780         * src/nsfns.m (Fx_create_frame): Remove unused variables.
16781         (Fns_read_file_name): Initialize fname, remove ret.
16782         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
16783         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
16784         Remove unused variable.
16785         (init): Add parantesis in if.
16786         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
16788 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16790         Fix a enum conversion warning in macfont.m
16791         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
16792         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
16794 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
16796         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
16797         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
16799 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16801         * lisp/cus-start.el: Add ns-confirm-quit.
16803         Fix warnings on OSX 10.10
16804         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
16805         OSX versions.
16806         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
16807         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
16808         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
16809         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
16810         setScalesWhenResized for OSX < 10.6.
16811         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
16812         * src/nsterm.m (ns_copy_bits): New function that does not use
16813         deprecated NSCopyBits.
16814         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
16815         (runAlertPanel): New function.
16816         (applicationShouldTerminate:): Call runAlertPanel.
16817         (initFrameFromEmacs, toggleFullScreen:): Only call
16818         useOptimizedDrawing for OSX < 10.10.
16819         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
16820         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
16821         (draggingEntered:): Returns NSDragOperation.
16822         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
16824 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16826         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
16827         (package--init-file-ensured): New variable.
16828         (package-initialize, package--ensure-init-file): Use it.
16830 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16832         Honor :fore/background for XBM on NS (Bug#14969)
16833         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
16834         initFromXBM takes bg, fg args, remove flip arg.
16835         (ns_image_from_XBM): Add bg, fg args.
16836         * src/image.c (x_create_bitmap_from_data)
16837         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
16838         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
16839         initFromXBM.  Remove flip arg.
16840         (initFromSkipXBM): Move code to initFromXBM.
16841         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
16842         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
16843         always false.
16844         Remove bit flipping (bitPat, swt), generated incorrect images when
16845         width/height wasn't a multiple of 8.
16846         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
16847         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
16848         remove flip arg.
16850 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16852         * lisp/emacs-lisp/package.el: Be more careful with the init file.
16853         (package--ensure-init-file): Check that user-init-file is set,
16854         exists, is readable, and is writable.  (Bug#20584)
16855         Also expand the docstring.
16857 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
16859         Sync with upstream verilog-mode revision 6232468
16860         * lisp/progmodes/verilog-mode.el
16861         (verilog-font-lock-grouping-keywords-face)
16862         (verilog-highlight-grouping-keywords): Fix use of face when
16863         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
16864         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
16865         parent is reset, bug906.  Reported by Ken Schmidt.
16866         (verilog-auto-inout-module): Add fourth regexp argument to
16867         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
16868         Reported by John Tillema.
16869         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
16870         modport if signal attachment is itself a modport.  Reported by
16871         Matthew Lovell.
16872         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
16873         always_comb and always_latch, bug844.  Reported by Greg Hilton.
16874         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
16875         with many curly-bracket pairs, bug663.
16876         (verilog-set-auto-endcomments): Fix end comments for functions of
16877         type void, etc.  Reported by Alex Reed.
16878         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
16879         caused by indent-line-to deleting tabls pre 24.5.
16880         (verilog-nameable-item-re): Fix nameable items that can have an
16881         end-identifier to include endchecker, endgroup, endprogram,
16882         endproperty, and endsequence.  Reported by Alex Reed.
16883         (verilog-label-be): When auto-commenting a buffer, consider
16884         auto-comments on all known keywords (not just a subset thereof).
16885         Reported by Alex Reed.
16886         (verilog-auto-end-comment-lines-re)
16887         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
16888         Automatically comment property/endproperty blocks to match other
16889         similar blocks like sequence/endsequence, function/endfunction, etc.
16890         Reported by Alex Reed.
16891         (verilog-set-auto-endcomments): Detect the function- or task-name
16892         when auto-commenting blocks that lack an explicit portlist.
16893         Reported by Alex Reed.
16894         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
16895         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
16896         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
16897         is nil, fix indenting initial/final to match always statements,
16898         bug825.  Reported by Tim Clapp.
16899         (verilog-extended-complete-re): Fix indentation of DPI-C imports
16900         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
16901         Mao and Jason Forkey.
16902         (verilog-read-decls): Fix parsing typed interfaces.  Fix
16903         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
16904         Fix localparam not being ignored in AUTOINSTPARAM,
16905         bug889.  Reported by Shannon Hill.
16906         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
16907         bug793.  Reported by Pierre-David Pfister.
16908         (verilog-auto-arg-format, verilog-auto-arg-ports):
16909         Add verilog-auto-arg-format to support newlines in AUTOARG.
16910         Reported by Jie Xiao.
16911         (verilog-batch-execute-func): Do not batch re-auto files loaded by
16912         Local Variables.  Fix printing "no changes to be saved" with
16913         verilog-batch.  Reported by Dan Dever.
16914         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
16915         interface-only modules, bug721.  Reported by Dean Hoyt.
16916         Author: Alex Reed <acreed4@gmail.com>
16917         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
16918         Don't treat '<keyword>:<identifier>' as the start of a labeled
16919         statement, bug905.  Reported by Enzo Chi.
16920         (verilog-directive-re, verilog-compiler-directives)
16921         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
16922         directives (plus some extras) when determining indentation, bug
16923         901.  Reported by Bernd Beuster.
16924         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
16925         iff expression doesn't start with word-character, bug900.
16926         (verilog-optional-signed-range-re, verilog-optional-signed-re):
16927         Fix incorrect indentation/alignment of unsigned declarations,
16928         bug897.
16929         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
16930         always constructs, bug895.
16931         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
16932         Reported by Eric Mastromarchi.
16933         (verilog-beg-of-statement): Fix indenting for some forms of
16934         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
16935         continued assignment incorrect if first line ends with ']', bug437.
16936         Reported by Dan Dever.  Fix indention of cover inside an
16937         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
16938         blocks, bug842.
16939         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
16940         Reported by Kaushal Modi.
16941         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
16942         (verilog-backward-token): Fix indenting sensitivity lists with
16943         named events, bug840.  Reed.
16944         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
16945         nil not honoring 'forever', 'foreach', and 'do' keywords.
16947 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16949         Check for invalid GTK+ monitor scales
16950         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
16951         INT_MAX for too-large scales.  All callers changed to assume the
16952         result is valid (Bug#20432).
16953         (xg_frame_set_char_size, xg_update_scrollbar_pos):
16954         Calculate scale only if needed.
16955         Show ASCII approximations instead.
16957 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
16959         Fix daemon crashes when linum-mode is turned on early on
16960         * src/window.c (Fwindow_end): Don't try calling display engine
16961         functions on initial-frame frame.  (Bug#20565)
16963         Fix selective diff browsing in Ediff
16964         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
16965         Go to the beginning of the region before searching for the
16966         ediff-regexp-focus-* regexps.  (Bug#20568)
16968 2015-05-14  Jan D  <jan.h.d@swipnet.se>
16970         Fixes bug#20142
16971         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
16972         arrive in the main loop, even for Gtk 3 (Bug#20142).
16974         Don't access display after i/o error (Bug#19147).
16975         * src/xterm.c (x_connection_closed): Add third arg ioerror.
16976         If ioerror, set display to 0 (Bug#19147).
16977         (x_error_quitter): Call x_connection_closed with third arg false.
16978         (x_io_error_quitter): Call x_connection_closed with third arg true.
16980         Handle GTK_SCALE, fixes Bug#20432.
16981         * src/gtkutil.c (xg_get_gdk_scale): New function.
16982         (xg_frame_set_char_size)
16983         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
16984         (xg_get_default_scrollbar_height)
16985         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
16986         when setting sizes (Bug#20432).
16988 2015-05-13  Leo Liu  <sdl.web@gmail.com>
16990         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
16992 2015-05-13  Glenn Morris  <rgm@gnu.org>
16994         Fix bootstrap (void function cl-member).
16995         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
16996         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
16998 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17000         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
17001         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
17002         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
17003         Avoid defalias for closures which are not immutable.
17004         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
17005         the dispatchers table with various entries.
17006         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
17007         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
17009 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
17011         Improve tagging of C bindings in DEFVAR_*
17012         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
17013         from DEFVAR_*.
17015 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
17017         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
17019 2015-05-12  Glenn Morris  <rgm@gnu.org>
17021         * lisp/progmodes/tcl.el (tcl-filter):
17022         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
17024         Add basic VC push support
17025         * lisp/vc/vc.el (vc-push): New autoloaded command.
17026         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
17027         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
17028         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
17029         (vc-bzr-push): New.
17030         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
17031         (vc-git-pull): Reimplement using vc-git--pushpull.
17032         (vc-git-push): New.
17033         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
17034         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
17035         * doc/emacs/maintaining.texi (Pulling / Pushing):
17036         Rename from "VC Pull".  Mention pushing.
17037         (VC With A Merging VCS, VC Change Log): Update xrefs.
17038         (Branches): Update menu.
17039         * doc/emacs/emacs.texi: Update menu.
17040         * etc/NEWS: Mention this.
17042 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
17044         Improve the seq pcase pattern and the `seq-let' macro
17045         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
17046         object is a sequence, and binds each element of ARGS to the
17047         corresponding element of the sequence.
17049 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
17051         Fix tags created from DEFVAR_* declarations in C
17052         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
17053         to make tags extracted from DEFVAR_* declarations more accurate.
17055         Add a test suite for etags
17056         * test/etags/: New test suite, adapted from
17057         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
17058         whose original author is Francesco Potortì <pot@gnu.org>.
17060         Fix tagging of symbols in C enumerations
17061         * lib-src/etags.c (consider_token): Don't tag symbols in
17062         expressions that assign values to enum constants.  See
17063         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
17064         for details.
17065         (C_entries): Reset fvdef to fvnone after processing a preprocessor
17066         conditional and after a comma outside of parentheses.
17068 2015-05-12  Glenn Morris  <rgm@gnu.org>
17070         * lisp/url/url-handlers.el (url-file-name-completion)
17071         (url-file-name-all-completions): Silence compiler.
17073         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
17075         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
17077 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
17079         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
17080         (cl--generic-mandatory-args): Remove.
17081         (cl--generic-split-args): New function.
17082         (cl-generic-define, cl--generic-lambda): Use it.
17083         (cl-generic-define-method): Use it as well, and add support for
17084         context args.
17085         (cl--generic-get-dispatcher): Handle &context dispatch.
17086         (cl--generic-cache-miss): `dispatch-arg' can now be a
17087         context expression.
17088         (cl--generic-dispatchers): Pre-fill.
17089         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
17090         New test.
17092 2015-05-11  Glenn Morris  <rgm@gnu.org>
17094         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
17096 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
17098         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
17099         * lisp/term/rxvt.el: Require term/xterm.
17100         (rxvt-function-map): Use xterm-rxvt-function-map.
17101         (rxvt-standard-colors): Move before first use.
17102         (terminal-init-rxvt): Use xterm--push-map and
17103         xterm-register-default-colors.
17104         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
17105         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
17106         Move shared bindings between rxvt and xterm to it.
17107         (xterm-function-map): Use it.  Move the xterm-paste binding to
17108         xterm-rxvt-function-map (bug#20444).
17109         (xterm-standard-colors): Move before first use.
17110         (xterm--push-map): New function.
17111         (xterm-register-default-colors): Take standard colors as argument.
17112         (terminal-init-xterm): Use it.  Adjust call to
17113         xterm-register-default-colors.
17115 2015-05-11  Glenn Morris  <rgm@gnu.org>
17117         * lisp/term/x-win.el: Quieten --without-x compilation.
17118         (x-own-selection-internal, x-disown-selection-internal)
17119         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
17120         Declare.
17122         * Makefile.in (emacslog): Remove srcdir.
17123         (ChangeLog): Update for the above.
17125 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17127         python.el: better limit for looking-back calls
17128         * lisp/progmodes/python.el (python-shell-accept-process-output):
17129         Use last comint prompt start as limit for looking-back.
17131 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
17133         CEDET (srecode-insert-fcn): Fix use of oref on a class
17134         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
17135         on a class.  Reported by Pierre Lorenzon.
17136         (srecode-template-inserter-point): Remove declaration.
17138         CEDET (srecode-create-dictionary): Avoid obsolete object name
17139         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
17140         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
17142 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
17144         C-x 8 shorthands for curved quotes, Euro, etc.
17145         Although C-x 8 lets you insert arbitrary Unicode characters,
17146         it's awkward to use this to insert commonly used symbols such as curved
17147         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
17148         characters commonly found in English text and in basic math.
17149         For example, assuming the Alt key works on your keyboard and iso-transl
17150         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
17151         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
17152         (Bug#20499)
17153         * doc/emacs/mule.texi (Unibyte Mode):
17154         A few other printing characters now work too.
17155         * etc/NEWS: Document this.
17156         * lisp/international/iso-transl.el (iso-transl-char-map):
17157         Also support the following characters:
17158         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
17160 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17162         Add xref-find-regexp
17163         * lisp/progmodes/xref.el (xref-find-function): Describe the
17164         `matches' action.
17165         (xref-find-regexp): New command, using it.
17166         (xref-collect-references): Rename to xref-collect-matches.
17167         (xref--collect-reference): Rename to xref--collect-match.
17168         (xref-collect-matches, xref--collect-match): Accept new argument,
17169         KIND.  Update accordingly.
17170         (xref--regexp-to-extended): New function.
17171         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
17172         `matches' action.
17173         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
17174         * lisp/progmodes/etags.el (etags-xref-find):
17175         Support the `matches' action.
17176         (etags--xref-find-matches): New function.
17178 2015-05-10  Glenn Morris  <rgm@gnu.org>
17180         * Makefile.in: Fixes for recent change-history changes.
17181         (change-history-nocommit): Update footer regexp.
17182         Ensure output script stays executable.
17184 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
17186         New version of `seq-let' based on a pcase pattern
17187         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
17188         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
17190 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
17192         Add basic HTML5 tags and a template
17193         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
17194         (html-tag-alist): Add HTML5 tags.
17195         (html-tag-help): Add new tags descriptions.
17196         (html-navigational-links): Template for nav links.
17197         (html-html5-template): Template for a HTML5 page.
17199 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17201         semantic/symref/grep: Don't use word boundaries
17202         * lisp/cedet/semantic/symref/grep.el
17203         (semantic-symref-perform-search): Instead of wrapping input in
17204         word boundaries, check that the characters before and after are
17205         not word constituents.
17207         semantic/symref/grep: Support regexp search
17208         * lisp/cedet/semantic/symref.el
17209         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
17210         the search type is regexp.
17211         * lisp/cedet/semantic/symref/grep.el
17212         (semantic-symref-perform-search): Support the regexp search type.
17213         Pass -E to Grep when it's used.
17215         semantic-symref-regexp: Allow to input an arbitrary string
17216         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
17217         Allow to input an arbitrary string interactively.
17219         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
17220         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17221         Remove tag-symbol-match-p from the default value
17222         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
17224         Declare find-tag obsolete
17225         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
17226         xref-find-definitions.
17228 2015-05-10  Jan D  <jan.h.d@swipnet.se>
17230         Draw composite string correctly (Bug#20537)
17231         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
17232         New function.
17233         (ns_draw_glyph_string): Call it.
17235 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
17237         Avoid infloop in ERC
17238         * lisp/simple.el (line-move-to-column): Ignore field boundaries
17239         while computing line beginning position.  (Bug#20498)
17241 2015-05-08  Glenn Morris  <rgm@gnu.org>
17243         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
17244         * build-aux/gitlog-to-emacslog: Check called from right directory.
17245         (srcprefix): Remove.
17247         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
17248         * Makefile.in (ChangeLog): No longer pass "distprefix".
17249         * make-dist: Update "make ChangeLog" syntax for the above change.
17251         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
17252         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
17254         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
17256         Add command-line option-parsing to gitlog-to-emacslog
17257         * build-aux/gitlog-to-emacslog: Add command-line options.
17258         By default, refuse to remove an existing output file.
17259         * Makefile.in (CHANGELOG): Update default.
17260         (ChangeLog): Do not test for existing file.
17261         (change-history-nocommit): Ensure temp file does not exist.
17263         Quieten --without-x compilation
17264         * lisp/term/common-win.el: Provide a feature.
17265         * lisp/term/x-win.el (term/common-win): Require it.
17267         * lisp/dired-aux.el (dired-do-print): Require lpr.
17269         Quieten compilation, eg in --without-x builds
17270         * lisp/dired-aux.el (lpr-printer-switch):
17271         * lisp/frame.el (tool-bar-height):
17272         * lisp/linum.el (font-info):
17273         * lisp/window.el (font-info, overflow-newline-into-fringe)
17274         (tool-bar-height):
17275         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
17276         * lisp/gnus/gnus-util.el (iswitchb-mode):
17277         * lisp/mail/rmailmm.el (libxml-parse-html-region):
17278         * lisp/net/nsm.el (gnutls-peer-status)
17279         (gnutls-peer-status-warning-describe):
17280         * lisp/net/shr.el (libxml-parse-xml-region):
17281         * lisp/url/url-http.el (gnutls-peer-status): Declare.
17283 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17285         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
17286         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
17287         `subclass' since they're never called with a class.
17288         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
17289         srecode-dictionary-child-p.
17291 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
17293         * lisp/help.el (help--binding-locus): Document argument POSITION.
17294         (Bug#20530)
17296 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
17298         Merge from gnulib
17299         * doc/misc/texinfo.tex: Get latest version.
17301 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
17303         ffap.el (ffap-read-file-or-url): Fix completing-read call
17304         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
17305         `completing-read' should be a symbol.
17307 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
17309         Verify file modifications by other programs
17310         * src/filelock.c (lock_file): Check whether the file was modified
17311         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
17313         Fix keyboard macros that include function keys
17314         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
17315         keys in the macro before returning.  (Bug#20454)
17317 2015-05-08  Glenn Morris  <rgm@gnu.org>
17319         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
17320         "Copyright-paperwork-exempt".  (Bug#20324)
17322         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
17323         (log-edit-rewrite-tiny-change): New variable.
17324         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
17325         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
17326         * etc/NEWS: Mention this.
17328         * lisp/calc/calc.el (math-zerop): Declare.
17330         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
17332 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17334         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
17335         Support the case when BINDINGS is a single tuple.  (Bug#20525)
17337         * etc/NEWS: Fix typo in previous commit
17338         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
17340 2015-05-07  Jan D  <jan.h.d@swipnet.se>
17342         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
17343         Output URL to Gtk+ bug (Bug#20452).
17345         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
17347 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17349         * lisp/emacs-lisp/package.el: New "external" package status.
17350         An external package is any installed package that's not built-in
17351         and not from `package-user-dir', which usually means it's from an
17352         entry in `package-directory-list'.  They are treated much like
17353         built-in packages, in that they cannot be through the Package Menu
17354         deleted and are not considered for upgrades.
17355         (package-desc-status): Identify if a package is installed outside
17356         `package-user-dir'.
17357         (package-menu--print-info-simple)
17358         (package-menu--status-predicate): Add support for it.
17359         * etc/NEWS: Document it.
17361 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17363         * lisp/mail/rmail.el: Use lexical-binding.
17364         (rmail-bury): Remove unused var `buffer-to-bury'.
17365         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
17366         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
17367         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
17368         (rmail-insert-inbox-text): Remove unused var `movemail'.
17369         (rmail-add-mbox-headers): Remove unused var `limit'.
17370         (rmail-undelete-previous-message): Remove unused var `value'.
17371         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
17372         `resent-reply-to'.
17373         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
17374         (rmail-restore-desktop-buffer): Rename arguments.
17376 2015-05-06  Glenn Morris  <rgm@gnu.org>
17378         * Makefile.in (change-history-commit): Add missing piece of previous.
17380         Avoid unnecessary bumping of Makefile.in's timestamp
17381         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
17382         (emacslog): New variable.
17383         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
17384         (unchanged-history-files): Use $emacslog rather than Makefile.in.
17385         (change-history-nocommit): Store hash in $emacslog.
17386         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
17387         * admin/update_autogen (changelog_files): Update for the above.
17389         * Makefile.in: Don't always insist on removing existing "ChangeLog".
17390         (CHANGELOG): New variable.
17391         (no-ChangeLog): Remove.
17392         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
17393         (change-history-nocommit): Use a temp file rather than insisting
17394         on deletion of any existing "ChangeLog".
17396         * build-aux/gitlog-to-emacslog: Allow specification of output.
17398         * admin/update_autogen: Add option to update ChangeLog.
17399         (usage): Mention -H.
17400         (changelog_flag, changelog_n, changelog_files): New variables.
17401         (main): Check for -H, and maybe run change-history-nocommit.
17403 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17405         * lisp/subr.el (delete-dups): Pre-size the hashtable.
17407         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
17408         cl--arglist-args is defined (bug#20517).
17410 2015-05-06  Glenn Morris  <rgm@gnu.org>
17412         * Makefile.in (change-history-nocommit): New.
17414 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17416         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
17417         timer when it is non-nil
17418         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
17420 2015-05-06  Glenn Morris  <rgm@gnu.org>
17422         Quieten CEDET compilation
17423         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
17424         Invert fboundp test to quieten on current Emacs.
17425         * lisp/cedet/ede/config.el (ede-shell-run-something)
17426         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
17427         (semanticdb-refresh-table): Declare.
17428         (ede-preprocessor-map): Require semantic/db.
17430         Quieten cc-mode compilation
17431         * lisp/progmodes/cc-awk.el (c-forward-sws):
17432         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
17433         Declare.
17435 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17437         * lisp/subr.el (delete-dups): Avoid nreverse.
17439 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17441         * lisp/subr.el (delete-dups): Make it destructive again.
17443 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
17445         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
17447 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17449         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
17450         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
17451         (testcover--read): Rename from testcover-read.  Change calling
17452         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
17453         is gone.
17454         (testcover-start): Use add-function.  Move edebug-all-defs binding to
17455         testcover--read.
17456         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
17457         (testcover-mark): Remove unused var `item'.
17458         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
17460 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17462         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
17463           use a hash table.  This can result in ~500 times speed-up for typical
17464           collections of size 5000, like that of `load-library'.
17466 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17468         CEDET: Avoid `oref' on classes in a few more cases
17469         * lisp/cedet/ede/generic.el (ede-find-target):
17470         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
17471         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
17472         var `prefix'.
17474         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
17475         (grepflags, greppattern): Declare.
17476         (semantic-symref-perform-search): Remove unused var `pat'.
17478         CEDET (srecode-compile-inserter): Avoid `oref' on classes
17479         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
17480         Avoid `oref' on classes (bug#20491).
17481         (srecode-compile-split-code): Remove unused var `key'.
17483 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17485         Clean up pulse.el a little
17486         * lisp/cedet/pulse.el (pulse): Remove.
17487         (pulse-momentary-timer): Save instead of the stop time.
17488         (pulse-momentary-highlight-overlay):
17489         Call pulse-momentary-unhighlight first thing.
17490         Treat pulse-momentary-overlay as a single value, not a list.
17491         Save the created timer.  Only pass the stop time to the timer.
17492         (pulse-tick): Update accordingly.
17493         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
17494         single value.  Cancel the timer.
17496 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
17498         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
17499         Support the biblatex journaltitle field.
17501 2015-05-05  Glenn Morris  <rgm@gnu.org>
17503         Minor declare-function improvement
17504         * lisp/emacs-lisp/bytecomp.el
17505         (byte-compile-macroexpand-declare-function):
17506         Handle declarations after calls.  (Bug#20509)
17508         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
17510         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
17512 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17514         Pulse using a timer
17515         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
17516         (pulse-momentary-highlight-overlay): Set up the timer instead of
17517         calling `pulse'
17518         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
17519         (pulse-tick): New function.
17520         (pulse-momentary-unhighlight): Cut off the stop time.
17521         (pulse-delay): Update the docstring WRT to not using sit-for.
17523         Add semantic/symref/grep file patterns for ruby-mode
17524         * lisp/cedet/semantic/symref/grep.el
17525         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
17526         Clarify the docstring.
17528         Don't require match
17529         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
17530         match.  That doesn't work for every command, and some identifier
17531         completion tables are bound to be imperfect anyway.
17533 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
17535         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
17536         (semantic-grammar--template-expand): New function.
17537         (semantic-grammar-header, semantic-grammar-footer): Use it.
17538         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
17539         (semantic-grammar-file-regexp): Refine regexp.
17540         (semantic-grammar-eldoc-get-macro-docstring):
17541         Use elisp-get-fnsym-args-string when available.
17542         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
17543         instead of the old eldoc-* names.
17544         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
17545         from elisp-mode.el.  Tweak calling convention.
17546         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
17547         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
17548         elisp--get-fnsym-args-string.
17549         (elisp--highlight-function-argument): Add `prefix' arg.
17550         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
17551         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
17553 2015-05-05  Glenn Morris  <rgm@gnu.org>
17555         * lisp/help-fns.el (describe-function-1):
17556         Handle builtins with advertised calling conventions.  (Bug#20479)
17558 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17560         Merge branch 'seq-let'
17562         Update `seq-let' documentation
17563         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
17564         with the support of  `&rest'.
17566         Add support for &rest in `seq-let'
17567         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
17568         in the argument list.
17569         * test/automated/seq-tests.el: Add a test for parsing and binding
17570         `&rest' in `seq-let'.
17572 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
17574         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
17575         Add missing increment (Bug#20467).
17576         (eieio-object-value-create): Adjust to new slots representation
17577         (Bug#20467).
17578         (eieio-object-value-create): Fix missed adjustment to new
17579         representation of slots metadata.
17581 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17583         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
17585 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17587         Work around "Attempt to modify read-only object"
17588         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
17589         elisp--xref-find-definitions, to work around "Attempt to modify
17590         read-only object" error.
17592         Only skip some variables that have function counterparts
17593         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17594         Only skip minor-mode-named variable if it's defined in a Lisp
17595         file, and it's in minor-mode-list (bug#20506).
17596         * test/automated/elisp-mode-tests.el
17597         (elisp-xref-finds-both-function-and-variable)
17598         (elisp-xref-finds-only-function-for-minor-mode): New tests.
17600 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17602         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
17603         previous change.
17604         (xref--insert-xrefs): Buttonize the whole line, including the
17605         number at the beginning.
17607         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17608         Make sure we're inside the let bindings.
17609         * test/automated/elisp-mode-tests.el
17610         (elisp-completes-functions-after-let-bindings): New test.
17612 2015-05-04  Glenn Morris  <rgm@gnu.org>
17614         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
17615         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
17616         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
17617         Remove outdated declarations.
17619         Replace instances of "(eval-when-compile (autoload ...))"
17620         * lisp/gnus/gnus-art.el (nneething-get-file-name):
17621         Declare rather than autoload.
17622         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
17623         Remove pointless autoload.
17624         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
17625         (gnus-topic-create-topic, gnus-topic-enter-dribble):
17626         Declare rather than autoload.
17627         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
17628         (mailcap-extension-to-mime): Autoload at run-time.
17629         * lisp/gnus/mm-util.el (latin-unity-massage-name)
17630         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
17631         (latin-unity-representations-present-region):
17632         Declare rather than autoload.
17633         * lisp/gnus/mml-smime.el (epg-make-context)
17634         (epg-passphrase-callback-function): Autoload at run-time.
17635         (epg-context-set-signers, epg-context-result-for)
17636         (epg-new-signature-digest-algorithm)
17637         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
17638         (epg-sign-string, epg-encrypt-string)
17639         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
17640         (epg-configuration, epg-expand-group, epa-select-keys):
17641         Declare rather than autoload.
17642         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
17643         Autoload at run-time.
17644         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
17645         (gnus-registry-get-id-key, gnus-registry-action):
17646         Declare rather than autoload.
17647         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
17648         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
17649         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
17650         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
17651         (spam-stat-split-fancy): Remove pointless autoloads.
17652         * lisp/net/mairix.el: Load gnus-util when compiling.
17653         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
17654         (message-field-value): Declare rather than autoload.
17655         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
17656         Check gnus-alive-p is fbound.
17657         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
17658         (vm-check-for-killed-summary, vm-error-if-folder-empty)
17659         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
17660         Declare rather than autoload.
17662         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
17664         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
17665         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
17667         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
17669         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
17671         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
17672         * lisp/emacs-lisp/package.el (epg-signature-status):
17673         Fix declarations.
17675         * lisp/play/gametree.el (gametree-show-children-and-entry)
17676         (gametree-apply-layout, gametree-mouse-show-subtree)
17677         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
17679         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
17680         Handle cl-defgeneric, cl-defmethod.
17682 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17684         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
17685         Highlight both type and symbol name.
17687         Insert, highlight and align line numbers in xref output
17688         * lisp/progmodes/etags.el (xref-location-line): Specialize for
17689         xref-etags-location.
17690         * lisp/progmodes/xref.el (xref-location-line): New generic method.
17691         (xref-file-location): Add reader for the line slot.
17692         (xref--location-at-point): Skip to the `xref-location' property.
17693         (xref--collect-reference): Drop the line number from description.
17694         (xref--insert-xrefs): Insert, highlight and align line numbers.
17696 2015-05-04  Daniel Colascione  <dancol@dancol.org>
17698         * lisp/simple.el (save-mark-and-excursion--save)
17699         (save-mark-and-excursion--restore): Fix previous commit
17700         (255a011f0ecf004b31c59945b10154b10fac3af1).
17702 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17704         Don't pulse the indentation, or the newline
17705         * lisp/cedet/pulse.el (pulse-lighten-highlight)
17706         (pulse-reset-face): Fall back to the inherited background
17707         attribute in FACE.
17708         (pulse-momentary-highlight-region): Add autoload cookie.
17709         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
17710         indentation, or the newline, if the line's non-empty
17711         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
17713 2015-05-04  Daniel Colascione  <dancol@dancol.org>
17715         Add `save-mark-and-excursion', which has the old
17716         `save-excursion' behavior
17717         * doc/lispref/positions.texi (Excursions):
17718         Document `save-mark-and-excursion'.
17719         * lisp/font-lock.el (font-lock-fontify-block):
17720         Use `save-mark-and-excursion' instead of `save-excursion',
17721         restoring Emacs 24 behavior.
17722         * lisp/simple.el (save-mark-and-excursion--save)
17723         (save-mark-and-excursion--restore): New functions.
17724         (save-mark-and-excursion): New user macro.
17725         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
17726         in `save-excursion' documentation.
17728 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17730         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17731         Classify lone symbol inside let varlist as variable.
17732         * test/automated/elisp-mode-tests.el
17733         (completest-variables-in-let-bindings): New test.
17735         Add xref-pulse-on-jump
17736         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
17737         Add autoload cookie.
17738         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
17739         (xref--maybe-pulse): New function.
17740         (xref-pop-marker-stack, xref--pop-to-location)
17741         (xref--display-position): Use it.
17742         (xref--location-at-point): Use back-to-indentation.
17744 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17746         lisp/org/org-{macs,list}.el: Fix lexical warnings
17747         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
17748         (org-list-get-next-item, org-list-get-prev-item)
17749         (org-list-get-children): Mark unused arg `struct'.
17750         (org-list-use-alpha-bul-p): Remove unused var `bul'.
17751         (org-toggle-checkbox): Mark unused var.
17752         (org-update-checkbox-count): Remove unused var `box-num'.
17753         (org-adapt-indentation): Declare.
17754         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
17755         (org-list-send-list): Remove unused var `txt'.
17756         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
17757         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
17758         * lisp/org/org-macs.el: Use `declare'.
17759         (org-with-limited-levels): Declare dyn-bound vars.
17761 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
17763         Fix minor issues with CEDET on MS-Windows
17764         * lisp/cedet/semantic/symref/idutils.el
17765         (semantic-symref-parse-tool-output-one-line): Fix the search
17766         regexp to match MS-Windows file names with drive letters.
17767         (Bug#19468)
17768         * lisp/cedet/semantic/symref/grep.el
17769         (semantic-symref-grep-use-template): Remove "--color=always" from
17770         Grep switches on MS-Windows.
17771         (semantic-symref-grep-shell): Use shell-file-name as the default
17772         value, so this works not only on Posix platforms.
17773         (semantic-symref-perform-search): Use shell-quote-argument instead
17774         of literal '..' for portable quoting of Grep command-line
17775         argument.  Use shell-command-switch instead of a literal "-c".
17776         * lisp/cedet/semantic/bovine/gcc.el
17777         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
17778         for an absolute file name in a portable way.
17780 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17782         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
17783         (package-import-keyring, package-refresh-contents)
17784         (package-compute-transaction, package--save-selected-packages)
17785         (package-install-from-archive, package-delete)
17786         (package-menu--perform-transaction): Use `inhibit-message' instead.
17787         (package--compile): Set `warning-minimum-level' to :error.
17789 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
17791         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
17792         (terminal-init-screen): Use it (bug#20356).
17793         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
17794         (xterm--extra-capabilities-type): New const.
17795         (xterm-extra-capabilities): Use it.
17796         (xterm--version-handler): Lower the pseudo-version for `screen'.
17798 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
17800         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
17801         Always insert a newline at the end (to avoid mouse-face background
17802         tail at the last line).
17804         elisp-completion-at-point: Prioritize being quoted over funpos
17805         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17806         Only consider function position when not inside quoted form
17807         (bug#20425).
17808         * test/automated/elisp-mode-tests.el: New file.
17810         Stop vc-print-log from jumping to the top
17811         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
17812         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
17813         is not specified.
17814         (vc-incoming-outgoing-internal): Always pass nil.
17815         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
17816         call it, and don't set vc-sentinel-movepoint (bug#15322).
17817         (vc-print-root-log): Don't fetch the root working revision, nor
17818         pass it to vc-print-log-internal.
17820 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
17822         Fix display of keyboard layouts for right-to-left scripts
17823         * lisp/international/quail.el (quail-insert-kbd-layout):
17824         Force left-to-right paragraph direction.
17826 2015-05-02  K. Handa  <handa@gnu.org>
17828         * src/cmds.c (internal_self_insert): When we insert spaces for
17829         padding, set point before the padding spaces, not after them.
17831 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
17833         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
17835 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
17837         Fix etags-xref-find for references
17838         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17839         Use `cl-mapcan'.
17840         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
17841         directory if no tags tables are loaded (bug#19468).
17843 2015-05-02  Philipp Stephani  <phst@google.com>
17845         Update the options in whitespace-style defcustom
17846         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
17847         `repeat' because the option is really set-like.  Add missing
17848         options.  Reorder options to match the order in the
17849         documentation.  (Bug#20346)
17851 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
17853         Fix error diagnostics of c-macro-expand
17854         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
17855         too early if no start-marker string was found -- that generally
17856         means cpp exited abnormally, and we still want to show its error
17857         messages to the user.
17859         Don't require Texinfo 5.0 for Emacs documentation
17860         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
17861         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
17862         "@codequoteundirected on", respectively, to avoid requiring
17863         Texinfo 5.x for Emacs documentation.
17865 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
17867         * lisp/files.el (pwd):
17868         When called with a prefix argument, insert the current default
17869         directory at point.
17871 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
17873         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
17874         * lisp/isearch.el (isearch-mode-map): Don't inhibit
17875         function-key-map remapping for backspace (bug#20466).
17877 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
17879         Implement xref-find-references in etags and elisp-mode
17880         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
17881         (elisp-xref-find): Use it.
17882         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
17883         * lisp/progmodes/xref.el (xref-collect-references):
17884         (xref--collect-reference): New functions.
17886 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
17888         Prefer plain characters to Texinfo circumlocutions
17889         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
17890         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
17892         Fix single-quoting style in PDF manuals
17893         The PDF versions of the GNU manuals used curved single quotes to
17894         represent grave accent and apostrophe, which made it a pain to cut
17895         and paste code examples from them.  Fix the PDF versions to use
17896         grave accent and apostrophe for Lisp source code, keystrokes, etc.
17897         This change does not affect the info files, nor does it affect
17898         ordinary uses of curved single quotes in PDF.
17899         * doc/emacs/docstyle.texi: New file, which specifies treatment for
17900         grave accent and apostrophe, as well as the document encoding.
17901         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
17902         * doc/lispintro/emacs-lisp-intro.texi:
17903         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
17904         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
17905         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
17906         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
17907         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
17908         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
17909         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
17910         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
17911         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
17912         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
17913         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
17914         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
17915         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
17916         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
17917         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
17918         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
17919         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
17920         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
17921         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
17922         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
17923         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
17924         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
17925         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
17926         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
17927         * doc/misc/woman.texi:
17928         Use it instead of '@documentencoding UTF-8', to lessen the need for
17929         global changes like this in the future.
17930         * doc/emacs/Makefile.in (EMACS_XTRA):
17931         * doc/lispintro/Makefile.in (srcs):
17932         * doc/lispref/Makefile.in (srcs):
17933         Add dependency on docstyle.texi.
17934         * doc/misc/Makefile.in (style): New macro.
17935         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
17936         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
17937         Use it.
17939 2015-05-01  Glenn Morris  <rgm@gnu.org>
17941         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
17943         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
17944         (help-fns--signature): Declare.
17946         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
17948 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
17950         New macro seq-let, providing destructuring support to seq.el
17951         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
17952         to `cl-destructuring-bind' but works on all sequence types supported
17953         by `seq.el'.  Bump version number to 1.6.
17954         * test/automated/seq-tests.el: Add tests for seq-let.
17955         * doc/lispref/sequences.texi: Add documentation for seq-let.
17957 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
17959         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
17961 2015-05-01  Glenn Morris  <rgm@gnu.org>
17963         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
17965 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
17967         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
17968         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
17969         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
17970         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
17971         (Bug#20445).
17973 2015-05-01  K. Handa  <handa@gnu.org>
17975         * lisp/international/mule-cmds.el (input-method-use-echo-area):
17976         Change :type to 'boolean.
17978 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
17980         Start using proportional fonts in eww by default
17981         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
17982         it seems to work well.
17984         Fix links in tables in shr
17985         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
17986         makes (some) links in tables not work.
17988 2015-05-01  Jan D  <jan.h.d@swipnet.se>
17990         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
17992 2015-04-30  Glenn Morris  <rgm@gnu.org>
17994         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
17995         Update for 2015-02-08 change to indirect-function.
17997         * lisp/term/ns-win.el (ns-get-selection-internal):
17998         Remove declaration for function deleted 2014-10-21.
18000         * lisp/dom.el: Load subr-x when compiling, for when-let.
18002         Silence some compilation warnings
18003         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
18004         * lisp/emulation/cua-base.el (delete-active-region):
18005         * lisp/net/net-utils.el (w32-get-console-output-codepage):
18006         * lisp/term/ns-win.el (ns-own-selection-internal)
18007         (ns-disown-selection-internal, ns-selection-owner-p)
18008         (ns-selection-exists-p, ns-get-selection):
18009         Declare for compiler.
18011         Function declaration updates prompted by 'make check-declare'
18012         * lisp/emacs-lisp/package.el (lm-homepage):
18013         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
18014         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
18015         * lisp/gnus/mml.el (libxml-parse-html-region):
18016         * lisp/gnus/nnrss.el (libxml-parse-html-region):
18017         * lisp/net/eww.el (libxml-parse-html-region):
18018         * lisp/net/shr.el (libxml-parse-html-region):
18019         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
18020         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
18021         * lisp/vc/vc-git.el (vc-annotate-convert-time):
18022         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
18023         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
18024         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
18025         Update declaration.
18027         Remove compatibility code for 20-year old function renaming
18028         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
18029         Make it an obsolete alias.
18030         (idlwave-shell-filter): Change all uses to comint-output-filter.
18032 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
18034         Add ace-window face config
18035         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
18036         configuration.
18038 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
18040         Unclutter 'make doc' output a bit
18041         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
18042         Use make subst rather than sh IFS to split target string apart.
18043         This makes 'make' output easier to follow.
18045         Merge from gnulib
18046         * doc/misc/texinfo.tex: Update from gnulib.
18048 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18050         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
18051         (package-menu--print-info): Obsolete.
18052         (package-menu--print-info-simple): New function.
18053         (package-menu--refresh): Use it, simplify code, and improve
18054         performance.
18055         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
18056         Tiny performance improvement.
18058         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
18060 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
18062         Omit -Wstrict-overflow workaround in GCC 5
18063         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
18064         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
18066         Merge from gnulib
18067         This incorporates:
18068         2015-04-29 extern-inline: no need for workaround in GCC 5.1
18069         2015-04-26 file-has-acl: port to CentOS 6
18070         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
18072 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
18074         Set next-error-* in xref--xref-buffer-mode
18075         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
18076         Set `next-error-function' and `next-error-last-buffer'.
18077         (xref--next-error-function): New function.
18078         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
18080 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18082         python.el: Fix warnings on looking-back calls missing LIMIT
18083         * lisp/progmodes/python.el (python-shell-accept-process-output):
18084         Pass LIMIT arg to looking-back.
18086 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18088         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
18089         (package--download-and-read-archives): Use pushnew instead of
18090         append.  If something terrible happened during a previous
18091         download, simply refreshing should now make things work again.
18093 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
18095         Introduce etags-xref-find-definitions-tag-order
18096         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
18097         New variable.
18098         (etags--xref-find-definitions): Use it (bug#19468).
18100 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
18102         PATH- and completion-related fixes in Eshell on MS-Windows
18103         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
18104         MS-Windows, prepend "." to list of directories produced from PATH,
18105         as Windows always implicitly searches the current directory first.
18106         (eshell-force-execution): Make it have a non-nil default value on
18107         MS-Windows and MS-DOS.
18108         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
18109         eshell-force-execution is non-nil, complete on readable files and
18110         directories, not only executables.  When running on MS-Windows,
18111         prepend "." to list of directories produced from PATH, as Windows
18112         always implicitly searches the current directory first.
18114 2015-04-29  Sam Steingold  <sds@gnu.org>
18116         Bury RCIRC buffers when there is no activity
18117         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
18118         (rcirc-bury-buffers): New function.
18119         (rcirc-next-active-buffer): When there is no new activity, use
18120         `rcirc-bury-buffers' to hide all RCIRC buffers.
18122 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
18124         Fix DBUS query result parsing for secrets-search-items
18125         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
18126         parsing.  The function assumed that return value of the
18127         SearchItems method called on a collection is a list of two lists,
18128         however this is true only when no collection is specified.  GNOME
18129         had used to incorrectly return a list of two lists in both cases,
18130         but this was already fixed:
18131         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
18132         incorrect information in the secrets-search-items’ docstring.
18133         (Bug#20449)
18135 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18137         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
18138         Use `inhibit-message' instead of hiding the previous message
18139         with (message nil).
18141 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
18143         Remove the deprecated INTERNAL_FIELD macro by expanding it
18144         * src/lisp.h (INTERNAL_FIELD): Remove.
18145         (DEFVAR_KBOARD): Modify accordingly.
18146         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
18147         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
18148         * src/buffer.c (compact_buffer): Use BVAR.
18150 2015-04-29  Glenn Morris  <rgm@gnu.org>
18152         Replace an obsolete function alias
18153         * lisp/isearch.el (isearch-yank-x-selection):
18154         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
18155         (mouse-drag-secondary-moving):
18156         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
18157         Replace obsolete alias x-get-selection with gui-get-selection.
18159 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18161         * lisp/mail/rmailsum.el: Use lexical-binding.
18163 2015-04-29  Glenn Morris  <rgm@gnu.org>
18165         * test/automated/package-test.el (package-test-update-archives-async):
18166         Skip test on hydra.nixos.org.
18168 2015-04-28  Glenn Morris  <rgm@gnu.org>
18170         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
18171         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
18172         (foldout-mouse-hide-or-exit): Use new names for outline functions.
18174         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
18175         Update for 2014-06-26 hideif.el change.
18177         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
18178         (rmail--decode-and-apply): New function.
18179         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
18181         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
18183 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18185         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
18186         (package-menu--refresh): Delegate obsolete-hiding to
18187         `package--remove-hidden'.
18188         (package--remove-hidden): Disregard high-priority package if it is
18189         older than the installed one.
18191 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
18193         Update source file encoding list
18194         Update admin/notes/unicode, along with coding system cookies in
18195         other files, so that the two match each other better.
18196         * admin/notes/unicode: lisp/language/ethio-util.el and
18197         lisp/language/ethiopic.el also use utf-8-emacs.
18198         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
18199         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
18200         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
18201         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
18202         * etc/refcards/sk-survival.tex:
18203         Add "coding: utf-8" so that this file is not mishandled in a
18204         Latin-1 or Big-5 locale.
18205         * lisp/international/robin.el, lisp/org/ox-ascii.el:
18206         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
18207         * lisp/language/ethio-util.el: Fix trailer.
18209 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
18211         Fix synchronous invocation of Ispell
18212         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
18213         value to ispell-process-directory before calling ispell-init-process.
18214         Don't call set-process-coding-system if ispell-async-processp is nil.
18215         (Bug#20448)
18217 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18219         * lisp/emacs-lisp/package.el: Skip space and comments in init file
18220         (package--ensure-init-file): Insert snippet at first
18221         non-whitespace non-comments line.  Respects local-vars at the top
18222         of the file.
18224 2015-04-28  Glenn Morris  <rgm@gnu.org>
18226         * lisp/mail/rmail.el (rmail-copy-headers):
18227         Handle rmail-nonignored-headers being nil.  (Bug#18878)
18229         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
18231         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
18232         Don't get confused by a bzrlib version mismatch warning.
18234 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18236         Change default location of EUDC options file
18237         * etc/NEWS: Document change to EUDC options file's default location.
18238         * lisp/net/eudc-vars.el (eudc-options-file): Use
18239         `locate-user-emacs-file' to change default options file location.
18241 2015-04-27  Glenn Morris  <rgm@gnu.org>
18243         * test/automated/package-test.el (package-test-update-archives-async):
18244         Try to handle the test server script dying.
18246 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18248         * lisp/saveplace.el (save-place-mode): New minor mode.
18249         (save-place): Redefine as an obsolete alias.
18251         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
18252         * lisp/midnight.el: Use lexical-binding.
18253         (midnight-mode): Make it a proper minor mode.
18254         (midnight-buffer-display-time): Make arg non-optional.
18255         (midnight-find): Remove.
18256         (clean-buffer-list-kill-never-regexps)
18257         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
18258         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
18259         contain functions.
18260         (clean-buffer-list): Use cl-find.
18261         Allow clean-buffer-list-kill-never-regexps to contain functions.
18263 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
18265         Bump version of seq.el to 1.5
18266         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
18267         from seq-doseq.  Bump version number of seq.el.
18269 2015-04-27  Glenn Morris  <rgm@gnu.org>
18271         * lisp/mail/rmail.el (rmail-reply):
18272         Decode subject before matching "Re:" prefix.  (Bug#20396)
18274 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
18276         * lisp/emacs-lisp/package.el: Small improvements
18277         (package--with-work-buffer-async): More informative error.
18278         (package-install-user-selected-packages): Rename to
18279         `package-install-selected-packages'.
18281 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18283         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
18284         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
18285         (eieio--class-make): Remove leftover `tag'.
18287 2015-04-27  Glenn Morris  <rgm@gnu.org>
18289         * lisp/gnus/message.el (gnus-extract-address-components):
18290         Remove bogus declaration that was masking previous problem.
18292 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
18294         * lisp/gnus/message.el (message-insert-formatted-citation-line):
18295         Fix typo.  (Bug#20318)
18297 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18299         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
18301         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
18302         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
18303         the buffer in yet another frame.
18304         (reftex-toc-visit-location): Make sure toc-window has focus at the end
18305         when `final' is nil.
18306         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
18307         silence warnings.  Use `--' to clarify that it's internal.
18308         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
18309         (reftex-toc-promote): Clarify unused argument.
18310         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
18311         Add `reftex--' prefix.  Fix all users.
18312         (reftex-toc-promote-prepare): Use _ for dummy variable.
18313         (reftex-toc-restore-region): Rename `m.
18315 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
18317         Fix a typo in bibtex.el
18318         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
18319         last change.  (Bug#20429)
18321         Fix redisplay of frame after loading new fonts
18322         * src/xdisp.c (redisplay_internal): When retrying redisplay of
18323         a frame because new fonts were loaded, disable all redisplay
18324         optimizations on that frame by calling SET_FRAME_GARBAGED.
18325         (Bug#20410)
18327 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18329         * lisp/info.el (Info-menu): Properly provide the `default'
18330         (Bug#20391)
18332         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
18333         Catch errors from documentation (bug#20418).
18334         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
18336 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
18338         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
18339         Remove redundant ":group 'package".
18341 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
18343         Fix a typo in rmail.el
18344         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
18345         last commit.  (Bug#20429)
18347 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
18349         Introduce xref-prompt-for-identifier
18350         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
18351         (xref--read-identifier): Use it
18352         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
18354 2015-04-26  João Távora  <joaotavora@gmail.com>
18356         `tex-insert-quote' after single `'' opens quotes instead of closing
18357         Without this, it's very hard to precede double quotes with the
18358         apostrophe character, i.e. insert the sequence '``
18359         (quote-backquote-backquote), commonly useful in portuguese, for
18360         instance.
18361         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
18362         preceding chars making `tex-insert-quote' be in the "opening" context.
18364 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
18366         Pass `id' to `completing-read' as def instead of initial input
18367         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
18368         `completing-read' as the default value instead of initial input
18369         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
18371 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
18373         Don't freeze with unreadable processes
18374         Don't freeze if an exiting process can't be read from.  (Bug#19860).
18375         This fixes a bug I introduced in
18376         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
18377         "* process.c: Add sanity checks for file descriptors."
18378         Dmitry Gutov did most of the legwork in finding the problem.
18379         * src/process.c (wait_reading_process_output):
18380         Treat non-running processes that can't be read from
18381         the same as other non-running processes.
18383 2015-04-25  Alan Mackenzie  <acm@muc.de>
18385         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
18386         * lisp/subr.el (remove-yank-excluded-properties): Put
18387         `with-silent-modifications' around only the last three lines of code.
18389 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18391         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
18392         (package--all-keywords): Deleted variable.
18394         * etc/NEWS: Document package-hiding functionality.
18396 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
18398         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
18400         Clarify the doc string of 'replace-regexp-in-string'
18401         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
18403         Improve doc string of 'insert-buffer-substring'
18404         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
18406         MS-Windows followup for the recent gnulib update
18407         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
18408         acl-internal.c.
18410 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
18412         Spelling fixes
18414         Merge from gnulib
18415         This incorporates:
18416         2015-04-24 file-has-acl: new module, split from acl
18417         2015-04-24 manywarnings: add GCC 5.1 warnings
18418         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
18419         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
18420         2015-04-15 acl: On Linux, check for acls without libacl
18421         2015-04-14 tempname: avoid unused parameter warnings (trivial)
18422         * lib/acl-internal.c: New file, from gnulib.
18423         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
18424         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
18425         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
18426         Update from gnulib.
18428         Port --enable-gcc-warnings to GCC 5.1 x86-64
18429         * lib-src/ebrowse.c (dump_sym):
18430         * lib-src/hexl.c (main):
18431         * src/ccl.c (ccl_driver):
18432         * src/character.c (string_escape_byte8):
18433         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
18434         * src/gnutls.c (Fgnutls_boot):
18435         * src/gtkutil.c (xg_check_special_colors):
18436         * src/image.c (x_build_heuristic_mask):
18437         * src/print.c (safe_debug_print, print_object):
18438         * src/term.c (produce_glyphless_glyph):
18439         * src/xdisp.c (get_next_display_element)
18440         (produce_glyphless_glyph):
18441         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
18442         Don't use a signed format to print an unsigned integer, or vice
18443         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
18444         * src/image.c (png_load_body, jpeg_load_body):
18445         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
18447 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
18449         Add new faces to tsdh-light-theme
18450         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
18451         definitions for Info-quoted, ace-jump-face-foreground,
18452         hl-paren-face, show-paren-match, and show-paren-mismatch.
18454 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
18456         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
18458 2015-04-24  Glenn Morris  <rgm@gnu.org>
18460         * build-aux/gitlog-to-emacslog:
18461         Use raw log format rather than wrapped one.
18463 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
18465         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
18466         (seq-doseq): Fix out-of-scope binding.
18467         Don't call `seq-length at every iteration.
18468         Reduce `if's from 3 to 2 per iteration.
18469         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
18471 2015-04-24  Glenn Morris  <rgm@gnu.org>
18473         * lisp/textmodes/text-mode.el (text-mode-hook):
18474         Move text-mode-hook-identify to default.
18476         * lisp/mouse.el (minor-mode-menu-from-indicator):
18477         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
18479         * lisp/help-fns.el (describe-function): More type checking.
18480         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
18482         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
18483         (Bug#20325)
18485 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
18487         shr: strip leading whitespace when expanding URLs
18488         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
18490 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
18492         Clarify "co-authored" some more
18494         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
18496         Clarify doc strings of functions that search for properties
18497         * src/textprop.c (Fnext_char_property_change)
18498         (Fprevious_char_property_change)
18499         (Fnext_single_char_property_change)
18500         (Fprevious_single_char_property_change, Fnext_property_change)
18501         (Fnext_single_property_change, Fprevious_property_change)
18502         (Fprevious_single_property_change): Clarify doc strings wrt return
18503         value and the optional LIMIT argument.  (Bug#20411)
18505 2015-04-24  Glenn Morris  <rgm@gnu.org>
18507         * test/automated/message-mode-tests.el (message-mode-propertize):
18508         Handle non-writable HOME; eg on hydra.nixos.org.
18510 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
18512         Avoid starting threads by w32-shell-execute
18513         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
18514         local file names, before invoking ShellExecute.  (Bug#20220)
18516 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
18518         Fix following doc-links in `widget-documentation-link-action'
18519         * lisp/wid-edit.el (widget-documentation-link-action): Make
18520         following doc-links less simplistic (Bug#20398).
18522 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18524         Improve EUDC manual
18525         * doc/misc/eudc.texi (Troubleshooting):
18526         New LDAP troubleshooting subsection.
18528 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
18530         Omit needless "\ " after multibyte then newline
18531         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
18532         (print_object): When print-escape-multibyte is non-nil and a
18533         multibyte character is followed by a newline or formfeed, followed
18534         by a hex digit, don't output a needless "\ " before the hex digit.
18535         * test/automated/print-tests.el (print-hex-backslash): New test.
18537 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
18539         Add a new `inhibit-message' variable
18540         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
18541         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
18542         `inhibit_message' is non-zero.
18543         * etc/NEWS: Add an entry.
18544         * doc/lispref/display.texi: Add an entry for `inhibit-message',
18545         mention it in `message'.
18547 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18549         Fix last fix in `display-buffer-record-window'.
18550         * lisp/window.el (display-buffer-record-window): Fix last fix.
18552 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
18554         Minor edits in CONTRIBUTE
18555         * CONTRIBUTE: Rearrange instructions about log messages.
18556         Use "Git" capitalized all over.
18557         Use 2 spaces between sentences.
18559 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
18561         * lisp/files.el (basic-save-buffer): Fix argument.
18563         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
18564         In case `(and (null custom-file) init-file-had-error)' do the same
18565         thing we'd do if `(null user-init-file)', which is to either error out
18566         or return nil.  This is in line with `custom-save-all' which would
18567         throw an error in that situation.  (Bug#20355)
18569         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
18570         (package-menu-hide-low-priority): New variable, see its doc.
18571         (package-archive-priorities): Update doc.
18572         (package-desc-priority): New function.
18573         (package-desc-priority-version): Use it.
18574         (package--remove-hidden): New function.
18575         (package-menu--refresh): Use it.
18577         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
18578         (package-menu--hide-obsolete): New variable.
18579         (package--remove-hidden): Use it.
18580         (package-menu-hide-obsolete): New interactive function to toggle
18581         the variable.
18582         (package--quick-help-keys): Document it.
18583         (package-menu-async): Add :version tag.
18584         (package-menu-mode-map): Bind package-menu-hide-obsolete.
18585         (package-desc-status): Indicate non-installed obsolete packages as
18586         avail-obso.
18587         (package-menu-mark-install): Allow installation of avail-obso.
18588         (package-menu--status-predicate): Sort avail-obso with available.
18590 2015-04-22  Alan Mackenzie  <acm@muc.de>
18592         On C-y, stop some text property entries being written into buffer-undo-list
18593         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
18594         `with-silent-modifications'.
18596 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18598         In display-buffer-record-window record selected window if necessary
18599         * lisp/window.el (display-buffer-record-window): Store selected window
18600         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
18602 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
18604         Fix reftex-citation bug
18605         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
18606         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
18607         integration is enabled and there are no citations in the document
18608         so far.
18610 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
18612         Add or reset based on the presence of MERGE_HEAD
18613         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
18614         `vc-git-resolve-when-done' to `after-save-hook' in either case.
18615         (vc-git-conflicted-files): Add a TODO.
18616         (vc-git-resolve-when-done): Depending on the presence of
18617         MERGE_HEAD, either update the resolved file in the index, or
18618         remove it from there.  (Bug#20292)
18620 2015-04-21  Glenn Morris  <rgm@gnu.org>
18622         * lisp/custom.el (custom-declare-group): No need to purecopy
18623         custom-current-group-alist members following recent change to set
18624         it to nil before dumping.
18626         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
18627         (Bug#20399)
18629 2015-04-21  Daniel Colascione  <dancol@dancol.org>
18631         Unbreak no-op buffer save message
18632         * lisp/files.el (basic-save-buffer): Accept called-interactively as
18633         an argument instead of directly invoking called-interactively-p,
18634         which will always yield nil in that context.
18636 2015-04-21  Alan Mackenzie  <acm@muc.de>
18638         CC Mode: Do nothing in before/after-change-functions for text
18639         property changes
18640         Fixes bug#20266.
18641         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
18642         yank-handled-properties buffer local, and remove 'category from it.
18643         (c-called-from-text-property-change-p): New function.
18644         (c-before-change): Don't do anything if a call of the new function
18645         returns non-nil.
18646         (c-after-change): Don't do much if a call of the new function returns
18647         non-nil.
18648         (c-extend-after-change-region): Put changes to text property 'fontified
18649         inside c-save-buffer-state.
18651 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18653         Fix byte-compiler warnings about looking-back
18654         * lisp/vc/log-view.el (log-view-end-of-defun-1):
18655         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
18656         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
18657         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
18658         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
18659         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
18660         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
18661         * lisp/org/org.el (org-insert-heading, org-sort-entries):
18662         * lisp/org/org-mouse.el (org-mouse-end-headline)
18663         (org-mouse-context-menu):
18664         * lisp/org/org-clock.el (org-clock-cancel):
18665         * lisp/man.el (Man-default-man-entry):
18666         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
18667         (rmail-ensure-blank-line):
18668         * lisp/mail/footnote.el (Footnote-delete-footnote):
18669         * lisp/mail/emacsbug.el (report-emacs-bug):
18670         * lisp/info.el (Info-follow-reference, Info-fontify-node):
18671         * lisp/info-look.el (info-lookup-guess-custom-symbol):
18672         * lisp/help-fns.el (help-fns--key-bindings):
18673         * lisp/files.el (hack-local-variables):
18674         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
18675         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
18676         (viper-complete-filename-or-exit):
18677         * lisp/emulation/viper-cmd.el (viper-backward-indent):
18678         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
18679         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
18680         * lisp/cus-edit.el (custom-face-edit-value-create):
18681         * lisp/calendar/todo-mode.el (todo-set-item-priority)
18682         (todo-filter-items-1, todo-convert-legacy-files)
18683         (todo-prefix-overlays): Add explicit second arg to looking-back.
18685 2015-04-20  Glenn Morris  <rgm@gnu.org>
18687         Avoid non-nil current-load-list at startup
18688         * src/process.c (init_process_emacs): Move Fprovide statement...
18689         (syms_of_process): ... to here.
18691         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
18693         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
18694         in emacs -Q.
18696 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
18698         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
18699         (Bug#20330)
18701 2015-04-20  Glenn Morris  <rgm@gnu.org>
18703         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
18705         Tweak exec-path in uninstalled case
18706         * src/callproc.c (init_callproc): If running uninstalled, do not
18707         include eventual installation libexec directory in exec-path.
18709 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
18711         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
18712         cache keywords.
18713         (package-menu-filter): Accept a list of keywords.
18714         (package--all-keywords): New variable to cache known keywords.
18715         (package-all-keywords): Populate it if necessary.
18716         (package-refresh-contents): Reset it.
18718         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
18719         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
18720         as special keywords which match agains package archive and status
18721         respectively.
18722         * etc/NEWS: Document it.
18724 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
18726         Describe and index "empty overlays".
18727         * doc/lispref/display.texi (Overlays): Improve indexing.
18728         (Managing Overlays): Describe "empty" overlays.
18729         (Overlay Properties, Finding Overlays): Add cross-reference to
18730         where empty overlays are described.
18732 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18734         Spelling fixes
18736         Quote 'like this' in top-level files
18737         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
18738         Prefer to single-quote 'like this' (instead of the older style
18739         `like this').
18740         * configure.ac: Fix some space-before-tab problems that 'git commit'
18741         complained about.
18743         Use bool for boolean in textprop.c, undo.c
18744         * src/textprop.c (soft, hard): Now constants instead of macros.
18745         (validate_plist): Rewrite to avoid need for boolean local.
18746         (interval_has_all_properties, interval_has_some_properties)
18747         (interval_has_some_properties_list, add_properties)
18748         (remove_properties, get_char_property_and_overlay)
18749         (Fnext_single_char_property_change)
18750         (Fprevious_single_char_property_change, add_text_properties_1)
18751         (Fremove_text_properties, Fremove_list_of_text_properties)
18752         (copy_text_properties):
18753         * src/tparam.c (tparam1):
18754         * src/undo.c (record_change, record_property_change)
18755         (syms_of_undo):
18756         Use 'true' and 'false' for booleans.
18758 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
18760         * lisp/vc/vc-git.el (vc-git-find-file-hook):
18761         Call `smerge-start-session' even when dealing with a stash
18762         conflict (bug#20292).
18764 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
18766         Add option to eshell/clear to clear scrollback.
18767         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
18768         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
18769         scrollback contents are cleared.
18770         * etc/NEWS: Describe change.
18771         * doc/misc/eshell.texi: Add entry for `clear'.
18773 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18775         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
18776         where either will do.
18778 2015-04-19  Steve Purcell  <steve@sanityinc.com>
18780         Assume package archive-contents are UTF8-encoded
18781         * lisp/emacs-lisp/package.el (package--read-archive-file):
18782         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
18783         downloaded and cached archive-contents files, so that non-ASCII
18784         characters in package descriptions are displayed correctly in the
18785         `list-packages' menu.  (Bug#20231)
18787 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
18789         Abort when looking at stashed changes
18790         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
18791         stashed changes (bug#20292).
18793 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18795         Refactor low-level printing for simplicity
18796         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
18797         PRINTPREPARE; doable now that we assume C99.  All callers changed.
18798         (PRINTCHAR): Remove, as it adds more mystery than clarity.
18799         All callers changed.
18800         (strout): Assume that caller computes length.  All callers changed.
18801         (print_c_string): New function.
18802         (write_string, write_string_1): Compute length instead of asking
18803         the caller to compute it.  All callers changed.
18804         (write_string): Simplify by using write_string_1.
18805         (write_string_1): Simplify by using print_c_string.
18806         (Fterpri): Compute default val more clearly.
18807         (Fprin1_to_string, print_object):
18808         Assume C99 to avoid unnecessary nesting.
18809         (print_object): Prefer print_c_string to multiple printchar, or
18810         to calling strout with -1 length.  Coalesce into sprintf when
18811         this is easy.
18813 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
18815         Prefer "Bug#1234" in commit messages (Bug#20325)
18816         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
18817         as this isn't useful for Git.
18818         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
18820 2015-04-18  Glenn Morris  <rgm@gnu.org>
18822         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
18823         (Bug#19506)
18825 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
18827         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
18828         Do not use `chomp' as a function.  (Bug#19505)
18830 2015-04-18  Glenn Morris  <rgm@gnu.org>
18832         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
18834         * doc/emacs/misc.texi (Sorting): Small edit.
18835         (Bug#19896)
18837         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
18839 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
18841         css-mode.el: Support multi-line comment filling
18842         (Bug#20256)
18843         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
18844         comment filling.
18845         (css-adaptive-fill): New function.
18846         (css-mode): Set `adaptive-fill-function'.
18847         (scss-mode): Set `comment-continue'.
18849 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
18851         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
18852         Better error messages.
18854 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
18856         Minor improvements in Bulgarian input methods
18857         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
18858         Replace U+042C with U+045D, as the former character is not used in
18859         the modern Bulgarian language.
18860         (Bug#20350)
18862 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18864         Improve EUDC manual
18865         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
18866         authentication schemes.  Add index items.  Shorten example server
18867         name.
18869 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
18871         Don't show both feature and function with the same name
18872         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18873         Don't show both feature and function with the same name.
18875         (elisp--xref-identifier-location): Skip variable, if it's also
18876         a function
18877         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18878         Avoid returning both the variable and the function for the same
18879         minor mode.
18881 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
18883         Fix fontification of keywords clobbered by the prompt
18884         * lisp/comint.el (comint-output-filter): Remove the uses of
18885         with-silent-modifications I introduced as part of the last change.
18886         This fixes, e.g., erratically missing highlighting when running
18887         ./configure --help; ./configure in a shell-mode buffer with
18888         compilation-shell-minor-mode turned on.
18890 2015-04-17  Glenn Morris  <rgm@gnu.org>
18892         * admin/authors.el (authors-valid-file-names)
18893         (authors-renamed-files-alist): Additions.
18895 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
18897         * lisp/indent.el (indent-region): Don't deactivate the mark.
18898         (Bug#20357)
18900 2015-04-17  Sam Steingold  <sds@gnu.org>
18902         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
18904 2015-04-16  Leo Liu  <sdl.web@gmail.com>
18906         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
18908 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
18910         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
18911         Don't use `pcomplete' any more.
18913 2015-04-16  Glenn Morris  <rgm@gnu.org>
18915         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
18917 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
18919         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
18920         * configure.ac (LIBJPEG): Leave it empty for MinGW.
18922 2015-04-16  Glenn Morris  <rgm@gnu.org>
18924         * lisp/replace.el (query-replace-from-to-separator):
18925         Delay initialization to avoid rogue setting after startup.
18927 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
18929         Pre-4.6 GCC succeeds with unknown option
18930         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
18931         (Bug#20338)
18933 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18935         '[:graph:]' now excludes whitespace, not just ' '
18936         * doc/lispref/searching.texi (Char Classes):
18937         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
18938         sans whitespace (not sans space).
18939         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
18940         not just space.
18941         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
18943 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18945         * lisp/subr.el (substitute-key-definition-key, special-form-p)
18946         (macrop): Drop deprecated second arg to indirect-function.
18947         (looking-back): Make the second arg non-optional.
18949         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
18950         command is actually sent to the shell.
18952 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18954         Port jpeg configuration to Solaris 10 with Sun C
18955         * configure.ac: Check for jpeglib 6b by trying to link it, instead
18956         of relying on cpp magic that has problems in practice.  Check for
18957         both jpeglib.h and jerror.h features.  Remove special case for
18958         mingw32, which should no longer be needed (and if it were needed,
18959         should now be addressable by hotwiring emacs_cv_jpeglib).
18960         (Bug#20332)
18962 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18964         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
18965         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
18966         Move to elisp-mode.el.
18967         (lisp-mode-variables): (Re)move elisp-specific settings.
18968         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
18969         from lisp-mode-variables.
18970         (elisp--font-lock-flush-elisp-buffers): New function, moved from
18971         lisp-mode.el.
18973         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
18974         Avoid pathological slowdown at top-level in large file.
18976 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18978         Standardize names of ChangeLog history files
18979         Suggested by Glenn Morris in:
18980         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18981         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
18982         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
18983         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
18984         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
18985         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
18986         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
18987         Remove.
18989         Split top-level entries into pre- and post-April 7
18990         This more clearly distingiushes pre-April-7 ChangeLog entries (which
18991         are for top-level files only) from post-April-7 entries (which are
18992         about files at all levels.  Problem reported by Glenn Morris in:
18993         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18994         * ChangeLog.1: Move post-April-7 entries from here ...
18995         * ChangeLog.2: ... to this new file.
18996         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
18998 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19000         Fix recent cus-start changes that added customize-rogues
19001         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
19002         vars early.
19003         * lisp/loadup.el ("cus-start"): Move to the end to reduce
19004         customize-rogue.
19006 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
19008         Define cl-concatenate as an alias to seq-concatenate
19009         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
19010           code by making cl-concatenate an alias to seq-concatenate.
19012 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19014         * src/lread.c (intern_1): Make sure we'd find the symbol we add
19015         (Bug#20334)
19016         * src/xfaces.c (resolve_face_name): Don't use `intern' with
19017         Lisp_Strings.
19019 2015-04-15  Glenn Morris  <rgm@gnu.org>
19021         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
19023 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
19025         Clean up gnus-uu saving code slightly
19026         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
19027         save-restriction/widen calls make more sense.
19029 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19031         Make [:graph:] act like [:print:] sans space
19032         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
19033         [:graph:] so that it matches everything that [:print:] does,
19034         except for space.
19035         * doc/lispref/searching.texi (Char Classes):
19036         * etc/NEWS:
19037         * lisp/emacs-lisp/rx.el (rx):
19038         Document [:graph:] to be [:print:] sans ' '.
19039         * src/character.c, src/character.h (graphicp): New function.
19040         * src/regex.c (ISGRAPH) [emacs]: Use it.
19041         (BIT_GRAPH): New macro.
19042         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
19043         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
19044         Return BIT_GRAPH for RECC_GRAPH.
19045         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
19046         and ISPRINT if BIT_PRINT.
19048 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19050         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
19051         Don't use call-next-method in a cl-defmethod.
19053         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
19054         (eieio--class-p): Remove, provided by cl-defstruct.
19056 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
19058         Add seq-intersection and seq-difference to the seq library
19059         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
19060         New functions.
19061         * test/automated/seq-tests.el: Add tests for seq-intersection and
19062         seq-difference.
19063         * doc/lispref/sequences.texi: Add documentation for seq-intersection
19064         and seq-difference.
19066 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19068         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
19069         to avoid leaking internals.
19071 2015-04-14  Sam Steingold  <sds@gnu.org>
19073         package--ensure-init-file: widen requires save-restriction
19075 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
19077         Improve the commit-msg Git hook for unibyte environments
19078         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
19079         in unibyte environments.  (Suggested by Paul Eggert
19080         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
19081         [:print:], based on UTF-8 sequences of the unprintable characters.
19083         Describe problems with cursor caused by Windows Magnifier
19084         * etc/PROBLEMS: Describe the problem with cursor shape on
19085         MS-Windows due to Windows Magnifier.
19086         (Bug#20271)
19088         Make [:print:] support non-ASCII characters correctly
19089         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
19090         (BIT_PRINT): New bit mask.
19091         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
19092         * src/character.c (printablep): New function.
19093         * src/character.h (printablep): Add prototype.
19094         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
19095         of 'print', 'alnum', and 'alphabetic'.
19096         * doc/lispref/searching.texi (Char Classes): Document the new
19097         behavior of [:print:].
19098         * etc/NEWS: Mention the new behavior of [:print:].
19100         Assign correct general-category and names to surrogates
19101         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
19102         surrogates.  This avoids assigning them the default
19103         general-category of 'Cn', i.e. unassigned codepoints.
19104         (unidata-get-name): Give surrogates synthetic names.
19106 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
19108         Assume C89 offsetof in xterm.c, xlwmenu.c
19109         * lwlib/xlwmenu.c (offset):
19110         * src/xterm.c (cvt_string_to_pixel_args):
19111         Use offsetof, not XtOffset.
19113 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
19115         Assume C89 offsetof in widget.c
19116         * src/widget.c (XtOffset): Remove; no longer needed.
19117         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
19119         Fix think-o in previous patch
19120         * src/window.c (count_windows, get_leaf_windows):
19121         Don't optimize count_windows incorrectly.
19123 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19125         Avoid some int overflows in window.c
19126         * src/print.c (print_object):
19127         * src/window.c (sequence_number):
19128         * src/window.h (struct window.sequence_number):
19129         Don't assume window sequence number fits in int.
19130         * src/window.c (window_select_count):
19131         * src/window.h (struct window.use_time, window_select_count):
19132         Don't assume window use time fits in int.
19133         * src/window.c (Fsplit_window_internal):
19134         Don't assume user-supplied integer, or sum, fits in int.
19135         (Fset_window_configuration, count_windows, get_leaf_windows)
19136         (save_window_save, Fcurrent_window_configuration):
19137         Use ptrdiff_t for object counts.
19138         (Fset_window_configuration): Omit unused local 'n'.
19139         (count_windows): Simplify by writing in terms of get_leaf_windows.
19140         (get_leaf_windows): Don't store through FLAT if it's null.
19141         (extract_dimension): New static function.
19142         (set_window_margins, set_window_fringes, set_window_scroll_bars):
19143         Use it to avoid undefined behavior when converting user-supplied
19144         integer to 'int'.
19146 2015-04-13  Glenn Morris  <rgm@gnu.org>
19148         Minor doc copyedits
19149         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
19150         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
19152 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19154         [Gnus] Catch the invalid-operation that idna.el will issue
19155         * lisp/gnus/gnus-art.el (gnus-use-idna):
19156         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
19157         * lisp/gnus/message.el (message-use-idna):
19158         Catch the invalid-operation that idna.el will issue.
19160 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19162         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
19164 2015-04-13  Sam Steingold  <sds@gnu.org>
19166         package--ensure-init-file: widen before looking for
19167         "(package-initialize)"
19169 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
19171         Change diff-switches default to `-u' (Bug#20290)
19172         * doc/emacs/files.texi (Comparing Files): Document the new default
19173         value of `diff-switches'.
19174         * doc/emacs/trouble.texi (Sending Patches): Document the preference
19175         for unified diff format.  Escape the plus in the suggested `-F' regexp
19176         value.
19177         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
19179 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19181         (gnus-group--setup-tool-bar-update): Fix last change
19182         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
19183         cursor-sensor-functions should be a list of functions.
19185 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19187         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
19188         Use gmm-called-interactively-p.
19190 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19192         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
19193         (Bug#20321)
19194         * lisp/cus-start.el (read-buffer-function): Don't advertise
19195         iswitchb-read-buffer any more.
19196         (iswitchb): Don't tweak this obsolete group any more.
19198 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
19200         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
19202         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
19203         Adding a string after a constructor's argument list will use
19204         that string as the constructor function docstring.  If this string
19205         is absent but the struct itself was given a docstring, use that as
19206         the constructor's docstring.
19207         Fixes bug#17284.
19209 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19211         Deprecate `intangible' and `point-entered' properties
19212         * lisp/emacs-lisp/cursor-sensor.el: New file.
19213         * lisp/simple.el (pre-redisplay-functions): New hook.
19214         (redisplay--pre-redisplay-functions): New function.
19215         (pre-redisplay-function): Use it.
19216         (minibuffer-avoid-prompt): Mark obsolete.
19217         (redisplay--update-region-highlight): Adapt it to work as a function on
19218         pre-redisplay-functions.
19219         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
19220         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
19221         than point-entered to make the prompt intangible.
19222         * lisp/forms.el: Move `provide' calls to the end.
19223         (forms-mode): Don't use `run-hooks' on a local var.
19224         (forms--make-format, forms--make-format-elt-using-text-properties):
19225         Use cursor-intangible rather than `intangible'.
19226         (forms-mode): Enable cursor-intangible-mode.
19227         * lisp/isearch.el (isearch-mode): Use defvar-local.
19228         (cursor-sensor-inhibit): Declare.
19229         (isearch-mode): Set cursor-sensor-inhibit.
19230         (isearch-done): Set it back.
19231         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
19232         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
19233         any more.
19234         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
19235         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
19236         Add Edebug spec.
19237         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
19238         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
19239         inhibit-point-motion-hooks any more.
19240         (ses--cell-at-pos, ses--curcell): New functions, extracted from
19241         ses-set-curcell.
19242         (ses-set-curcell): Use them.
19243         (ses-print-cell, ses-setup): Use cursor-intangible instead of
19244         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
19245         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
19246         Use ses--cell-at-pos.
19247         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
19248         extracted from ses-command-hook.  Make them work with multiple windows
19249         displaying the same buffer.
19250         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
19251         Enable cursor-intangible-mode.
19252         (ses-command-hook): Remove cell highlight and mode-line update code.
19253         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
19254         Update for new name of text-property holding the cell name.
19255         (ses-rename-cell): Don't mess with mode-line-process.
19256         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
19257         cursor-sensor-functions property instead of point-entered.
19258         (erc-insert-timestamp-right, erc-format-timestamp):
19259         Use cursor-intangible rather than `intangible'.
19260         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
19261         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
19262         cursor-sensor-mode if needed.
19263         (erc-echo-timestamp): Adapt to calling convention of
19264         cursor-sensor-functions.
19265         (erc-insert-timestamp-right): Remove unused vars `current-window' and
19266         `indent'.
19267         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
19268         (gnus-update-group-mark-positions): Remove unused `topic' var.
19269         (gnus-group-insert-group-line): Remove unused var `header'.
19270         (gnus-group--setup-tool-bar-update): New function.
19271         (gnus-group-insert-group-line): Use it.
19272         (gnus-group-update-eval-form): Declare local
19273         dynamically-bound variables.
19274         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
19275         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
19276         (gnus-group-prepare-topics, gnus-topic-update-topic)
19277         (gnus-topic-change-level, gnus-topic-catchup-articles)
19278         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
19279         Use inhibit-read-only.
19280         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
19281         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
19282         * lisp/textmodes/reftex-index.el (reftex-display-index):
19283         Use cursor-intangible-mode if available.
19284         (reftex-index-post-command-hook): Check cursor-intangible.
19285         * lisp/textmodes/reftex-toc.el (reftex-toc):
19286         Use cursor-intangible-mode if available.
19287         (reftex-toc-recenter, reftex-toc-post-command-hook):
19288         Check cursor-intangible.
19289         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
19290         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
19291         (sgml-tags-invisible): Use with-silent-modifications and
19292         inhibit-read-only.  Enable cursor-sensor-mode.
19293         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
19294         calling convention of cursor-sensor-functions.
19295         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
19296         (table-point-entered-cell-hook, table-point-left-cell-hook):
19297         Don't autoload.
19298         (table-cell-entered-state): Remove var.
19299         (table--put-cell-point-entered/left-property)
19300         (table--remove-cell-properties):
19301         Use cursor-sensor-functions rather than point-entered/left.
19302         (table--point-entered/left-cell-function): Merge
19303         table--point-entered-cell-function and table--point-left-cell-function
19304         and adjust to calling convention of cursor-sensor-functions.
19306         Update ldef-boots.el
19308         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
19310         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
19312         Collapse successive char deletions in the undo log
19313         * src/cmds.c (remove_excessive_undo_boundaries): New function,
19314         extracted from Fself_insert_command.
19315         (Fdelete_char, Fself_insert_command): Use it.
19316         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
19317         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
19319         xterm and OSC 52: Add NEWS entry, and tweak the code
19320         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
19321         to top-level.
19322         (terminal-init-xterm-activate-set-selection): Set a terminal property.
19323         (xterm--set-selection): Use it instead of checking the value of
19324         `terminal-initted'.  Don't use string-bytes.
19326 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
19328         xterm.el: Implement OSC-52 functionality for setting the X selection
19329         * lisp/term/xterm.el (xterm-max-cut-length): New var.
19330         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
19331         New funs.
19332         (terminal-init-xterm, xterm--version-handler): Use them.
19334 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19336         Remove left over code from when we used an obsolete/loaddefs.el file
19337         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
19338         when we used an obsolete/loaddefs.el file.
19340         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
19341         (semanticdb-without-unloaded-file-searches): Use declare.
19342         (semantic-fw-add-edebug-spec): Remove.
19344         * lisp/completion.el (completion-lisp-mode-hook):
19345         Use completion-separator-chars rather than local key binding.
19347         * src/*.c: Set deactivate_mark buffer-locally
19348         (Bug#20260)
19349         * src/insdel.c (prepare_to_modify_buffer_1):
19350         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
19351         buffer-locally.
19353 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19355         python.el: Keep symmetry on sexp navigation with parens
19356         (Bug#19954)
19357         * lisp/progmodes/python.el
19358         (python-nav--forward-sexp): Add argument skip-parens-p.
19359         (python-nav-forward-sexp, python-nav-backward-sexp)
19360         (python-nav-forward-sexp-safe)
19361         (python-nav-backward-sexp-safe): Use it.
19362         * test/automated/python-tests.el
19363         (python-nav-forward-sexp-1): Fix test.
19365 2015-04-12  João Távora  <joaotavora@gmail.com>
19367         Don't use `setq-local' in Gnus code
19368         This might break upstream builds with older Emacsen
19369         * lisp/gnus/message.el (message-mode): Use `set' and
19370         `make-local-variable' instead of `setq-local'.
19372 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
19374         Update Makefile.in's .PHONY dependencies
19375         * Makefile.in (change-history-commit, master-branch-is-current)
19376         (no-ChangeLog): Now phony.
19378         Remove configure's --with-mmdf option
19379         * configure.ac (MAIL_USE_MMDF): Remove.
19380         * etc/NEWS: Document this.
19381         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
19382         (Bug#20308)
19384         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
19385         That way, 'make install' won't think it's a man page.
19386         Reported by Ashish SHUKLA in:
19387         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
19389         Improve 'make change-history' prereq tests
19390         * Makefile.in (gen_origin): Fix to match what's in the master branch.
19391         (no-ChangeLog, master-branch-is-current): New rules.
19392         (change-history): Depend on them, to avoid similar future problems.
19393         Escape the local-variables string to pacify Emacs when editing
19394         Makefile.in.
19396 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19398         * test/automated/package-test.el (with-package-test):
19399         Kill Packages buffer.
19401         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
19402         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
19403         "Upgrade" last, and use capitalized instead of all-caps.
19405         * lisp/emacs-lisp/package.el: Completely silence async operations.
19406         (package--make-autoloads-and-stuff): Silence autoloads.
19407         (package--save-selected-packages): New function, silences
19408         `customize-save-variable'.
19409         (package--user-selected-p, package-install-from-buffer)
19410         (package-delete, package-install): Use it.
19411         (package-install-from-archive)
19412         (package-menu--perform-transaction): Silence.
19413         (package-menu-execute): Feedback when operation starts.
19415         Use delay-mode-hooks when visiting the init-file
19416         * lisp/emacs-lisp/package.el (package--ensure-init-file):
19417         delay-mode-hooks.
19418         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
19420         * lisp/files.el: Only message when saving if save-silently is nil.
19421         (save-silently): New variable.
19422         (files--message): New function.
19423         (find-file-noselect, save-buffer, basic-save-buffer)
19424         (basic-save-buffer-2, save-some-buffers, not-modified)
19425         (append-to-file): Use them.
19427 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
19429         Support debug declarations in pcase macros
19430         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
19431         (pcase-UPAT): Use it.  Remove "`".
19432         (pcase--edebug-match-macro): New function.
19433         (pcase-defmacro): Support debug declarations.
19434         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
19435         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
19436         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
19437         Add debug declaration.
19439         pcase.el: Edebug support for `app' and vector patterns
19440         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
19441         (pcase-UPAT): Use it.  Support `app' patterns.
19442         (pcase-QPAT): Support vector patterns.
19444         edebug.el: Disambiguate vector specifications
19445         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
19446         `(vector ...)' as a vector specification, not as a sublist.
19448         (gnus-summary-refer-thread): Don't clobber unread articles
19449         This fixes a bug where `A T' causes "random" articles to become marked
19450         as read.
19451         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
19452         gnus-newsgroup-unreads remains sorted.
19454         mouse-sel.el: Fix mouse-sel-get-selection-function
19455         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
19456         Use gui--last-selected-text-primary instead of no longer existing
19457         gui-last-selected-text.
19459         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
19461         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
19463 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19465         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
19467         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
19468         right buffer.
19470         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
19471         (byte-compile--interactive): New var.
19472         (byte-compile--message): New function.
19473         (byte-compile-log-1, byte-force-recompile)
19474         (byte-recompile-directory, byte-recompile-file)
19475         (byte-compile-file, compile-defun)
19476         (byte-compile-file-form-defmumble, byte-compile)
19477         (byte-compile-file-form-defalias, display-call-tree): Use it.
19479         * lisp/files.el: Don't message when nothing happened.
19480         (save-some-buffers, basic-save-buffer): Before messaging to say
19481         "nothing was saved" check if (called-interactively-p 'any).
19483 2015-04-12  João Távora  <joaotavora@gmail.com>
19485         Summary: Improve sexp-based movement in message-mode
19486         Works by giving citations and smileys a different syntax.  This helps
19487         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
19488         sexp-based movement.
19489         * lisp/gnus/message.el (message--syntax-propertize): New function.
19490         (message-mode): Set syntax-related vars.
19491         (message-smileys): New variable.
19492         * test/automated/message-mode-tests.el: New file
19494 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19496         Use bool for boolean in window.c
19497         * src/window.c: Omit unnecessary static function decls.
19498         (adjust_window_count, select_window, Fselect_window)
19499         (window_body_width, Fwindow_body_height, Fwindow_body_width)
19500         (set_window_hscroll, check_window_containing, Fwindow_at)
19501         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
19502         (unshow_buffer, replace_window, recombine_windows)
19503         (add_window_to_list, candidate_window_p, next_window)
19504         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
19505         (Fget_buffer_window, Fdelete_other_windows_internal)
19506         (replace_buffer_in_windows_safely, set_window_buffer)
19507         (Fset_window_buffer, Fforce_window_update)
19508         (temp_output_buffer_show, make_parent_window)
19509         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
19510         (resize_frame_windows, Fsplit_window_internal)
19511         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
19512         (Fresize_mini_window_internal, mark_window_cursors_off)
19513         (window_scroll, window_scroll_pixel_based)
19514         (window_scroll_line_based, scroll_command, Fscroll_other_window)
19515         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
19516         (Fmove_to_window_line, Fset_window_configuration)
19517         (delete_all_child_windows, apply_window_adjustment)
19518         (set_window_fringes, set_window_scroll_bars)
19519         (Fset_window_vscroll, foreach_window, foreach_window_1)
19520         (compare_window_configurations, Fcompare_window_configurations):
19521         Prefer 'bool', 'true', and 'false' for booleans.
19522         * src/window.h (WINDOW_MODE_LINE_LINES)
19523         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
19525 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
19527         Speed up byte-compilation and autoload generation by avoiding mode-hooks
19528         This prevents emacs-lisp-mode-hook from being run everytime an
19529         autoload file is generated, which can account for a fraction of
19530         package installation time depending on the hooks the user has
19531         configured.
19532         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
19533         * lisp/emacs-lisp/autoload.el (autoload-find-file)
19534         (autoload-find-generated-file): Use delay-mode-hooks.
19536         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
19537         (package-menu-refresh): Respect async and do new package checking.
19538         (list-packages): Use `package-menu-refresh' instead of repeating code.
19540         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
19541         (package--quick-help-keys): New variable.
19542         (package--prettify-quick-help-key): New function.
19543         (package-menu-quick-help): Use it.
19545         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
19546         (package--build-compatibility-table): Require finder.
19548         * test/automated/package-test.el: Fix new test.
19550         * lisp/emacs-lisp/package.el: Silence async operations.
19551         (package--silence): New variable.
19552         (package--message): New function.
19553         (package-import-keyring, package-refresh-contents)
19554         (package-compute-transaction, package-install, package-delete)
19555         (package-menu--perform-transaction, package-menu-execute): Use it.
19557         * test/automated/package-test.el: Test async functionality.
19558         (package-test-update-archives-async): New test.
19560 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19562         Utilize `make-process' in epg.el
19563         * lisp/epg.el (epg-error-output): Abolish.
19564         (epg-context): New slot `error-buffer'.
19565         (epg--start): Use `make-process' and `make-pipe-process'.
19566         (epg--process-filter): Remove code separating stderr from stdout.
19567         (epg-wait-for-completion): Simplify `error-output' handling.
19568         (epg-reset): Dispose error buffer.
19570 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19572         * .gitignore: Ignore doc temps and outputs.
19574         Port commit-msg to MSYS Bash+Gawk
19575         See Eli Zaretskii in:
19576         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
19577         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
19578         (cent_sign, print_at_sign, at_sign): Revert previous change.
19579         (print_at_sign): Prepend "BEGIN".
19580         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
19582         Port commit-msg to broken MS-Windows shell
19583         * build-aux/git-hooks/commit-msg (cent_sign):
19584         Just use UTF-8 here rather than ASCII + printf, as the latter fails
19585         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
19586         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
19588 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
19590         Support GnuTLS v3.4 and later on MS-Windows
19591         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
19592         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
19593         GnuTLS DLL to load according to value of libgnutls-version.
19594         (Bug#20294)
19596 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19598         Minor quoting etc. fixes to misc manuals
19599         Fix some minor quoting and spacing issues.  Distinguish more
19600         clearly among grave accent and apostrophe (which are ASCII) and
19601         single quote (which is not).  Prefer the standard terms
19602         "apostrophe" and "grave accent" to alternative names that can be
19603         confusing.  Use apostrophes to single-quote ASCII text.
19604         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
19605         rather than approximating it in ASCII with grave accent.
19607 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19609         Respect more keyword args in `make-process'
19610         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
19611         keywords as documented.
19613 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
19615         Extract ChangeLog entries when committing a directory
19616         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
19617         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
19618         Add a FIXME comment.
19619         (log-edit-changelog-entries): Extract from
19620         `log-edit-changelog-entries', handle FILE being a directory
19621         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
19623 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19625         Fix problems found by --enable-gcc-warnings
19626         * src/process.c (create_process, Fmake_pipe_process)
19627         (Fmake_network_process): Omit unused locals.
19629         Fix commit-msg to handle scissors lines
19630         * build-aux/git-hooks/commit-msg:
19631         Ignore every line after a scissors line, such as a line generated
19632         by 'git commit -v'.  Problem reported by Johan Bockgård in:
19633         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
19635         port commit-msg to Gawk 3.0.4 (1999)
19636         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
19637         (print_at_sign, at_sign): New vars.  Use them to avoid problems
19638         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
19639         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19641         Have commit-msg report commit failure
19642         * build-aux/git-hooks/commit-msg: If the commit is aborted,
19643         say so.  Simplify by doing this at the end.  Problem reported
19644         by Eli Zaretskii in:
19645         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19647 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19649         Clean up LDAP Configuration section of EUDC manual
19650         * doc/misc/eudc.texi: Combine indices.
19651         (LDAP Configuration): Use command markup.  Add index entries.
19652         Change formatting.  Wrap long lines.  Add noindent markup.
19654 2015-04-10  Daiki Ueno  <ueno@gnu.org>
19656         Add facility to collect stderr of async subprocess
19657         * src/w32.h (register_aux_fd): New function declaration.
19658         * src/w32.c (register_aux_fd): New function.
19659         * src/process.h (struct Lisp_Process): New member stderrproc.
19660         * src/process.c (PIPECONN_P): New macro.
19661         (PIPECONN1_P): New macro.
19662         (Fdelete_process, Fprocess_status, Fset_process_buffer)
19663         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
19664         (Fcontinue_process): Handle pipe process specially.
19665         (create_process): Respect p->stderrproc.
19666         (Fmake_pipe_process): New function.
19667         (Fmake_process): Add new keyword argument :stderr.
19668         (wait_reading_process_output): Specially handle a pipe process when
19669         it gets an EOF.
19670         (syms_of_process): Register Qpipe and Smake_pipe_process.
19671         * doc/lispref/processes.texi (Asynchronous Processes): Document
19672         `make-pipe-process' and `:stderr' keyword of `make-process'.
19673         * lisp/subr.el (start-process): Suggest to use `make-process' handle
19674         standard error separately.
19675         * test/automated/process-tests.el (process-test-stderr-buffer)
19676         (process-test-stderr-filter): New tests.
19677         * etc/NEWS: Mention new process type `pipe' and its usage with the
19678         `:stderr' keyword of `make-process'.
19680 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19682         Minor quoting etc. fixes to lispref manual
19683         * doc/lispref/tips.texi (Documentation Tips):
19684         Distinguish more clearly among grave accent, apostrophe,
19685         and single quote.
19686         * doc/lispref/README, doc/lispref/buffers.texi:
19687         * doc/lispref/commands.texi, doc/lispref/control.texi:
19688         * doc/lispref/customize.texi, doc/lispref/display.texi:
19689         * doc/lispref/elisp.texi, doc/lispref/files.texi:
19690         * doc/lispref/frames.texi, doc/lispref/hash.texi:
19691         * doc/lispref/help.texi, doc/lispref/internals.texi:
19692         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
19693         * doc/lispref/markers.texi, doc/lispref/modes.texi:
19694         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
19695         * doc/lispref/os.texi, doc/lispref/positions.texi:
19696         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
19697         * doc/lispref/text.texi, doc/lispref/tips.texi:
19698         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
19699         Use American-style double quoting in ordinary text,
19700         and quote 'like this' when single-quoting in ASCII text.
19701         Also, fix some minor spacing issues.
19703 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
19705         Handle symlinked test directory in tramp-tests.el
19706         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
19707         (tramp--test-check-files): Use `file-truename' for directories.
19709 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
19711         Fix 'recenter' when visual-line-mode is turned on
19712         * src/window.c (Frecenter): Use the same code for GUI and TTY
19713         frames alike; use vmotion only for "initial" frames.  This is
19714         because vmotion doesn't support visual-line-mode.  Rewrite the
19715         'iarg >= 0' case to use move_it_* functions instead of using
19716         vmotion, for the same reason.  Fix the clipping of the argument
19717         value to support scroll-margin in all cases and avoid unwarranted
19718         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
19719         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
19720         which see.
19722 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19724         * lisp/abbrev.el (define-abbrev-table): Refine last change.
19726         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
19727         use of c[ad]+r", so as to keep the "cl-" prefix on all
19728         cl-lib definitions.
19730         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
19731         Use inhibit-point-motion-hooks.
19733         * lisp/cedet/semantic: Remove some dead code.
19734         * lisp/cedet/semantic/util-modes.el
19735         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
19736         any more.
19737         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
19738         not supported any more.
19739         (semantic-safe): Use `declare'.
19740         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
19741         (semantic-tag-intangible-p): Remove unused functions.
19742         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
19743         Remove unused function.
19745         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
19746         (gnus-article-hide-text, gnus-article-unhide-text)
19747         (gnus-article-unhide-text-type): Remove special handling of
19748         `intangible' since that property is not used any more.
19749         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
19751 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
19753         Use the VC root in `log-edit-listfun'
19754         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
19755         `log-edit-listfun'.
19757 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
19759         Fix description of Unix time, mention new function.
19760         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
19761         Unix time.
19762         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
19763         (Basic Operations on Units): Mention `calc-convert-exact-units'.
19765 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
19767         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
19769 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
19771         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
19772         Don't add newline after the last entry.
19774 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
19776         css-mode.el: Add "not" pseudo-class
19777         (Bug#20267)
19778         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
19779         list of CSS pseudo-classes.
19781 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19783         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
19785 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
19787         Stop messing with the EMACS env var
19788         * doc/emacs/misc.texi (Interactive Shell): Remove description of
19789         EMACS env var.
19791 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19793         Adapt 'make change-history' to coding cookie
19794         * Makefile.in (change-history): Adjust to change of format of
19795         ChangeLog file, which now has a coding cookie before an indented
19796         copyright notice.
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         gitlog-to-changelog coding cookie and mv -i
19806         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
19807         for copyright notice prototype, so that we get a proper "coding:"
19808         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
19809         existing ChangeLog.  Problems reported by Eli Zaretskii in:
19810         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
19812         Merge from gnulib
19813         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
19814         2015-04-09 gitlog-to-changelog: port to MS-Windows
19816 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
19818         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
19819         (Bug#20212)
19821 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19823         Stop messing with the EMACS env var
19824         (Bug#20202)
19825         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
19826         * lisp/comint.el (comint-exec-1):
19827         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
19828         * lisp/progmodes/compile.el (compilation-start): Same and bring
19829         INSIDE_EMACS's format in line with other users.
19831         css-mode.el (css-smie-rules): Fix indentation after complex selectors
19832         (Bug#20282)
19833         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
19834         inner structure of selectors.
19836 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19838         python.el: Indent docstring lines to base-indent
19839         (Bug#19595)
19840         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
19841         an initial patch.
19842         * lisp/progmodes/python.el
19843         (python-indent-context): Add :inside-docstring context.
19844         (python-indent--calculate-indentation): Handle :inside-docstring.
19845         (python-indent-region): Re-indent docstrings.
19846         * test/automated/python-tests.el (python-indent-region-5)
19847         (python-indent-inside-string-2): Fix tests.
19849         python.el: Increase native completion robustness
19850         (Bug#19755)
19851         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
19852         this and providing useful ideas.
19853         * lisp/progmodes/python.el
19854         (python-shell-completion-native-output-timeout): Increase value.
19855         (python-shell-completion-native-try-output-timeout): New var.
19856         (python-shell-completion-native-try): Use it.
19857         (python-shell-completion-native-setup): New readline setup avoids
19858         polluting current context, ensures output when no-completions are
19859         available and includes output end marker.
19860         (python-shell-completion-native-get-completions): Trigger with one
19861         tab only.  Call accept-process-output until output end is found or
19862         python-shell-completion-native-output-timeout is exceeded.
19864 2015-04-08  Samer Masterson  <samer@samertm.com>
19866         * lisp/eshell: Make backslash a no-op in front of normal chars
19867         (Bug#8531)
19868         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
19869         (eshell-parse-backslash): Return escaped character after backslash
19870         if it is special.  Otherwise, if the backslash is not in a quoted
19871         string, ignore the backslash and return the character after; if
19872         the backslash is in a quoted string, return the backslash and the
19873         character after.
19874         * test/automated/eshell.el (eshell-test/escape-nonspecial)
19875         (eshell-test/escape-nonspecial-unicode)
19876         (eshell-test/escape-nonspecial-quoted)
19877         (eshell-test/escape-special-quoted): Add tests for new
19878         `eshell-parse-backslash' behavior.
19880 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
19882         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
19883         after the file name.
19884         (Bug#20276)
19886 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19888         Minor quoting etc. fixes to Emacs manual
19889         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
19890         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
19891         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
19892         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
19893         * doc/emacs/indent.texi, doc/emacs/macos.texi:
19894         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
19895         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
19896         * doc/emacs/search.texi, doc/emacs/trouble.texi:
19897         * doc/emacs/vc1-xtra.texi:
19898         Use American-style double quoting in ordinary text,
19899         and quote 'like this' when single-quoting in ASCII text.
19900         Also, fix some minor spacing issues.
19902         Minor quoting etc. fixes to elisp intro
19903         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
19904         American-style double quoting in ordinary text.  In ASCII text,
19905         consistently quote 'like this' instead of `like this', unless
19906         Emacs requires the latter.
19908 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
19910         * CONTRIBUTE: Mention log-edit-insert-changelog.
19912         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
19914 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19916         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
19918 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19920         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
19921         Fix inheritance of initargs.  (Bug#20270)
19923 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
19925         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
19926         while dowloading information.
19928         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
19929         (package--ensure-init-file): Check file contents before visiting.
19930         (package-initialize): Call it.
19931         (package-install-from-buffer, package-install): Don't call it.
19933 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
19935         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
19936         (Bug#17517)
19938 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
19940         * lisp/net/tramp-cache.el (tramp-flush-file-property):
19941         Fix nasty scoping bug.
19943 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
19945         Add notice to visual commands section
19946         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
19947         such as git call less with its -F option which omits pagination if
19948         the contents is less than one page long.  This interferes with
19949         eshell's visual (sub-)commands.
19951 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
19953         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
19954         environment variable expansion in file names.  (Bug#19839)
19956 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19958         Prefer double-quote to accent-grave in man pages
19960 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19962         (Bug#20257)
19963         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
19965 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
19967         Update etc/PROBLEMS.
19968         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
19969         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
19970         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
19971         respectively); other minor updates and tweaks.  (Bug#20011)
19973 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19975         Add doc strings for some Isearch state vars
19976         * lisp/misearch.el (multi-isearch-buffer-list)
19977         (multi-isearch-file-list): Add doc strings.
19978         (Bug#20232)
19980 2015-04-07  Alan Mackenzie  <acm@muc.de>
19982         Always mark "<" and ">" in #include directives with text properties.
19983         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
19984         "anchored matcher" with an invocation of
19985         c-make-font-lock-search-function to allow fontification when there's
19986         no trailing space on an "#include <..>" line.
19988 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19990         Generate a ChangeLog file from commit logs
19991         * .gitignore: Add 'ChangeLog'.
19992         * build-aux/gitlog-to-changelog: New file, from Gnulib.
19993         * build-aux/gitlog-to-emacslog: New file.
19994         * CONTRIBUTE: Document the revised workflow.
19995         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
19996         instead of just special cases.
19997         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
19998         (ChangeLog, unchanged-history-files, change-history)
19999         (change-history-commit): New rules.
20000         * admin/admin.el (make-manuals-dist--1):
20001         Don't worry about doc/ChangeLog.
20002         * admin/authors.el: Add a FIXME.
20003         * admin/make-tarball.txt:
20004         * lisp/calendar/icalendar.el:
20005         * lisp/gnus/deuglify.el:
20006         * lisp/obsolete/gulp.el:
20007         * lwlib/README:
20008         Adjust to renamed ChangeLog history files.
20009         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
20010         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
20011         Remove obsolete discussion of merging ChangeLog files.
20012         New section "Maintaining ChangeLog history".
20013         * build-aux/git-hooks/pre-commit:
20014         Reject attempts to commit files named 'ChangeLog'.
20015         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20016         * make-dist: Make and distribute top-level ChangeLog if there's a
20017         .git directory.  Distribute the new ChangeLog history files
20018         instead of scattered ChangeLog files.  Distribute the new files
20019         gitlog-to-changelog and gitlog-to-emacslog.
20020         (Bug#19113)
20022         Rename ChangeLogs for gitlog-to-changelog
20023         This patch was implemented via the following shell commands:
20024         find * -name ChangeLog |
20025         sed 's,.*,git mv & &.1,
20026         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
20027         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
20028         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
20029         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
20030         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
20031         sh
20032         git commit -am"[this commit message]"
20034 This file records repository revisions from
20035 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
20036 commit ffefb6e899fbcdcbd79cb34292d57b7bc3043fcc (inclusive).
20037 See ChangeLog.1 for earlier changes.
20039 ;; Local Variables:
20040 ;; coding: utf-8
20041 ;; End:
20043   Copyright (C) 2015 Free Software Foundation, Inc.
20045   This file is part of GNU Emacs.
20047   GNU Emacs is free software: you can redistribute it and/or modify
20048   it under the terms of the GNU General Public License as published by
20049   the Free Software Foundation, either version 3 of the License, or
20050   (at your option) any later version.
20052   GNU Emacs is distributed in the hope that it will be useful,
20053   but WITHOUT ANY WARRANTY; without even the implied warranty of
20054   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20055   GNU General Public License for more details.
20057   You should have received a copy of the GNU General Public License
20058   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.