; Fix last aligned_alloc declaration change
[emacs.git] / ChangeLog.2
blob12f98342eef9fdd6f588144a539f471b072f3228
1 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3         Shrink static heap a bit
5         * src/sheap.h: Include lisp.h, for Lisp_Object.
6         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
7         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
8         conservative than the old value.
9         (Bug#22086)
11 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
13         Fix extern symbols defined and not used
15         * src/alloc.c: Always include <signal.h>.
16         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
17         Do not define; unused.
18         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
19         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
20         to avoid collision with glibc.  Now static.  All uses changed.
21         * src/lastfile.c (my_edata): Define only if
22         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
23         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
24         (Bug#22086)
26 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
28         Build lib/e-*.o only on platforms that need it
30         * configure.ac (hybrid malloc): Simplify configuration.
31         (SHEAP_OBJ): Remove; no longer needed.
32         (HYBRID_MALLOC): New var. Subst it.
33         (HYBRID_MALLOC_LIB): New Automake conditional.
34         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
35         HYBRID_MALLOC_LIB.
36         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
37         (MOSTLYCLEANFILES): Add libegnu.a.
38         * src/Makefile.in (SHEAP_OBJ): Remove.
39         (HYBRID_MALLOC): New macro.
40         (base_obj): Use it to conditionally add sheap.o.
41         (LIBEGNU_ARCHIVE): New macro.
42         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
43         All uses of the latter replaced by the former.
44         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
45         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
46         * src/gmalloc.c: Update comment.
47         * src/lisp.h (aligned_alloc)
48         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
49         New decl.
50         (Bug#22086)
52 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
54         Include <malloc.h> when advisable
56         This should help insulate us better from future glibc changes.
57         It is good hygiene to include .h files for APIs that Emacs uses.
58         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
59         * configure.ac: Check for malloc.h.
60         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
61         not on DOUG_LEA_MALLOC.
62         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
63         Remove decl (now in lisp.h).
64         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
65         [emacs]: Include lisp.h.
66         [HAVE_MALLOC_H]: Include <malloc.h>.
67         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
68         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
69         (__default_morecore):
70         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
71         (calloc): Make it clear that the macro should not be used.
72         Remove unused decl.
73         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
74         (__morecore, __default_morecore, __after_morecore_hook)
75         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
76         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
77         Remove later decls.
78         (gmalloc_hook, gfree_hook, grealloc_hook):
79         Rename from __malloc_hook, __free_hook, __realloc_hook to
80         avoid type collision with glibc <malloc.h>.  All uses changed.
81         (gmalloc_hook):
82         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
83         Now static.
84         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
85         (__malloc_initialize_hook, __after_morecore_hook):
86         Declare with types compatible with glibc.
87         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
88         Remove.  All uses removed.
89         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
90         * src/ralloc.c, src/vm-limit.c:
91         Simplify includes and include <malloc.h> if available.
93 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
95         * src/alloc.c: Include "sheap.h".
97         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
98         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
99         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
100         Declare unconditionally.
101         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
102         (unexec): Don’t set or clear bss_sbrk_did_unexec;
103         the caller now does this.
104         (Bug#22086)
106 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
108         Pacify --enable-gcc-warnings when HYBRID_MALLOC
110         * src/buffer.c (init_buffer):
111         * src/emacs.c (main):
112         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
113         Use emacs_get_current_dir_name, not get_current_dir_name.
114         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
115         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
116         * src/emacs.c: Include "sheap.h".
117         (report_sheap_usage): Remove decl.
118         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
119         Don't assume ptrdiff_t can be printed as int.
120         * src/gmalloc.c [HYBRID_MALLOC]:
121         Include "sheap.h" rather than declaring its contents by hand.
122         (get_current_dir_name, gget_current_dir_name)
123         (hybrid_get_current_dir_name): Remove.
124         (emacs_abort): Remove duplicate decl.
125         (aligned_alloc): Undef, like malloc etc.
126         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
127         Make it a bit more efficient.
128         (malloc_find_object_address): Remove unused decl.
129         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
130         (mstats, memory_warnings): Declare only if GC_MCHECK.
131         * src/lisp.h (emacs_get_current_dir_name):
132         New decl, replacing get_current_dir_name.
133         * src/sheap.c: Include sheap.h first.
134         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
135         (debug_sheap): Now static.
136         (bss_sbrk_buffer_end): Remove; no longer used.
137         (bss_sbrk_ptr): Now static and private.
138         (bss_sbrk_did_unexec): Now bool.
139         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
140         (bss_sbrk): Don't treat request_size 0 as special, since the code
141         works without this being a special case.
142         Avoid overflow if request size exceeds INT_MAX.
143         (report_sheap_usage): Remove; now done in emacs.c.
144         * src/sheap.h: New file.
145         * src/sysdep.c (get_current_dir_name): Remove macro.
146         Include "sheap.h".
147         (emacs_get_current_dir_name): Rename function from
148         get_current_dir_name.  Handle HYBRID_MALLOC here;
149         this is simpler.
150         (Bug#22086)
152 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
154         Report static heap usage on non-Cygwin, too
156         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
157         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
158         on platforms other than Cygwin (Bug#22086).
160 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
162         Pacify GCC on extern decls
164         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
165         to pacify recent GCC (Bug#22086).
167 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
169         Add musl patch to support HYBRID_MALLOC on elf systems
171         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
172         (__default_morecore): Here, in particular.
173         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
174         New variable SHEAP_OBJ.
175         * src/Makefile.in: Use it.
176         (Bug#22086)
178 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
180         unexelf.c hook to support HYBRID_MALLOC on ELF
182         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
183         Define bss_sbrk_did_unexec (Bug#22086).
185 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
187         Link temacs with gnulib compiled with -Demacs
189         This is done to support HYBRID_MALLOC, since some static variables
190         (e.g., last_environ in putenv.c) hold pointers to memory malloced
191         before dumping (Bug#22086).
192         * lib/Makefile.am: Add incantation to install libegnu.a.
193         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
194         (temacs$(EXEEXT)): Use it.
196 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
198         Internal linkage for gmalloc etc. if HYBRID_MALLOC
200         This avoids clashes with symbols if the after-dump malloc is
201         derived from Doug Lea's implementation (Bug#22086).
203         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
204         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
205         declarations below to `static' ones.
206         (aligned_alloc): Declare for !MSDOS as well.
207         (heapsize, _fraghead): Move resp. copy declaration downwards.
208         For HYBRID_MALLOC, conditionalize out the other definitions,
209         since the previous `static' declarations double as tentative
210         definitions, anyway.
211         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
212         (__realloc_hook, __memalign_hook): Conditionalize out.
213         (cfree, memalign, valloc): Ditto.
215 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
217         Merge from origin/emacs-25
219         3f481ad Rename xref-query-replace to xref-query-replace-in-results
220         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
221         2111e0e Comment out next-error-function integration in xref
222         4e11ad3 Correct a use of "which" in intro.texi
223         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
224         76045f7 Don't operate on menu bar of nonexistent frame
225         c32f3bc Unbreak the GNUstep build.
227 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
229         Re-enable checks in member, memql, delete to complain about non-lists
231         * fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
233 2016-01-28  Glenn Morris  <rgm@gnu.org>
235         Remove some useless-use-of eval.
237         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
238         * lisp/gnus/nnrss.el (xml): Simply require it.
239         (xml-rpc-method-call): Use declare-function.
241 2016-01-28  Glenn Morris  <rgm@gnu.org>
243         Don't use eval to quieten prolog.el compilation.
245         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
246         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
248 2016-01-28  Glenn Morris  <rgm@gnu.org>
250         Mark some risky prolog variables.
252         * lisp/progmodes/prolog.el (prolog-system-version)
253         (prolog-keywords, prolog-types, prolog-mode-specificators)
254         (prolog-determinism-specificators, prolog-directives)
255         (prolog-program-name, prolog-program-switches)
256         (prolog-consult-string, prolog-compile-string)
257         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
258         Mark anything processed by prolog-find-value-by-system as risky.
260 2016-01-28  Glenn Morris  <rgm@gnu.org>
262         * lisp/custom.el (defcustom): Doc fix.
264         * doc/lispref/customize.texi (Variable Definitions):
265         Defcustom should always have a type.
267 2016-01-28  Glenn Morris  <rgm@gnu.org>
269         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
270         Warn if defcustom has no type.  (Bug#16276)
272         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
273         Fix :type.
275         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
277 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
279         Fix Bug#22452
281         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
282         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
283         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
284         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
285         Mark it as connected.
287         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
288         connection property "connected" is set.  (Bug#22452)
290 2016-01-27  Glenn Morris  <rgm@gnu.org>
292         * test/lisp/vc/vc-hg.el: Move from test/automated/.
294         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
296         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
297         if not compiled with xwidgets.
299 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
301         C-u C-x = example doc fix
303         * doc/emacs/mule.texi (International Chars):
304         Adjust example to match current behavior of C-u C-x =.
306 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
308         malloc.h hygiene
310         This attempts to future-proof Emacs a bit against possible glibc
311         changes, by having Emacs use <malloc.h> declarations rather than
312         coding them up by hand.  Problem noted by Florian Weimer in:
313         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
314         Implement this mainly by moving malloc.h-related functions from
315         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
316         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
317         New function.
318         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
319         (alloc_unexec_pre, alloc_unexec_post): New functions.
320         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
321         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
322         (__malloc_initialize_hook): Use it.
323         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
324         Move here from ...
325         * src/emacs.c: ... here.
326         (malloc_get_state, malloc_set_state): Remove extern decls.
327         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
328         All uses changed to similarly-named new function.
329         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
330         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
331         New decls.
333 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
335         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
337 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
339         Remove never-set var handle_user_signal_hook
341         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
342         Remove never-set var.  All uses removed.
344 2016-01-26  Anders Lindgren  <andlind@gmail.com>
346         Fixed NextStep fullscreen issue (bug#22468)
348         When in fullscreen mode, `[screen visibleFrame]' sometimes
349         includes, sometimes excludes the menu bar. This could cause
350         a frame to be placed too low when in fullscreen mode.
352         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
353         (constrain_frame_rect): New parameter, isFullscreen, when true don't
354         query the height of the menu bar.
355         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
356         `constrain_frame_rect'.
357         ([EmacsView initFrameFromEmacs:]): Trace.
358         ([EmacsView isFullscreen]): Trace.
359         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
360         state to `constrain_frame_rect'.
362 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
364         * lisp/files.el: Use a fixed file name for the second dir-locals file
366         (dir-locals-file): Revert to its original fixed value.
367         (dir-locals-file-2): New const.
368         (dir-locals--all-files): Don't use `file-name-all-completions'.
369         Instead, just check for the 2 dir-locals files and return a list
370         of the ones that exit (if any).
372         * etc/NEWS: Document the change.
374         * doc/emacs/custom.texi (Directory Variables): Document the change.
376         * doc/lispref/variables.texi (Directory Local Variables): Update
377         accordingly.
379 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
381         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
383         Change a variable name to be more meaningful, and reorder some of
384         the code with no change in behaviour.
386 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
388         * lisp/files.el (dir-locals-find-file): Refactor return values
390         Returning a cache remains unchanged, but the case of returning a
391         file (or pattern) is now changed to return the contaning
392         directory.
394         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
395         and make obsolete.
396         (dir-locals-read-from-dir): Simplify accordingly.
397         (hack-dir-local-variables): Simplify accordingly and rename a
398         variable.
400 2016-01-25  Glenn Morris  <rgm@gnu.org>
402         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
403         Declare.
405         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
407         * configure.ac (--with-cairo): Say it's experimental.
409         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
410         Rename using American spelling.  Update all uses.
412 2016-01-25  Glenn Morris  <rgm@gnu.org>
414         Yet more xwidget doc fixes.
416         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
417         (xwidget-insert, xwidget-webkit-browse-url)
418         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
419         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
420         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
421         (xwidget-webkit-show-id-element)
422         (xwidget-webkit-show-id-or-named-element)
423         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
424         (xwidget-webkit-execute-script-rv)
425         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
426         (xwidget-put):  Doc fixes.
427         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
428         (xwidget-webkit-show-id-element)
429         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
431 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
433         * lisp/gnus/gnus-art.el (gnus-blocked-images):
434         Add explicit nil choice and tags.
436 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
438         Spelling fixes
440 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
442         (rng-c-fix-escaped-newlines): Use subst-char-in-string
444         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
445         Use subst-char-in-string.
447 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
449         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
451         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
452         (sgml-calculate-indent): Use it.
454 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
456         * lisp/org: Fix some compiler warnings
458         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
459         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
460         (*this*): Declare as dyn-bound.
461         (org-babel-expand-src-block, org-babel-load-in-session)
462         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
463         Mark unused args.
464         (org-babel-combine-header-arg-lists): Remove unused var `args'.
465         (org-babel-find-named-block): Remove unused var `msg'.
467         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
468         Declare as dyn-bound.
469         (org-edit-src-code): Remove unused var `lfmt'.
470         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
472 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
474         * lisp/font-lock.el: Use #' to quote function symbols
476 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
478         (font-lock-ensure-function): Fix bug#22399
480         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
481         font-lock-mode is not enabled (bug#22399).
483 2016-01-25  Alan Mackenzie  <acm@muc.de>
485         Expunge "allow" + infinitive from source and doc, part 2.
487         Do the same for "permit", "enable", "prevent", and (where appropriate)
488         "require".
490         doc/misc/reftex.texi:
491         doc/misc/url.texi:
492         lib/get-permissions.c:
493         lib/strftime.c:
494         lisp/org/org-element.el:
495         lisp/org/org-mobile.el:
496         lisp/textmodes/reftex-vars.el:
497         src/bidi.c:
498         src/emacs.c:
499         src/xdisp.c:
500         test/etags/c-src/emacs/src/lisp.h:
502         Expunge the likes of "This allows to do something" from the above files.
504 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
506         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
508         `special-mode' is already read-only.
510 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
512         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
514 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
516         Port "$@" to OpenIndiana ksh93
518         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
519         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
520         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
521         bug in long-dead shells, so remove the workaround.
522         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
523         Use plain "$@" rather than ${1+"$@"}.
525 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
527         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
529 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
531         Improve wording for SMB support
533         * doc/misc/tramp.texi (External methods): Improve and modernize
534         wording for discussion of smbclient.  There is no longer any
535         need to mention the laundry list of old MS Windows implementations
536         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
538 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
540         Merge from gnulib
542         This incorporates:
543         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
544         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
545         2016-01-15 detect utimes() correctly on OS/2 kLIBC
546         2016-01-15 openat_proc_name: port to OS/2 kLIBC
547         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
548         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
549         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
550         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
551         2016-01-14 sig2str: list all signals on FreeBSD >= 7
552         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
553         2016-01-12 mktime: rename macro to avoid glibc clash
554         2016-01-12 Port "$@" to OpenIndiana ksh93
555         2016-01-12 Port Universal Time settings to strict POSIX
556         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
557         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
558         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
559         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
560         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
561         * m4/fcntl.m4, m4/utimes.m4:
562         Copy from gnulib.
563         * m4/gnulib-comp.m4: Regenerate.
565 2016-01-24  Alan Mackenzie  <acm@muc.de>
567         Expunge "allow" + infinitive without direct object from source and doc.
569         Do the same for "permit", "enable", and "prevent".
571         * doc/emacs/mule.texi:
572         * doc/lispref/control.texi:
573         * doc/lispref/display.texi:
574         * doc/lispref/frames.texi:
575         * doc/lispref/functions.texi:
576         * doc/lispref/nonascii.texi:
577         * doc/lispref/streams.texi:
578         * doc/lispref/windows.texi:
579         * doc/misc/dbus.texi:
580         * doc/misc/eww.texi:
581         * doc/misc/flymake.texi:
582         * doc/misc/octave-mode.texi:
583         * doc/misc/org.texi:
584         * doc/misc/reftex.texi:
585         * doc/misc/tramp.texi:
586         * doc/misc/wisent.texi:
587         * etc/NEWS:
588         * lisp/autorevert.el:
589         * lisp/cedet/mode-local.el:
590         * lisp/cedet/semantic/senator.el:
591         * lisp/cedet/semantic/wisent.el:
592         * lisp/dos-fns.el:
593         * lisp/frameset.el:
594         * lisp/gnus/gnus-agent.el:
595         * lisp/gnus/mm-util.el:
596         * lisp/international/characters.el:
597         * lisp/ldefs-boot.el:
598         * lisp/mail/mailclient.el:
599         * lisp/man.el:
600         * lisp/mh-e/mh-search.el:
601         * lisp/net/tramp-cmds.el:
602         * lisp/net/tramp-gvfs.el:
603         * lisp/org/org-crypt.el:
604         * lisp/org/org-element.el:
605         * lisp/org/org-feed.el:
606         * lisp/org/org.el:
607         * lisp/org/ox-ascii.el:
608         * lisp/org/ox-icalendar.el:
609         * lisp/org/ox-publish.el:
610         * lisp/org/ox.el:
611         * lisp/play/gamegrid.el:
612         * lisp/play/gomoku.el:
613         * lisp/progmodes/antlr-mode.el:
614         * lisp/progmodes/python.el:
615         * lisp/progmodes/vhdl-mode.el:
616         * lisp/strokes.el:
617         * lisp/textmodes/ispell.el:
618         * lisp/tree-widget.el:
619         * lisp/vc/pcvs.el:
620         * lisp/window.el:
621         * src/lisp.h:
622         * src/w32.c:
623         * src/w32heap.c:
624         * src/w32term.c:
625         * src/window.c:
626         * src/xfaces.c:
628         Replace solecisms like "This allow to do something" with a correct
629         alternative, such as "This allow you to do something", "This allows
630         something to be done" or "This allows the doing of something".
632 2016-01-24  l3thal  <kwhite@gnu.org>
634         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
636 2016-01-24  Kelvin White  <kwhite@gnu.org>
638         Add NEWS entry for asynchronous reconnect in ERC
640 2016-01-24  l3thal  <kwhite@gnu.org>
642         Add NEWS entry for asynchronous reconnect in ERC
644 2016-01-24  Kelvin White  <kwhite@gnu.org>
646         browse-url.el: Add 'google-chrome' to supported browsers.
648 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
650         Port Tramp manual to latest Texinfo
652         Otherwise, 'make pdf' did not work (Bug#22416).
653         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
654         (trampfn): Specialize to the case where METHOD is nonempty.
655         The 2nd argument is now user@host, not 2nd user and 3rd host args.
656         All uses changed.
657         (trampf): New macro.
659 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
661         * eww.el (eww-render): Protect against empty content-types.
663 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
665         authors.el updates
667         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
668           Additions.
670 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
672         Rename xref-query-replace to xref-query-replace-in-results
674         * lisp/progmodes/xref.el(xref-query-replace):
675         Rename to xref-query-replace-in-results.
676         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
678         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
679         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
680         * doc/emacs/dired.texi (Operating on Files):
681         * doc/emacs/maintaining.texi (Xref Commands)
682         (Identifier Search, Identifier Search): Update accordingly.
684 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
686         Update cl-defgeneric and cl-defmethod docstrings
688         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
689         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
690         (cl-defmethod): Mention that multiple dispatch arguments are
691         allowed.  Document supported types.  (Bug#22336)
693 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
695         Comment out next-error-function integration in xref
697         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
698         Comment out next-error-function integration
699         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
701 2016-01-23  John Wiegley  <johnw@newartisans.com>
703         Correct a use of "which" in intro.texi
705 2016-01-23  Alan Mackenzie  <acm@muc.de>
707         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
709         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
710         context of case labels (including "default") more rigorously.
711         (c-guess-basic-syntax CASE 15): Consequential amendment.
713         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
715 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
717         Don't operate on menu bar of nonexistent frame
719         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
720         is valid before redisplaying its menu. Fixes bug#22438.
722 2016-01-23  Anders Lindgren  <andlind@gmail.com>
724         Unbreak the GNUstep build.
726         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
727         predefined "caution" image. Add trace.
728         (x_set_window_size): Remove unused variables `cols' and `rows'.
729         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
730         GNUstep is used.
731         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
732         ([EmacsWindow zoom:]): Remove unused variable `f'.
734 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
735             John Wiegley  <johnw@gnu.org>
736             Michael Heerdegen  <michael_heerdegen@web.de>
738         Improve documentation of 'pcase'
740         * doc/lispref/control.texi (Pattern matching case statement):
741         Reorganize, expand, and improve wording.
743         * etc/NEWS: Mention that 'pcase' changes are documented.
745 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
747         * etc/NEWS: Say that Cairo is experimental.
749 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
751         Report error for PNG under Cairo
753         * src/image.c (lookup_rgb_color): Signal a file error instead
754         of dumping core when mishandling an image.
756 2016-01-23  Arash Esbati  <esbati@gmx.de>
758         Delete a spurious backquote (tiny change)
760         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
761         spurious backquote which raises an error with emacs 25.
763 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
765         Pacify --enable-gcc-warnings --with-cairo
767         Problem reported by Alexander Kuleshov in:
768         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
769         * src/gtkutil.c (xg_get_page_setup):
770         Use switch rather than if-then-else.
771         * src/image.c (COLOR_TABLE_SUPPORT):
772         Define directly rather than via #define and optional later #undef.
773         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
774         Crash when the pixel is undefined, as there is a genuine bug
775         here (Bug#22442).
776         * src/image.c (tiff_load, gif_load, svg_load_image)
777         (x_kill_gs_process) [USE_CAIRO]:
778         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
779         Omit unused locals, or move them to where they’re needed.
780         (x_clear_area1): Now ATTRIBUTE_UNUSED.
782 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
784         Update documentation for Dired search and replace
786         * doc/emacs/dired.texi (Operating on Files): Update descriptions
787         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
788         'dired-do-find-regexp-and-replace'.
790         * etc/NEWS: Mention xref-related changes in Dired.
792 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
794         Port recent xdisp.c fix to picky C compilers
796         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
797         putting #if inside the arguments to a standard function, which
798         the C standard says has undefined behavior.
800 2016-01-22  Alan Mackenzie  <acm@muc.de>
802         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
804         * cc-engine.el (c-forward-declarator): New function.
805         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
806         contained in the preceding arg list.
808         * cc-fonts.el (c-font-lock-declarators): Use the new function
809         `c-forward-declarator' in place of inline code.
811 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
813         Fix the build with --enable-checking=glyphs
815         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
816         build without xwidget support.
818 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
820         Document cl-generic.el
822         * doc/lispref/functions.texi (Generic Functions): New section.
823         (Bug#22336)
824         (Functions): Update the chapter menu.
825         * doc/lispref/elisp.texi: Update the master menu.
827 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
829         xwidgets style cleanup
831         Adjust the newly-added Xwidgets code so that it uses a more-typical
832         Emacs style.  This should not affect behavior, except that in
833         a few places it adds runtime checks that Lisp arguments are of
834         the proper type, and in one place it uses more-precise arithmetic.
835         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
836         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
837         Include xwidget.h unconditionally.
838         * src/buffer.c (Fkill_buffer):
839         * src/dispnew.c (update_window):
840         * src/emacs.c (main):
841         * src/print.c (print_object):
842         * src/window.c (Fdelete_window_internal):
843         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
844         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
845         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
846         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
847         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
848         Call xwidget functions and macros without worrying about
849         HAVE_XWIDGETS when the code is a no-op on non-xwidget
850         platforms.
851         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
852         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
853         (struct it.xwidget):
854         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
855         Always define.
856         * src/emacsgtkfixed.h: Omit unnecessary comment.
857         * src/keyboard.c: Fix spacing.
858         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
859         Define to be a no-op if not HAVE_XWIDGETS.
860         * src/xwidget.c: Include xwidget.h first (after config.h)
861         to make sure that it can stand by itself.
862         (Fmake_xwidget, Fxwidget_webkit_execute_script):
863         Fix typo in doc string.
864         (Fmake_xwidget): Check type of args.
865         (Fmake_xwidget, offscreen_damage_event)
866         (webkit_document_load_finished_cb, webkit_download_cb)
867         (webkit_new_window_policy_decision_requested_cb)
868         (webkit_navigation_policy_decision_requested_cb)
869         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
870         (xwidget_osr_event_set_embedder, xwidget_init_view):
871         Omit unnecessary casts.
872         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
873         (xwidget_show_view, xwidget_hide_view)
874         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
875         (xwidget_touched):
876         * src/xwidget.h (struct xwidget.kill_without_query)
877         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
878         Use bool for boolean.
879         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
880         Simplify by using list functions.
881         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
882         (Fxwidget_resize): Check type of integer args
883         before doing any work.  Check that they are nonnegative.
884         (Fxwidget_set_adjustment): Check type of integer arg.
885         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
886         Simplify.  Use double, not float.
887         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
888         (valid_xwidget_spec_p): Simplify.
889         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
890         * src/xwidget.h: Include lisp.h first, so that includers do
891         not need to worry about doing that before including this file.
892         Make this .h file safe to include even on non-HAVE_XWIDGETS
893         configurations, to simplify the includers.
894         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
895         (xwidget_end_redisplay, lookup_xwidget)
896         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
897         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
898         (struct glyph_matrix, struct glyph_string, struct xwidget)
899         (struct xwidget_view, struct window):
900         New forward or incomplete decls, so that includers need not
901         assume the corresponding .h files are already included, or that
902         HAVE_XWIDGETS is defined.
903         (struct xwidget_type, xwidget_from_id): Remove; unused.
905 2016-01-22  John Wiegley  <johnw@newartisans.com>
907         Further corrections to the pcase docstring
909 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
911         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
913 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
915         In xref-collect-references, force backends to respect the 'dir' arg
917         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
918         to use `default-directory'.
920 2016-01-21  John Wiegley  <johnw@newartisans.com>
922         Minor correction to pcase docstring
924 2016-01-21  John Wiegley  <johnw@newartisans.com>
926         Write a new docstring for the pcase macro
928         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
930 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
932         Avoid byte-compiler warning in todo-mode (bug#21953)
934         * todo-mode.el (todo-convert-legacy-files): Add limit argument
935         to looking-back to comply with advertised-calling-convention.
937 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
939         Fix desktop support in todo-mode and doc-view (bug#22377)
941         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
942         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
944         * lisp/calendar/todo-mode.el (todo-modes-set-2):
945         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
947 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
949         No need to configure gobject-introspection
951         It wasn’t needed for the recently-installed xwidget_mvp code; see:
952         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
953         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
954         (HAVE_GIR):
955         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
956         Remove.  All uses removed.
957         * configure.ac (emacs_config_features): Don’t worry about GIR.
959 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
961         Don’t export C symbols not used elsewhere
963         These were recently added, mostly as part of xwidget code.
964         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
965         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
966         Now static functions here, not macros in emacsgtkfixed.h.
967         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
968         Remove.  All uses replaced by definiens.
969         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
970         Remove; these are now static functions in emacsgtkfixed.c.
971         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
972         Remove; unused.
973         (emacs_fixed_get_type): Remove decl; no longer extern.
974         * src/xwidget.c (offscreen_damage_event)
975         (webkit_mime_type_policy_typedecision_requested_cb)
976         (webkit_new_window_policy_decision_requested_cb)
977         (webkit_navigation_policy_decision_requested_cb)
978         (xwidget_spec_value, xwidget_view_lookup)
979         (xwidget_start_redisplay, xwidget_touch):
980         Now static.
981         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
982         Remove decls.
984 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
986         Support squiggly heredocs in ruby-mode
988         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
989         Support squiggly heredocs added in Ruby 2.3.
991         * test/indent/ruby.rb: Add squiggly example.
993 2016-01-20  Glenn Morris  <rgm@gnu.org>
995         * configure.ac (emacs_config_features): Remove WEBKIT.
997 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
999         Port to platforms with gtk3 but not webkitgtk3
1001         I ran into this problem on my Fedora 23 installation;
1002         Emacs configured but did not build when --with-xwidgets was specified.
1003         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
1004         (DOES_XWIDGETS_USE_GIR): New var.
1005         If --with-xwidgets is specified, report an error if not
1006         doable, to be consistent with the other --with options.
1007         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
1008         not work at all without webkitgtk3.  Simplify use of
1009         EMACS_CHECK_MODULES.  Output message about gobject
1010         introspection only if xwidgets are used.
1011         * etc/NEWS: Users need webkitgtk3, not merely webkit.
1012         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
1013         since this file is no longer compiled if webkitgtk3 is not available.
1015 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
1017         Fix doc string of 'isearch-search-fun-function'
1019         * lisp/isearch.el (isearch-search-fun-function)
1020         (isearch-search-string): Doc fixes.  (Bug#22411)
1022 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
1024         * lisp/xwidget.el: Nitpicks
1026         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
1027         Use with-current-buffer rather than save-excursion + set-buffer.
1029 2016-01-19  Glenn Morris  <rgm@gnu.org>
1031         Don't hard-code 1 as point-min.
1033         * lisp/image-mode.el (image-display-size):
1034         * lisp/xwidget.el (xwidget-webkit-last-session)
1035         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
1037 2016-01-19  Glenn Morris  <rgm@gnu.org>
1039         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
1041 2016-01-19  Glenn Morris  <rgm@gnu.org>
1043         Trivial doc copyedits.
1045         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
1046         (Fxwidget_webkit_get_title, Fxwidget_resize)
1047         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
1048         (Fxwidget_info, Fxwidget_view_lookup)
1049         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
1051 2016-01-19  Glenn Morris  <rgm@gnu.org>
1053         Avoid advising image-display-size for xwidgets.
1055         * lisp/xwidget.el (xwidget-image-display-size): Remove.
1056         (image-display-size): Remove advice.
1057         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
1058         (image-display-size): Incorporate xwidget code directly.
1060 2016-01-19  Glenn Morris  <rgm@gnu.org>
1062         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
1064         * lisp/xwidget.el (window-configuration-change-hook)
1065         (kill-buffer-query-functions): Only modify these hooks if
1066         compiled with xwidget support.
1068 2016-01-19  Glenn Morris  <rgm@gnu.org>
1070         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
1072         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
1074         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
1076         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
1078 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
1080         * lisp/gnus/nnir.el (nnir-request-update-mark):
1081         Default to the original mark.
1082         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
1083         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
1085 2016-01-19  Glenn Morris  <rgm@gnu.org>
1087         * lisp/xwidget.el (report-xwidget-bug): Remove.
1089         (top-level): No longer require reporter.
1091 2016-01-19  Joakim Verona  <joakim@verona.se>
1092             Grégoire Jadi  <daimrod@gmail.com>
1094         Support for the new Xwidget feature.
1096         * configure.ac:
1097         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
1098         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
1099         * xdisp.c:
1100         (handle_display_spec, handle_single_display_spec, push_it)
1101         (pop_it, set_iterator_to_next, dump_glyph)
1102         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
1103         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
1104         (produce_xwidget_glyph, x_produce_glyphs)
1105         (get_window_cursor_type):
1106         * window.c (Fdelete_window_internal):
1107         * termhooks.h (e):
1108         * print.c (print_object):
1109         * lisp.h (ptrdiff_t):
1110         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
1111         (syms_of_keyboard):
1112         * emacs.c (main):
1113         * dispnew.c (update_window, scrolling_window):
1114         * dispextern.h (g, i):
1115         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
1116         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
1117         * keyboard.c (kbd_buffer_get_event):
1118         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
1119         (emacs_fixed_class_init): Add case for an xwidget view.
1121         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
1124         Various improvements to the Xwidget feature.
1125         * xwidgets.c:
1126         * emacsgtkfixed.c:
1127         * xwidget.el:
1129 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
1131         Improve documentation of 'alist-get'
1133         * doc/lispref/variables.texi (Setting Generalized Variables): Add
1134         'alist-get' to the list of functions that can appear in PLACE
1135         argument of 'setf'.
1137 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
1139         Minor copyedits of doc/emacs/maintaining.texi
1141         * doc/emacs/maintaining.texi (List Identifiers): More accurate
1142         description of "C-M-i" wrt tags tables.
1143         (Tags Tables): Move the definition of "tag" to a footnote.
1145 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
1147         Unbreak the Cygwin-w32 build
1149         * src/w32fns.c (globals_of_w32fns): Move the initialization of
1150         resetstkoflw into a part that isn't compiled on Cygwin.
1151         (Bug#22403)
1153 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
1155         * shr.el (shr-table-body): Allow tables to have text children.
1157 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
1159         Cope with multiple overlapping faces.
1161         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
1162           left.
1163           (hfy-face-resolve-face): Handle font specification as well as font
1164           name. Documentation update. (Bug#21990)
1166 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
1168         Fix spurious escapes in describe-input-method
1170         Problem reported by Vincent Belaïche (Bug#22309).
1171         * lisp/international/mule-cmds.el (describe-language-environment):
1172         * lisp/international/quail.el (quail-help):
1173         Apply substitute-command-keys to doc strings before displaying them.
1175 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1177         Bump version to 25.0.90
1179         * README:
1180         * configure.ac:
1181         * msdos/sed2v2.inp: Bump version to 25.0.90.
1183 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1185         * etc/AUTHORS: Update the AUTHORS file
1187 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1189         authors.el updates
1191         * admin/authors.el (authors-renamed-files-alist): Additions.
1193 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1195         Make it possible to run make change-history on emacs-25
1197         * Makefile.in: Check if the current branch is emacs-25 instead of
1198           master.
1200 2016-01-30  lu4nx  <lx@shellcodes.org>
1202         Support Go language in 'etags'
1204         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
1205         <Go_help>: New help.
1206         <Go_suffixes>: New variable.
1207         (Go_functions): New function.
1208         <lang_names>: Add entry for Go.  (Bug#22370)
1210         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
1211         * doc/man/etags.1: Mention Go support.
1213         * etc/NEWS: Mention Go support.
1215         * test/etags/go-src/test.go:
1216         * test/etags/go-src/test1.go: New test files.
1217         * test/etags/Makefile (GOSRC): New variable.
1218         (SRCS): Add $(GOSRC).
1219         * test/etags/ETAGS.good_1:
1220         * test/etags/ETAGS.good_2:
1221         * test/etags/ETAGS.good_3:
1222         * test/etags/ETAGS.good_4:
1223         * test/etags/ETAGS.good_5:
1224         * test/etags/ETAGS.good_6:
1225         * test/etags/CTAGS.good: Adapt to addition of Go tests.
1227 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1229         Improve Ruby support in 'etags'
1231         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
1232         singleton classes.  Remove class qualifiers from tags generated
1233         for method and constant names.  (Bug#22241)
1235         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
1236         are tagged by etags in Ruby.
1238         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
1240         * test/etags/ruby-src/test1.ruby: Add more tests.
1241         * test/etags/ETAGS.good_1:
1242         * test/etags/ETAGS.good_2:
1243         * test/etags/ETAGS.good_3:
1244         * test/etags/ETAGS.good_4:
1245         * test/etags/ETAGS.good_5:
1246         * test/etags/ETAGS.good_6:
1247         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
1248         tests.
1250 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1252         Adjust etags test results to changes in copyright years
1254         * test/etags/CTAGS.good:
1255         * test/etags/ETAGS.good_1:
1256         * test/etags/ETAGS.good_2:
1257         * test/etags/ETAGS.good_3:
1258         * test/etags/ETAGS.good_4:
1259         * test/etags/ETAGS.good_5:
1260         * test/etags/ETAGS.good_6: Adjust to shift in characters and
1261         in line numbers.
1263 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
1265         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
1267         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
1269 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1271         Make it possible to run make change-history on emacs-25
1273         * Makefile.in: Check if the current branch is emacs-25 instead of
1274           master.
1276 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1278         Don't fiddle with DEFAULT
1280         * lisp/progmodes/project.el (project--completing-read-strict):
1281         Don't change DEFAULT, whether is has any matches in
1282         COLLECTION, or not.
1284 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1286         Document xwidget commands and functions
1288         * doc/lispref/display.texi (Xwidgets): New section, describes some
1289         of the xwidget primitives.
1290         * doc/lispref/display.texi (Display): Update the chapter menu.
1291         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
1292         * doc/emacs/emacs.texi (Top): Update the master menu to include
1293         the xwidget node.
1295 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
1297         Build fix for shr.el
1299         * shr.el (seq): Require.
1301 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1303         Improve project-find-file yet again!
1305         * lisp/progmodes/project.el (project--completing-read-strict):
1306         New function.
1307         (project-find-file-in): Use it.
1308         (project-file-completion-table): Move the default
1309         implementation inside the cl-defgeneric form.
1310         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
1312 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1314         Don't pass DIR to 'hg status'
1316         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
1317         Don't pass DIR to 'hg status' (bug#22481).
1319 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1321         Fix typo in previous commits
1323         * lisp/progmodes/project.el (project-find-file-in):
1324         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
1325         commit.
1327 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1329         Improve project-find-file
1331         * lisp/progmodes/project.el (project-file-completion-table): New.
1332         (project-find-file, project-or-external-find-file): Default to filename
1333         at point.
1334         (project-file-completion-table): New, split out from
1335         project--find-file-in.
1336         (project-find-file-in): Renamed from project--find-file-in, use
1337         project-file-completion-table.
1339         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
1340         (xref--find-ignores-arguments): Add doc string.
1342 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1344         Implement vc-mtn-find-ignore-file, fix some doc strings
1346         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
1348         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
1350         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
1352         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
1354 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
1356         Improve user name completion in Tramp
1358         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
1359         Call also "getent passwd" or "getent group", if possible.
1360         (tramp-parse-putty): Cache the result.
1362 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
1364         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
1366 2016-01-20  Glenn Morris  <rgm@gnu.org>
1368         Remove handling of non-string time-stamp formats, obsolete for 20 years.
1370         * lisp/time-stamp.el (time-stamp-format): Doc fix.
1371         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
1372         (time-stamp-string): Ignore non-string formats.
1374 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
1376         Anoter fix for problematic merge from emacs-25
1378         * src/w32fns.c (globals_of_w32fns): Move initialization of
1379         resetstkoflw to a non-Cygwin part.
1381 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
1383         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
1385 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
1387         Fix MS-Windows build broken by a botched merge from emacs-25
1389         * src/w32.c (w32_crypto_hprov): New static variable.
1390         (globals_of_w32): Initialize w32_crypto_hprov.
1391         (w32_init_crypt_random, w32_init_random): New functions.
1392         Include wincrypt.h.
1393         * src/w32.h (w32_init_random): Add prototype.
1395 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1397         Correct a whole bunch of bugs coming with renamed cell relocation.
1399         * lisp/ses.el (ses-localvars): rename variable
1400         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
1401         and adjust the comment about it.
1402         (ses-plist-delq): new defun.
1403         (ses--ses-buffer-list): new defvar.
1404         (ses--unbind-cell-name): new defun.
1405         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
1406         (ses-relocate-formula): Undo change of
1407         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
1408         preventing relocation for named cell --- now doing this is delegated
1409         to function `ses-relocate-symbol'.
1410         (ses-relocate-range): In docstring, undo change of
1411         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
1412         lower case as it is not a variable.
1413         (ses-relocate-all): Cell name relocation : 1) check that cell is a
1414         renamed cell by testing `ses-cell' property to :ses-named, rather than
1415         comparing name to corresponding standard name. Set rowcol of renamed
1416         cell into the hashmap --- `ses-cell' property must not be used for
1417         that as the same name can be used for different locations in different
1418         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
1419         `local-variable-p' to check if cell name is already in use in this
1420         sheet or needs initialisation.
1421         (ses-relocate-all): Cell value relocation : 1) like for name
1422         relocation use the `ses-cell' property rather than comparing actual
1423         name to corresponding standard name. 2) Correct bug introduced in
1424         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
1425         made the other way round than the intention --- ie value relocation
1426         was disabled for standard cell, not for renamed cell as was the
1427         intention.
1428         (ses-relocate-all): Add loop for unbinding deleted renamed cells
1429         names.
1430         (ses-killbuffer-hook): new defun.
1431         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
1432         kill buffer hook, plus pushing current buffer if new in list.
1433         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
1434         into `ses--in-killing-named-cell-list'.
1435         (ses-rename-cell): Remove update of variable
1436         `ses--renamed-cell-symb-list', this variable is renamed to
1437         `ses--in-killing-named-cell-list', and its setting is done in
1438         functions `ses-delete-row' and , `ses-delete-column' now.
1439         (ses-rename-cell): Make cell new name a buffer local variable.
1440         (ses-rename-cell): Change correction of
1441         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
1442         computation of the range over which `cursor-intangible' property was
1443         to be updated. This correction was ok for non spilling cells, but not
1444         for cells spilling over following blank cells. Simply use
1445         `next-single-property-change' rather than computing the end column
1446         from column widths.
1448 2016-01-19  John Wiegley  <johnw@newartisans.com>
1450         Merge from origin/emacs-25
1452         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
1453         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
1454         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
1455         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
1456         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
1457         86e4513 Fix incompatbilities with MS-Windows 2000 and older
1458         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
1459         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
1460         39afa42 Fix tests for active region in hideif.el
1461         05df666 Fix interactive specs in some hideif.el commands
1463 2016-01-19  John Wiegley  <johnw@newartisans.com>
1465         -
1467 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
1469         Avoid stdio in SIGINT handler
1471         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
1472         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
1473         * lib/ignore-value.h: New file, from gnulib.
1474         * src/keyboard.c: Include it.
1475         (write_stdout, read_stdin): New functions.
1476         (handle_interrupt): Use them instead of printf and getchar,
1477         and avoid fflush when handling signals.
1479 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
1481         Refactor mml-smime.el, mml1991.el, mml2015.el
1483         (Maybe this is the last merge from Gnus git to Emacs git)
1485         Cf. discussion on ding mailing list, messages in
1486         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
1487         Common code from the three files mml-smime.el, mml1991.el, and
1488         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
1489         to gnus-util.el.
1491         The code is supported by test cases with necessary test keys.
1493         Documentation in message.texi is updated.
1495         * doc/misc/message.texi (Security, Using S/MIME):
1496         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
1497         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
1498         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
1500         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
1501         New functions.
1503         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
1504         (epa--select-keys): Autoload.
1505         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
1506         (mml-secure-openpgp-signers): New user option;
1507         make mml1991-signers and mml2015-signers obsolete aliases to it.
1508         (mml-secure-smime-signers): New user option;
1509         make mml-smime-signers an obsolete alias to it.
1510         (mml-secure-openpgp-encrypt-to-self): New user option;
1511         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
1512         aliases to it.
1513         (mml-secure-smime-encrypt-to-self): New user option;
1514         make mml-smime-encrypt-to-self an obsolete alias to it.
1515         (mml-secure-openpgp-sign-with-sender): New user option;
1516         make mml2015-sign-with-sender an obsolete alias to it.
1517         (mml-secure-smime-sign-with-sender): New user option;
1518         make mml-smime-sign-with-sender an obsolete alias to it.
1519         (mml-secure-openpgp-always-trust): New user option;
1520         make mml2015-always-trust an obsolete alias to it.
1521         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
1522         New user options.
1523         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
1524         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
1525         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
1526         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
1527         (mml-secure-passphrase-callback, mml-secure-check-user-id)
1528         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
1529         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
1530         (mml-secure-fingerprint, mml-secure-filter-keys)
1531         (mml-secure-normalize-cust-name, mml-secure-select-keys)
1532         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
1533         (mml-secure-self-recipients, mml-secure-recipients)
1534         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
1536         * lisp/gnus/mml-smime.el: Require epg;
1537         refactor declaration and autoloading of epg functions.
1538         (mml-smime-use): Doc fix.
1539         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
1540         Obsolete.
1541         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
1542         Use format instead of gnus-format-message.
1543         (mml-smime-epg-secret-key-id-list): Remove variable.
1544         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
1545         (mml-smime-epg-find-usable-secret-key): Remove functions.
1546         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
1548         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
1549         (mml1991-passphrase-cache-expiry): Obsolete.
1550         (mml1991-epg-secret-key-id-list): Remove variable.
1551         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
1552         (mml1991-epg-find-usable-secret-key): Remove functions.
1553         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
1555         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
1556         (mml2015-passphrase-cache-expiry): Obsolete.
1557         (mml2015-epg-secret-key-id-list): Remove variable.
1558         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
1559         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
1560         (mml2015-epg-find-usable-secret-key): Remove functions.
1561         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
1562         (mml2015-epg-encrypt): Refactor.
1564 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
1566         Merge from gnulib
1568         This mostly just updates copyright dates of gnulib files.
1569         It also updates to the latest version of texinfo.tex.
1571 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1573         Move variables to inner loop, preparing for Mac port merge
1575         * src/keyboard.c (command_loop_1): Move variables `cmd',
1576         `keybuf', and `i' to inner loop.
1578 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
1580         Minor improvements to (random t) documentation
1582         * doc/lispref/numbers.texi (Random Numbers):
1583         * src/fns.c (Frandom):
1584         Omit unnecessary details about randomness fallback.
1585         Say that it is a fallback.
1587 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
1589         Rename methods in Ruby etags example file
1591         * test/etags/ruby-src/test.rb: Rename the example methods to
1592         correspond to the common terminology used in Ruby.
1593         * test/etags/CTAGS.good:
1594         * test/etags/ETAGS.good_1:
1595         * test/etags/ETAGS.good_2:
1596         * test/etags/ETAGS.good_3:
1597         * test/etags/ETAGS.good_4:
1598         * test/etags/ETAGS.good_5:
1599         * test/etags/ETAGS.good_6: Adjust accordingly.
1601 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
1603         Propertize backtick in 'def `(abc)' as symbol constituent
1605         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1606         Propertize backtick in 'def `(abc)' as symbol constituent.
1607         (ruby-syntax-propertize-function):
1608         Rename to ruby-syntax-propertize.
1610 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1612         Fix scrolling under scroll-preserve-screen-position on TTY
1614         * src/window.c (window_scroll_line_based): When setting point to
1615         preserve screen coordinates, don't let cursor enter either of the
1616         two scroll margins.  (Bug#22395)
1618 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
1620         Fix shr table rendering of nested tables
1622         * shr.el (shr-table-body): Don't include all tbodies in nested
1623         tables in the levels above.
1625 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
1627         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
1629 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
1631         Add xref-based replacements for Dired search commands
1633         * lisp/dired-aux.el (dired-do-find-regexp)
1634         (dired-do-find-regexp-and-replace): New commands.
1635         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
1637         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
1638         `Q' to the new commands.
1640         * lisp/progmodes/xref.el (xref-query-replace)
1641         (xref-collect-matches): Add progress reporters.
1642         (xref--find-ignores-arguments): Return nil for zero ignores.
1643         (xref--show-xrefs): Add an optional argument.
1644         (xref-collect-matches): Drop the assert.  'find' accepts a
1645         regular file in place of directory argument, too.
1647 2016-01-18  Alan Mackenzie  <acm@muc.de>
1649         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
1651 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1653         Improve user documentation of Xref
1655         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
1656         (Looking Up Identifiers, Identifier Search, List Identifiers):
1657         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
1658         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
1659         for the details.
1661 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1663         Fix scrolling under scroll-preserve-screen-position and margins
1665         * src/window.c (window_scroll_pixel_based): When setting point to
1666         preserve screen coordinates, don't let cursor enter either of the
1667         two scroll margins.  Fix incorrect usage of
1668         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
1669         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
1671 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1673         Unbreak the MS-Windows build
1675         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
1676         WINDOWSNT, to avoid link failure.  (Bug#22202)
1678 2016-01-18  Alan Mackenzie  <acm@muc.de>
1680         Desktop: protect users against inadvertant upgrading of desktop file.
1682         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
1684         * etc/NEWS: Add an entry about upgrading a desktop file.
1686         * lisp/desktop.el (desktop-file-version): Amend doc string.
1687         (desktop-native-file-version, desktop-io-file-version): new variables.
1688         (desktop-clear): Set desktop-io-file-version to nil.
1689         (desktop-buffer-info): make the presence of the last item on the list
1690         conditional on (>= desktop-io-file-version 208).
1691         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
1692         Amend the doc string.  Add code to determine the output file version.
1693         (desktop-create-buffer): Set desktop-io-file-version to the input file's
1694         version.
1696 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
1698         Initialize GnuTLS before calling gnutls_rnd
1700         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
1701         Don’t set gnutls_global_initialized if gnutls_global_init fails.
1702         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
1703         if 2.12 or later, which has gnutls_rnd.
1704         (emacs_gnutls_global_init, gnutls_rnd): New fallback
1705         placeholder macros if before 2.12.
1706         (init_random): Initialize gnutls globals before trying to
1707         use gnutls_rnd.
1709 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
1711         Don't use GnuTLS before it is initialized
1713                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
1715 2016-01-17  Bill Wohler  <wohler@newt.com>
1717         * mh-e.el (mh-version): Add +git to version.
1719 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
1721         Port cleanup attribute to OpenBSD
1723         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
1724         sprintf, and this messes up 'configure' when it tests for the cleanup
1725         attribute.  Work around the problem by using __has_attribute directly.
1726         Problem reported by Joakim Jalap (Bug#22385).
1727         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
1728         * m4/ax_gcc_var_attribute.m4: Remove.
1729         * src/conf_post.h (__has_attribute): Provide a substitute, for
1730         non-GCC or older GCC compilers.  All uses changed to assume
1731         the substitute.  Check for the cleanup attribute.
1732         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
1734 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
1736         Prefer GnuTLS when acquiring random seed
1738         This attempts to improve on the fix for Bug#22202.
1739         * configure.ac (HAVE_DEV_URANDOM): Remove.
1740         Check /dev/urandom existence at run time, not at build time,
1741         since the device could exist in the former but not the latter.
1742         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
1743         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
1744         (random_seed): New typedef.
1745         (set_random_seed): New static function.
1746         (seed_random): Use them.
1747         (init_random): Use random_seed instead of uintmax_t, so as to
1748         not consume more entropy than needed.  Prefer gnutls_rnd if it
1749         works; this avoids a redundant open of /dev/urandom on
1750         GNU/Linux with modern GnuTLS.
1752 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1754         Improve documentation of dynamic modules
1756         * doc/lispref/loading.texi (How Programs Do Loading): Update the
1757         description of searching for files in 'load' when Emacs was built
1758         with support for dynamic modules.
1760 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1762         * INSTALL: Document --with-modules.
1764 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1766         Document 'function-put'
1768         * doc/lispref/symbols.texi (Symbol Plists): Document
1769         'function-put'.  Update documentation of 'function-get'.
1771 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1773         Document 'funcall-interactively'
1775         * doc/lispref/commands.texi (Interactive Call): Document
1776         'funcall-interactively'.
1777         * doc/lispref/functions.texi (Calling Functions): Mention
1778         'funcall-interactively' and provide a cross-reference.
1780 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1782         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
1784         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
1786 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1788         Document renaming of selection-related functions
1790         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
1791         functions into the corresponding "gui-*" functions.  Make the
1792         description slightly less X-centric.
1794 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1796         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
1798 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1800         Document 'define-inline'
1802         * doc/lispref/functions.texi (Defining Functions): Document
1803         'define-inline' and related macros.
1805         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
1807 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
1809         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
1811         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
1813 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
1815         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
1817         instead of manually writing a dir-locals file.
1819 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
1821         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
1823         (dir-locals-file)
1824         * lisp/files-x.el (modify-dir-local-variable)
1825         * lisp/dos-fns.el (dosified-file-name)
1826         * lisp/help-fns.el (describe-variable): Change accordingly.
1828 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
1830         Fix incompatbilities with MS-Windows 2000 and older
1832         * src/w32.c <multiByteToWideCharFlags>: New global variable.
1833         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
1834         Use it instead of the literal MB_ERR_INVALID_CHARS.
1835         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
1836         appropriate for the underlying OS version.  For details, see
1837         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
1838         * src/w32.h: Declare multiByteToWideCharFlags.
1839         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
1840         (add_tray_notification): Use multiByteToWideCharFlags instead of
1841         the literal MB_ERR_INVALID_CHARS.
1842         (_resetstkoflw_proc): New typedef.
1843         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
1844         pointer, as this function is absent in msvcrt.dll shipped with W2K
1845         and older systems.
1847 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1849         Mention in PROBLEMS an issue with MS-Windows NT4
1851         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
1852         on Windows NT4.  For the details, see
1853         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
1855 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
1857         Ensure 8-byte aligned memory allocation on MS-Windows 9X
1859         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
1860         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
1861         (malloc_after_dump_9x, realloc_after_dump_9x)
1862         (free_after_dump_9x): New functions.  (Bug#22379)  See also
1863         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
1864         for more details about the original problem.
1866         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
1867         (free_after_dump_9x): Add prototypes.
1869 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1871         Fix tests for active region in hideif.el
1873         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
1874         'use-region-p' to test whether to operate on region, instead of
1875         testing 'mark-active'.
1877 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1879         Fix interactive specs in some hideif.el commands
1881         * lisp/progmodes/hideif.el (hif-evaluate-macro)
1882         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
1883         in commands that should only act on the region if it's active.
1885 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
1887         Enable test selector from command line
1889         * test/automated/Makefile.in: Change variable manipulation to avoid
1890           over-writing selector.
1892 2016-01-15  Alan Mackenzie  <acm@muc.de>
1894         Don't confuse "::" with ":" when trying to parse member initializers.
1896         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
1897         more robustly for ":" token when searching backwards for it.
1899         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
1900         variable.
1902 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1904         Ensure positive number of glyphs for margins of positive width
1906         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
1907         positive value when a non-zero width of the marginal area was
1908         requested.  (Bug#22356)
1910 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1912         Fix crashes when mini-window has non-zero margins
1914         * src/window.c (resize_frame_windows): Use 'new_size' to set
1915         minibuffer window's 'total_cols' value, as 'size' might be in
1916         pixels.  (Bug#22356)
1918 2016-01-15  Alan Mackenzie  <acm@muc.de>
1920         In comment-dwim with style `extra-line', respect indent-tabs-mode.
1922         This fixes bug #22369.
1924         * lisp/newcomment.el (comment-make-bol-ws): New function.
1925         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
1927 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1929         Make 'random' seeds cryptographically secure if possible
1931         * configure.ac: Check for "/dev/urandom".
1933         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
1934         for the seed from "/dev/urandom".
1935         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
1936         * src/fns.c (Frandom): Update the doc string to indicate that
1937         system entropy is used when available.
1938         * src/w32.c: Include wincrypt.h.
1939         (w32_init_crypt_random, w32_init_random): New functions, use the
1940         CryptGenRandom API.
1941         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
1942         * src/w32.h (w32_init_random): Add prototype.
1944         * doc/lispref/numbers.texi (Random Numbers): Document more details
1945         about 't' as the argument to 'random'.
1947         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
1948         strong seed if possible.
1950         (Bug#22202)
1952 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1954         Unhide the --no-line-directive option to 'etags'
1956         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
1957         option.  (Bug#22306)
1959         * doc/man/etags.1: Document the --no-line-directive option.
1961 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
1963         Fix picture-mode wrt double-width characters
1965         * lisp/textmodes/picture.el (picture-insert): Check the width of
1966         the character being replaced, not just that of the replacement.
1967         (Bug#1808)
1969 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
1971         Honor docstring of gnus-group-get-new-news
1973         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
1974         but non-numeric, unconditionally consider all groups to need updating.
1976 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
1978         Disallow parenthesis in non-pseudo CSS selectors
1980         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
1981         parenthesis in selectors except for in the function notation that
1982         might appear right after a pseudo-class.
1983         * test/indent/scss-mode.scss: Add a test for it.
1985 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
1987         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
1989 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
1991         check-maybe shall run only default tests
1993         * test/automated/Makefile.in (check, check-expensive): Depend on
1994         mostlyclean.
1995         (check-maybe): Re-run only default tests.
1996         (check-doit): Use code of check-maybe.
1997         (mostlyclean): Move *.log files away.
1999 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
2001         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
2003 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
2005         Un-obsolete tags-loop-continue
2007         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
2008         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
2010 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2012         Document obsoletion of 'intangible' and 'point-entered/left'
2014         * doc/lispref/text.texi (Special Properties): Document the new
2015         properties 'cursor-intangible' and 'cursor-sensor-functions'.
2016         Document the obsolete status of 'intangible', 'pointer-left',
2017         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
2018         * doc/lispref/display.texi (Overlay Properties): Document that
2019         'intangible' overlay property is obsolete.
2021         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
2023 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2025         Updater documentation of 'looking-back'
2027         * doc/lispref/searching.texi (Regexp Search): Update documentation
2028         of 'looking-back'.  Fix markup.
2030 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2032         Document 'pre-redisplay-functions'
2034         * doc/lispref/hooks.texi (Standard Hooks):
2035         * doc/lispref/display.texi (Forcing Redisplay): Document
2036         'pre-redisplay-functions'.
2038 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2040         Document the new deafault value of 'load-read-function'
2042         * doc/lispref/loading.texi (How Programs Do Loading): Document the
2043         change in the default value of 'load-read-function'.
2045 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2047         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
2049         * doc/lispref/nonascii.texi (Text Representations): Document
2050         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
2052 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2054         Document the new prefix-command hooks
2056         * doc/lispref/hooks.texi (Standard Hooks): Document
2057         `prefix-command-echo-keystrokes-functions' and
2058         `prefix-command-preserve-state-hook'.
2060 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2062         Fix one more misuse of time-stamp-time-zone
2064         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
2065         than the unportable "GMT" for time zone.
2067 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2069         Fix NNTP NEWGROUPS off-by-a-few-hours bug
2071         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
2072         in Universal Time, since we’re telling the server “GMT”.
2074 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2076         Update publicsuffix.txt from upstream
2078         * etc/publicsuffix.txt: Update from
2079         https://publicsuffix.org/list/effective_tld_names.dat
2080         dated 2016-01-12 11:52:01 UTC.
2082 2016-01-12  Glenn Morris  <rgm@gnu.org>
2084         Fix some declarations.
2086         * lisp/descr-text.el (internal-char-font):
2087         * lisp/cedet/mode-local.el (xref-item-location):
2088         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
2089         (epg-sub-key-capability, epg-sub-key-validity):
2090         * lisp/international/mule-util.el (internal-char-font):
2091         Fix declarations.
2093 2016-01-12  Glenn Morris  <rgm@gnu.org>
2095         Fix some custom types.
2097         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
2098         * lisp/gnus/gnus.el (gnus-valid-select-methods):
2099         * lisp/mail/rmail.el (rmail-get-coding-function):
2100         * lisp/net/newst-treeview.el (newsticker-groups-filename):
2101         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
2102         * lisp/textmodes/tildify.el (tildify-space-predicates):
2103         * lisp/url/url-tramp.el (url-tramp-protocols):
2104         Fix custom types.
2106 2016-01-12  Glenn Morris  <rgm@gnu.org>
2108         Add some missing version tags.
2110         * lisp/electric.el (electric-quote-comment)
2111         (electric-quote-string, electric-quote-paragraph):
2112         * lisp/epg-config.el (epg-gpgconf-program):
2113         * lisp/rect.el (rectangle-preview):
2114         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
2115         * lisp/emacs-lisp/package.el (package-selected-packages)
2116         (package-hidden-regexps):
2117         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
2118         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
2119         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
2120         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
2121         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
2122         (mml-smime-sign-with-sender, mml2015-always-trust)
2123         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
2124         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
2125         (browse-url-conkeror-arguments):
2126         * lisp/net/newst-reader.el (newsticker-download-logos):
2127         * lisp/progmodes/gud.el (gud-guiler-command-name):
2128         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
2129         * lisp/progmodes/project.el (project-vc):
2130         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
2131         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
2132         (python-shell-completion-native-disabled-interpreters)
2133         (python-shell-completion-native-enable)
2134         (python-shell-completion-native-output-timeout)
2135         (python-shell-completion-native-try-output-timeout):
2136         * lisp/progmodes/xref.el (xref):
2137         * lisp/term/screen.el (xterm-screen-extra-capabilities):
2138         * lisp/term/xterm.el (xterm-max-cut-length):
2139         Add missing version tags.
2141 2016-01-12  Glenn Morris  <rgm@gnu.org>
2143         * test/automated/core-elisp-tests.el
2144         (core-elisp-tests-1-defvar-in-let): Add a custom type.
2146 2016-01-12  Glenn Morris  <rgm@gnu.org>
2148         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
2150         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
2152 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2154         Merge from gnulib
2156         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
2157         It also updates to the latest version of texinfo.tex.
2158         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
2159         * build-aux/update-copyright, doc/misc/texinfo.tex:
2160         Update from gnulib.
2162 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2164         Update documentation of 'process-running-child-p'
2166         * doc/lispref/processes.texi (Input to Processes): Document the
2167         changes in return value of 'process-running-child-p'.
2169 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2171         Update documentation of 'deactivate-mark'.
2173         * doc/lispref/markers.texi (The Mark): Document that
2174         'deactivate-mark' is now buffer-local when set.
2176 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2178         Update documentation of 'completion-table-dynamic'
2180         * doc/lispref/minibuf.texi (Programmed Completion): Document the
2181         new optional argument to 'completion-table-dynamic'.
2183 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2185         Document changes in 'read-buffer' and 'read-buffer-function'
2187         * doc/lispref/minibuf.texi (High-Level Completion): Document the
2188         4th argument to 'read-buffer' and 'read-buffer-function'.
2190 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2192         Fix time-stamp-time-zone bugs introduced in July
2194         This fixes a bug introduced when the July changes to
2195         format-time-string installed, as the changes were not
2196         correctly handled in this module (Bug#22302).
2197         Also, document time stamp time zones.
2198         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
2199         (time-stamp--format): New private function.
2200         (time-stamp-string, time-stamp-string-preprocess)
2201         (time-stamp-do-number): Use it.
2202         * doc/emacs/files.texi (Time Stamps): Mention time zones.
2203         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
2205 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2207         Make piping to subprocesses more robust on MS-Windows
2209         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
2210         buffer can hold.  Don't return -1 if something has been written to
2211         the pipe.  Zero out 'errno' before calling '_write', to avoid
2212         returning a stale value.  (Bug#22344)
2213         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
2214         * src/w32.c (pipe2): Use it to request a user-defined size for the
2215         pipe being created.
2217         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
2219         * doc/emacs/msdos.texi (Windows Processes): Document
2220         'w32-pipe-buffer-size'.
2222 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2224         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
2226         (syntax-ppss):
2227         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
2229 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2231         lisp/nxml: Use syntax-tables for comments
2233         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
2234         (nxml-mode): Set syntax-ppss-table.
2235         Use sgml-syntax-propertize-function for syntax-propertize-function.
2236         Let font-lock highlight strings and comments.
2237         (nxml-degrade): Don't touch "nxml-inside" property any more.
2238         (nxml-after-change, nxml-after-change1): Remove functions.
2239         (comment): Don't set fontify rule any more.
2240         (nxml-fontify-attribute): Don't highlight the value any more.
2241         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
2242         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
2244         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
2245         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
2246         (nxml-clear-inside, nxml-set-inside): Remove.
2247         (nxml-scan-after-change): Remove function.
2248         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
2249         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
2250         (nxml-move-outside-backwards):
2251         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
2252         nxml-inside-start behavior.
2254         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
2255         (nxml-debug-clear-inside): Remove macros.
2257         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
2258         (xmltok-scan-after-comment-open): Simplify.
2260 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2262         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
2264 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2266         * lisp/nxml: Use standard completion; it also works for company-mode
2268         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
2269         (nxml-completion-at-point-function): Remove.
2270         (nxml-mode): Don't set completion-at-point-functions.
2271         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
2272         (rng-completion-at-point): Rename from rng-complete and mark it
2273         non-interactive.  It is now to be used as completion-at-point-function.
2274         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
2275         (rng-complete-attribute-value): Don't perform completion, but return
2276         completion data instead.
2277         (rng-complete-qname-function, rng-generate-qname-list): Add a few
2278         arguments, previously passed via dynamic coping.
2279         (rng-strings-to-completion-table): Rename from
2280         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
2281         sorting and uniquifying.
2283         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
2284         (rng-completion-exact-p, rng-quote-string): Delete functions.
2286         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
2287         (rng-missing-attributes-message, rng-missing-element-message)
2288         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
2289         calling rng-quote-string everywhere.
2291 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2293         Use sgml-electric-tag-pair-mode also in nxml-mode
2295         * lisp/nxml/rng-nxml.el: Require sgml-mode.
2296         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
2297         (rng-complete-qname-function): Use complete-with-action.
2299         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
2300         Let-bind forward-sexp-function, since nxml-mode binds it to
2301         something incompatible.
2303         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
2305 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
2307         * xmltok.el: Mark the "sole --" rather than the comment opener
2309         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
2310         marker on the "sole --" rather than on the comment opener.
2312 2016-01-15  Sam Steingold  <sds@gnu.org>
2314         replace `tramp-compat-split-string' (removed) with `split-string'
2316         (python-shell-tramp-refresh-process-environment)
2317         (python-shell-calculate-pythonpath): use `split-string'
2318         instead of defunct `tramp-compat-split-string'
2320 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
2322         Update nXML to use Emacs's Unicode support, and lexical-binding
2324         * etc/nxml/*.el: Remove obsolete char-name files.
2325         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
2326         var `next'.
2327         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
2328         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
2329         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
2330         (nxml-target-section-pos, nxml-depth-in-target-section)
2331         (nxml-outline-state-transform-alist)
2332         (nxml-outline-display-section-tag-function): Move decl before first use.
2333         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
2334         (nxml-char-name-alist, nxml-char-name-table)
2335         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
2336         (nxml-enable-char-name-set, nxml-disable-char-name-set)
2337         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
2338         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
2339         (nxml-insert-named-char): Use read-char-by-name instead.
2340         (nxml-char-ref-display-extra): Use get-char-code-property.
2341         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
2342         Remove function.
2343         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
2345 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
2347         Add "sg" method to Tramp
2349         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
2350         (Customizing Completion): Add function `tramp-parse-etc-group'.
2352         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
2353         (tramp-completion-function-alist-sg): New defconst.
2354         (top): Completion function for "sg" is
2355         `tramp-completion-function-alist-sg'.
2357         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
2358         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
2360 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
2362         Remove XEmacs compatibility in Tramp
2364         * doc/misc/tramp.texi: Replace flags by their hard coded name.
2365         Remove unused flags and the enclosed alternative text for XEmacs.
2367         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
2368         and "xemacs" flags to "unified" and "separate".  Remove flags
2369         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
2370         "emacsothername", "emacsotherdir" and "emacsotherfilename".
2371         (trampver):
2372         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
2374         * lisp/net/tramp.el (bkup-backup-directory-info)
2375         (directory-sep-char, ls-lisp-use-insert-directory-program)
2376         (outline-regexp, tramp-backup-directory-alist)
2377         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
2378         (tramp-file-name-regexp-unified)
2379         (tramp-file-name-regexp-separate)
2380         (tramp-completion-file-name-regexp-unified)
2381         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
2382         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
2383         (tramp-debug-message, tramp-progress-reporter-update)
2384         (with-tramp-progress-reporter)
2385         (tramp-rfn-eshadow-setup-minibuffer)
2386         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
2387         (tramp-rfn-eshadow-update-overlay)
2388         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
2389         (tramp-file-name-for-operation)
2390         (tramp-completion-file-name-handler)
2391         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
2392         (tramp-handle-directory-files)
2393         (tramp-handle-directory-files-and-attributes)
2394         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
2395         (tramp-handle-insert-file-contents, tramp-handle-load)
2396         (tramp-handle-shell-command)
2397         (tramp-handle-verify-visited-file-modtime)
2398         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
2399         (tramp-check-for-regexp, tramp-wait-for-regexp)
2400         (tramp-send-string, tramp-mode-string-to-int)
2401         (tramp-get-local-gid, tramp-check-cached-permissions)
2402         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
2403         (auto-save-file-name-transforms)
2404         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
2405         (tramp-clear-passwd, tramp-time-diff):
2406         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
2407         (directory-sep-char, tramp-adb-file-name-handler-alist)
2408         (tramp-adb-parse-device-names)
2409         (tramp-adb-handle-expand-file-name)
2410         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
2411         (tramp-adb-handle-file-local-copy)
2412         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
2413         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
2414         (tramp-adb-handle-shell-command)
2415         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
2416         (tramp-adb-maybe-open-connection):
2417         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
2418         (tramp-cache-print):
2419         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
2420         (tramp-bug, tramp-reporter-dump-variable)
2421         (tramp-load-report-modules, tramp-append-tramp-buffers):
2422         * lisp/net/tramp-compat.el (tramp-compat-funcall)
2423         (tramp-advice-file-expand-wildcards)
2424         (tramp-compat-temporary-file-directory)
2425         (tramp-compat-make-temp-file, tramp-compat-copy-file)
2426         (tramp-compat-delete-directory, )
2427         (tramp-compat-process-running-p):
2428         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
2429         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
2430         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
2431         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
2432         (tramp-gvfs-handle-file-local-copy)
2433         (tramp-gvfs-handle-file-name-all-completions)
2434         (tramp-gvfs-handle-file-notify-add-watch)
2435         (tramp-gvfs-monitor-file-process-filter)
2436         (tramp-gvfs-handle-file-readable-p)
2437         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
2438         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
2439         (tramp-gvfs-maybe-open-connection)
2440         (tramp-gvfs-parse-device-names):
2441         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
2442         (tramp-gw-open-connection, tramp-gw-open-network-stream):
2443         * lisp/net/tramp-sh.el (directory-sep-char)
2444         (tramp-sh-file-name-handler-alist)
2445         (tramp-sh-handle-file-truename)
2446         (tramp-sh-handle-set-visited-file-modtime)
2447         (tramp-sh-handle-verify-visited-file-modtime)
2448         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
2449         (tramp-sh-handle-file-acl)
2450         (tramp-sh-handle-file-name-all-completions)
2451         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
2452         (tramp-do-copy-or-rename-file-directly)
2453         (tramp-do-copy-or-rename-file-out-of-band)
2454         (dired-compress-file-suffixes, dired-remove-file)
2455         (tramp-sh-handle-dired-compress-file)
2456         (tramp-sh-handle-insert-directory)
2457         (tramp-sh-handle-expand-file-name)
2458         (tramp-sh-handle-start-file-process)
2459         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
2460         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
2461         (tramp-sh-handle-file-notify-add-watch)
2462         (tramp-sh-gvfs-monitor-dir-process-filter)
2463         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
2464         (tramp-find-executable)
2465         (tramp-open-connection-setup-interactive-shell)
2466         (tramp-find-inline-encoding, tramp-compute-multi-hops)
2467         (tramp-maybe-open-connection, tramp-convert-file-attributes)
2468         (tramp-get-remote-path, tramp-get-remote-touch):
2469         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
2470         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
2471         (tramp-smb-handle-delete-directory)
2472         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
2473         (tramp-smb-handle-make-directory-internal)
2474         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
2475         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
2476         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
2477         (tramp-smb-get-cifs-capabilities)
2478         (tramp-smb-maybe-open-connection):
2479         * lisp/net/trampver.el (tramp-repository-get-version):
2480         Remove XEmacs compat code.
2482         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
2483         (reporter-dump-variable): Declare functions.
2485         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
2486         (tramp-advice-minibuffer-electric-separator)
2487         (tramp-advice-minibuffer-electric-tilde)
2488         (tramp-handle-unhandled-file-name-directory):
2489         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
2490         (tramp-compat-font-lock-add-keywords)
2491         (tramp-compat-load, tramp-compat-number-sequence)
2492         (tramp-compat-split-string, tramp-compat-delete-dups):
2493         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
2494         Remove.
2496         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
2497         recursively.
2499 2016-01-14  K. Handa  <handa@gnu.org>
2501         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
2503         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
2504         second glyph only when there are enough glyphs.
2506 2016-01-13  Glenn Morris  <rgm@gnu.org>
2508         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
2510         or its hook, to move point.  (Bug#22348)
2512 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
2514         Merge missing commit from emacs-25 branch
2516         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
2517         New variables.
2518         (check-expensive, check-doit): New targets.
2520         * Makefile.in (check-expensive): New target.
2522         * test/lisp/autorevert-tests.el
2523         (auto-revert-test01-auto-revert-several-files):
2524         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
2525         (file-notify-test06-many-events):
2526         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
2527         (tramp-test27-start-file-process, tramp-test28-shell-command)
2528         (tramp-test29-vc-registered)
2529         (tramp-test31-special-characters-with-stat)
2530         (tramp-test31-special-characters-with-perl)
2531         (tramp-test31-special-characters-with-ls)
2532         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
2533         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
2534         (tramp-test35-unload): Tag the tests as :expensive-test.
2536 2016-01-12  John Wiegley  <johnw@newartisans.com>
2538         Merge from origin/emacs-25
2540         1f6898d test/automated/vc-hg.el: Support out-of-tree build
2541         3adb56e Minor change in tramp-tests.el
2542         2b535ba ; * etc/NEWS: Update the js.el entry.
2543         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
2544         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
2545         36b9539 Avoid an infloop when we run out of memory
2546         2006752 Avoid unnecessary failures of auto-saving after fatal error
2547         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
2548         552694a Revert attempt to use 'noexcept' in typedef
2549         6ad0d39 Update documentation of 'indirect-function'
2550         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
2551         303141a Update documentation for obsoleting 'syntax-begin-function'
2552         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
2553         e667bbb Document new features if Eshell
2554         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
2555         1089dc9 Handle too long commands in Tramp
2556         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
2557         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
2558         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
2559         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
2560         cca0f93 ; Account for spaces before the filename
2561         c71e1e8 Use short date for 'hg annotate', and output the author
2562         f50027b Spelling fix
2563         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
2564         cc140bc Document user-level functions in project.el
2565         f8208b6 Document the user-level features of the Xref package
2566         b131fb8 * loading.texi: Add `define-type' entry for load-history
2567         db3c2a8 Improve doc strings and prompts in xref.el
2568         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
2569         90fd798 Fix coding system for Tramp on OS X.
2570         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
2571         9dfcbf0 Update 'load-history' docs
2572         207e191 Fix (error ...) error
2573         457738f Correctly analyze brace arguments in templated C++ function declarations.
2574         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
2575         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
2576         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
2577         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
2578         4b37cba Improve documentation of Delete Selection mode
2579         a034dd3 Fix two project-find-file issues
2580         30abf29 Clarify doc string of 'dired-current-directory'
2581         e990bb2 Use the face of preceding text for displaying the ellipsis
2582         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
2583         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
2584         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
2585         648de81 ; Add NEWS entry for project.el
2586         671862f apropos-library: Skip obvious duplicates; don't error on generics
2587         51668a5 ; Grammar fix
2588         ed41d11 Add project-find-file and project-or-external-find-file
2589         056da45 ; Improve commentary in 'setup_for_ellipsis'
2590         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
2592 2016-01-12  John Wiegley  <johnw@newartisans.com>
2594         Merge from origin/emacs-25
2596         ce4a052 Add defvar-local to lisp-imenu-generic-expression
2597         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
2598         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
2599         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
2600         b6b47af Properly encode/decode base64Binary data in SOAP
2601         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
2602         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
2603                 Update the URI of MELPA and marmalade-repo.
2604                 Reported by CHENG Goa <chenggao@royau.me> in
2605                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
2606         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
2607         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
2608         7380990 Remove function wrongly on AWK Mode value of context
2609         fontification hook.
2610         d400753 * src/buffer.c: Stick with ASCII in doc string.
2611         221240c Reword transient-mark-mode doc string
2612         977d3ea Update doc string of 'selective-display'
2613         229c3fa Make C++ buffers writeable when writing their initial text
2614                 properties.
2615         f5c762c Additional changes for "make check-expensive"
2616         1729cf3 ; * admin/MAINTAINERS: Remove myself.
2617         33219d3 Apply text properties for <, > in new after-change function
2618                 (C++ Java Modes).
2620 2016-01-12  John Wiegley  <johnw@newartisans.com>
2622         Merge from origin/emacs-25
2624         9fb185a shr-tag-video bug fix
2625         6300655 Minor fixes in tramp-tests.el
2626         50575b1 Ensure redisplay when 'truncate-lines' is set
2627         0d9e80d Fix a doc string of 'transient-mark-mode'
2628         0000ae5 MS-Windows followup to latest gnulib update
2629         4bc5e02 Spelling fix
2630         f1093f7 Do secure signed Bcc handling
2632 2016-01-12  John Wiegley  <johnw@newartisans.com>
2634         Merge from origin/emacs-25
2636         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
2637         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
2638         71ea138 * lisp/align.el (align): Simplify a lambda
2639         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
2640         1f680db Fix compilation next-error in buffers with selective-display
2641         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
2642         1da116f Add SHA1 warnings for high network security settings
2643         e48bacd ; * etc/NEWS: Typo fix.
2645 2016-01-12  John Wiegley  <johnw@newartisans.com>
2647         Merge from origin/emacs-25
2649         43662a2 ; Clarify that xref is still experimental
2650         0a6e6ca ; * admin/release-process: Remove some obsolete records.
2651         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
2652         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
2653         0a7ad07 ; Re-arrange xref-related entries in NEWS.
2654         fe903ef Fix xref-find-references on MS-Windows
2655         55a28d8 ; Fixed visual bell artifact problem on NextStep.
2656         d064034 Document new features of tildify-mode
2657         964bea7 Document new features of Whitespace mode
2658         cd68f47 Improve documentation of new Hide-IfDef features
2659         723b8bf Fix regression in font-locking cl-assert and cl-check-type
2661 2016-01-12  John Wiegley  <johnw@newartisans.com>
2663         Merge from origin/emacs-25
2665         ef33bc7 Spelling and grammar fixes
2666         9c3dbab Fix copyright years by hand
2667         0e96320 Update copyright year to 2016
2669 2016-01-12  John Wiegley  <johnw@newartisans.com>
2671         Merge from origin/emacs-25
2673         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
2674         526d80c Port chart.el methods to cl-generic.
2675         410bb69 Add nt/INSTALL.W64 build instructions
2676         8f5b524 Add new input method 'programmer-dvorak'
2677         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
2678         bb83bb1 Fix EWW rendering of long RTL lines
2679         b1a8509 fix  bug#21054
2680         ce5ad12 Clean up cairo printing code
2682 2016-01-12  John Wiegley  <johnw@newartisans.com>
2684         Merge from origin/emacs-25
2686         6ee327d Add handle_user_signal_hook
2687         47580e0 Avoid writing to purespace
2688         0588be7 Remove unused variable
2689         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
2690         3b95e9c Use posix_openpt instead of openpty on Darwin
2691         86312ff Document support for ':documentation' in Lisp mode
2692         c930e75b Document new features of TeX mode
2693         7c83d84 Clarify docs of hscroll in RTL text
2694         4c8f8db Fix rendering of HTML pages that use character composition
2695         a8d37ca Avoid some compiler warnings in w32.c
2696         ce106f3de Undo ill-advised change
2697         be0bba4 Unbreak completion in python-mode buffers
2699 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
2701         test/automated/vc-hg.el: Support out-of-tree build
2703         * test/automated/vc-hg.el
2704         (vc-hg-annotate-extract-revision-at-line-with-filename)
2705         (vc-hg-annotate-extract-revision-at-line-with-both):
2706         Don't refer to source-directory.
2707         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
2709 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
2711         Minor change in tramp-tests.el
2713         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
2714         Use `dired-uncache' instead of a Tramp internal function.
2716 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
2718         * etc/HELLO: Add Armenian and Mongolian greetings.
2720         (Bug#22346)
2722 2016-01-11  Alan Mackenzie  <acm@muc.de>
2724         Java Mode: Fontify identifiers in the presence of annotations.
2726         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
2727         Don't move point when the defun fails.
2728         (c-forward-decl-or-cast-1): Correct a usage of match data.
2730         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
2731         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
2732         removed variable.
2734         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
2736 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
2738         Avoid an infloop when we run out of memory
2740         * src/alloc.c (garbage_collect_1): Don't bother saving and
2741         restoring the echo-area message if we are GC'ing after running out
2742         of memory.  This avoids an infloop due to repeated attempts to
2743         allocate memory for the cons cell needed to save the message,
2744         which signals the memory-full error, which attempts to save the
2745         echo-area message, which signals memory-full again, etc.
2747 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
2749         Avoid unnecessary failures of auto-saving after fatal error
2751         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
2752         the benefit of FAT volumes if we are called as part of shutting
2753         down due to a fatal error, which probably means we are trying to
2754         auto-save the session.
2755         * src/lread.c (check_obarray): Don't bother making the obarray
2756         valid if we are shutting down due to a fatal error.  This avoids
2757         interfering with auto-saving the crashed session.
2759 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
2761         Simplify HAVE_MODULES use in mark_maybe_pointer
2763         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
2764         so that later code can use 'if' rather than '#ifdef'.
2765         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
2766         always working.
2768 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
2770         Revert attempt to use 'noexcept' in typedef
2772         This use of 'noexcept' runs afoul of the C++11 standard.
2773         Problem reported by Philipp Stephani in:
2774         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
2775         * src/emacs-module.c (emacs_finalizer_function):
2776         Move this typedef here ...
2777         * src/emacs-module.h: ... from here, and use only the C
2778         version of the typedef.  The typedef is now private since it
2779         is never used in the .h file now and anyway it seemed to be
2780         causing more confusion than it cured.
2781         (make_user_ptr, get_user_finalizer, set_user_finalizer):
2782         Open-code the type instead.
2784 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2786         Update documentation of 'indirect-function'
2788         * doc/lispref/eval.texi (Function Indirection): Update the
2789         documentation of 'indirect-function'.
2791 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2793         Update documentation for obsoleting 'syntax-begin-function'
2795         * doc/lispref/syntax.texi (Position Parse): Undocument
2796         'syntax-begin-function' that is now obsolete.
2798 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2800         Document new features if Eshell
2802         * doc/misc/eshell.texi (Input/Output): Document the new
2803         '#<bufname>' syntax.
2804         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
2805         Disable "Key Index" generation, as there are no @kindex entries in
2806         this manual.
2808 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
2810         Handle too long commands in Tramp
2812         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
2813         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
2814         order to not exceed shell command line limit.
2816         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
2817         (tramp--test-utf8): Include Arabic file name, again.
2819 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
2821         * .gitattributes: *.cur and *.pif are binary files too.
2823 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2825         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
2827 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2829         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
2831         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
2832         within $(...).
2833         * test/indent/shell.sh: Add corresponding test.
2835 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
2837         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
2839         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
2840         cast to Lisp_Object.
2842 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
2844         Use short date for 'hg annotate', and output the author
2846         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
2847         Change '-d' to '-dq'.  (Bug#21805)
2848         (vc-hg-annotate-switches): Default to "-u" "--follow".
2849         (vc-hg-annotate-re): Update to recognize the short date format
2850         and the optional username.
2851         (vc-hg-annotate-time)
2852         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
2854         * test/automated/vc-hg.el: New file.
2856 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
2858         Spelling fix
2860 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2862         Document user-level functions in project.el
2864         * lisp/progmodes/project.el (project-find-file)
2865         (project-or-external-find-file): Add doc strings.
2867 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2869         Document the user-level features of the Xref package
2871         * doc/emacs/maintaining.texi (Maintaining): Add a list of
2872         described features.
2873         (Xref): New section, made out of thoroughly rewritten "Tags"
2874         section.
2875         (Find Identifiers, Looking Up Identifiers, Xref Commands)
2876         (Identifier Search, List Identifiers): New subsections,
2877         incorporating the old tags commands and the new xref commands.
2878         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
2879         Section and subsections demoted to a lower level.
2880         * doc/emacs/search.texi (Search):
2881         * doc/emacs/windows.texi (Pop Up Window):
2882         * doc/emacs/frames.texi (Creating Frames):
2883         * doc/emacs/programs.texi (Imenu, Symbol Completion):
2884         * doc/emacs/building.texi (Grep Searching):
2885         * doc/emacs/dired.texi (Operating on Files):
2886         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
2888 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
2890         * loading.texi: Add `define-type' entry for load-history
2892         * doc/lispref/loading.texi (Where Defined): Remove incorrect
2893         cl-defmethod description, and add missing define-type entry.
2895 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2897         Improve doc strings and prompts in xref.el
2899         * lisp/progmodes/xref.el (xref-backend-functions)
2900         (xref-find-definitions): Doc fixes.
2901         (xref-query-replace): Doc fix.  Improve prompts for arguments.
2903 2016-01-09  Alan Mackenzie  <acm@muc.de>
2905         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
2907         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
2908         `font-lock-extend-regions-wholelines' from
2909         `font-lock-extend-region-functions' rather than setting the latter to
2910         nil.
2912 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
2914         Fix coding system for Tramp on OS X.
2916         * lisp/net/tramp-compat.el: Require ucs-normalize.
2918         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
2919         Set coding system to `utf-8-hfs' for Mac OS X.
2921         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
2922         Flush directory properties when needed.
2923         (tramp--test-utf8): Include Chinese file name, again.
2925 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2927         Update 'load-history' docs
2929         * doc/lispref/loading.texi (Where Defined): Update the list of
2930         forms in 'load-history' by adding the forms created for the
2931         'cl-generic' generics.  (Bug#21422)
2933 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
2935         Fix (error ...) error
2937         Problem reported by Glenn Morris in:
2938         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
2939         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
2940         introduced in my Aug 28 change, where I got confused by the
2941         two meanings of (error ...).
2943 2016-01-08  Alan Mackenzie  <acm@muc.de>
2945         Correctly analyze brace arguments in templated C++ function declarations.
2947         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
2948         POS and LIMIT parameters, like the other c-go-list-* functions have.
2950         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
2951         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
2952         followed by template specifiers.
2954 2016-01-08  Glenn Morris  <rgm@gnu.org>
2956         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
2958         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
2960 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
2962         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
2964 2016-01-08  Alan Mackenzie  <acm@muc.de>
2966         Respect fontification region calculated by major mode.  Fixes bug #22316.
2968         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
2969         fontification region has been calculated by a function on
2970         font-lock-extend-after-change-region-function use this region rather than
2971         changing the end position to somewhere else.
2973 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
2975         Improve documentation of Delete Selection mode
2977         * lisp/delsel.el (delete-selection-mode)
2978         (delete-selection-helper): Update and expand the doc strings.
2979         (Bug#22296)
2981         * doc/emacs/mark.texi (Using Region): Document the behavior of
2982         delete commands in Delete Selection mode.  (Bug#22296)
2984         * doc/lispref/markers.texi (The Mark): Document how to add the
2985         support for Delete Selection mode to Lisp programs. (Bug#22296)
2987 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
2989         Fix two project-find-file issues
2991         * lisp/progmodes/project.el (project--value-in-dir):
2992         Temporarily set enable-local-variables to :all.
2993         (project-find-file, project-or-external-find-file):
2994         All autoloads.
2995         (project--find-file-in): Require xref.
2997 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
2999         Clarify doc string of 'dired-current-directory'
3001         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
3002         the return value might not end in a slash when called with the
3003         optional argument non-nil.  (Bug#6273)
3005 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
3007         Use the face of preceding text for displaying the ellipsis
3009         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
3010         text in it->saved_face_id for displaying the ellipsis, and ignore
3011         the face, if any, of the invisible text.  (Bug#22320)
3013 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
3015         Suppress Chinese file name test for OSX in tramp-tests.el
3017         * test/automated/tramp-tests.el (tramp--test-utf8):
3018         Remove instrumentation.  Suppress Chinese file name test for OSX.
3020 2016-01-07  Glenn Morris  <rgm@gnu.org>
3022         * admin/admin.el (set-version): Also handle the NEWS file.
3024 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
3026         apropos-library: Skip obvious duplicates; don't error on generics
3028         * lisp/apropos.el (apropos-library): Skip "was an autoload"
3029         entries, to avoid obvious duplicates.  For each cl-defmethod
3030         entry, take just its function symbol (bug#21422).
3032 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
3034         Add project-find-file and project-or-external-find-file
3036         * lisp/minibuffer.el (completion-category-defaults):
3037         Add `project-file' category.
3039         * lisp/progmodes/project.el (project-find-file)
3040         (project-or-external-find-file): New commands.
3041         (project--find-file-in): New private function.
3043         * lisp/progmodes/xref.el (xref-collect-matches): Use
3044         `expand-file-name' on DIR, to expand the tildes.
3045         (xref--find-ignores-arguments): Extract from
3046         `xref--rgrep-command'.
3048 2016-01-06  Leo Liu  <sdl.web@gmail.com>
3050         Add defvar-local to lisp-imenu-generic-expression
3052         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
3053           defvar-local.
3055 2016-01-06  Leo Liu  <sdl.web@gmail.com>
3057         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
3059         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
3060           Don't declare (indent 1).
3062 2016-01-06  Glenn Morris  <rgm@gnu.org>
3064         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
3066 2016-01-06  Glenn Morris  <rgm@gnu.org>
3068         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
3070         Avoid specifying the length of a time object (it has not been "2"
3071         for some time).
3073 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
3075         Properly encode/decode base64Binary data in SOAP
3077                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
3078                 base64Binary value as utf-8.
3079                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
3081 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
3083         Obey coding-system-for-write when writing stdout/stderr in batch
3085         * src/print.c (printchar_to_stream):
3086         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
3087         a non-nil value, use it to encode output in preference to
3088         locale-coding-system.  See the discussions in
3089         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
3090         for the details.
3092         * doc/lispref/os.texi (Terminal Output): Document how to send
3093         non-ASCII text via 'send-string-to-terminal'.
3094         (Batch Mode): Document how text written to standard streams is
3095         encoded.  Fix inaccuracy regarding which output streams are used
3096         by output functions in batch mode.
3098 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
3100         * doc/misc/efaq.texi (Packages that do not come with Emacs):
3101         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
3102         <chenggao@royau.me> in
3103         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
3105 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
3107         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
3109         Fix backslash.  (Bug#22224)
3111 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
3113         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
3115         Make it actually work.  (Bug#22265)
3117 2016-01-05  Alan Mackenzie  <acm@muc.de>
3119         Remove function wrongly on AWK Mode value of context fontification hook.
3121         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
3122         swap order of entries so that awk's entry isn't superseded by the default.
3124         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
3125         to handle nil value of c-before-context-fontification-functions.
3127 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
3129         * src/buffer.c: Stick with ASCII in doc string.
3131 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
3133         Reword transient-mark-mode doc string
3135         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
3136         The value 'lambda (literally) can be interpreted as (quote lambda),
3137         which is not intended here; we want just the lambda symbol.
3139 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
3141         Update doc string of 'selective-display'
3143         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
3144         using it with the value of 't' is obsolete.  (Bug#1092)
3146 2016-01-05  Alan Mackenzie  <acm@muc.de>
3148         Make C++ buffers writeable when writing their initial text properties.
3150         This is a correction to yesterday's CC Mode patch.
3152         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
3153         c-save-buffer-state around the function rather than a mere `let'.
3155 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
3157         Additional changes for "make check-expensive"
3159         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
3160         Explain make target `check-expensive'.
3162         * etc/NEWS: Mention new make target `check-expensive'.
3164         * test/automated/Makefile.in (check-doit): New target.
3165         (check, check-expensive): Use it.
3167 2016-01-04  Alan Mackenzie  <acm@muc.de>
3169         Apply text properties for <, > in new after-change function (C++ Java Modes).
3171         These are category/syntax-table properties to give < and > paren syntax.
3172         Also apply certain `c-type' text properties to the insides of <..> constructs
3173         to ensure that identifiers contained by them get fontified.  This patch fixes
3174         bug #681.
3176         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
3177         after-change action.
3179         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
3180         change region to include <s and >s which might not be already marked as
3181         parens, rather than just when paren text properties are removed.
3182         (c-restore-<>-properties): New after-change function, which applies text
3183         properties marking < and > with paren syntax.
3185         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
3186         properties are applied to the interiors of <...> constructs, to ensure
3187         fontification of identifiers there.
3189         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
3190         c-restore-<>-properties to this list for C++ and Java.
3192         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
3193         c-before-font-lock-functions, exclude c-restore-<>-properties from the
3194         functions invoked.
3195         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
3196         to allow modification by before-change functions.
3197         (c-after-change): Amend c-new-END here, rather than initializing it and
3198         c-new-BEG.
3200 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3202         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
3204 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3206         Introduce check-expensive tests.
3208         * Makefile.in (check-expensive):
3209         * test/automated/Makefile.in (check-expensive): New target.
3211         * test/automated/auto-revert-tests.el
3212         (auto-revert-test01-auto-revert-several-files):
3213         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
3214         * test/automated/tramp-tests.el (tramp-test26-process-file)
3215         (tramp-test27-start-file-process, tramp-test28-shell-command)
3216         (tramp-test29-vc-registered)
3217         (tramp-test31-special-characters-with-stat)
3218         (tramp-test31-special-characters-with-perl)
3219         (tramp-test31-special-characters-with-ls)
3220         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
3221         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
3222         (tramp-test35-unload): Tag the tests as :expensive-test.
3224 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3226         shr-tag-video bug fix
3228         * shr.el (shr-tag-video): Protect against the `poster' being
3229         empty.
3231 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3233         Minor fixes in tramp-tests.el
3235         * test/automated/tramp-tests.el (tramp-test26-process-file):
3236         Move point properly.
3237         (tramp-test29-vc-registered): Work with relative file names.
3239 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3241         Ensure redisplay when 'truncate-lines' is set
3243         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
3244         (Bug#22303)
3246 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3248         Fix a doc string of 'transient-mark-mode'
3250         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
3251         "lambda" in doc string from becoming a link to lambda expressions.
3253 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3255         MS-Windows followup to latest gnulib update
3257         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
3259 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3261         Spelling fix
3263 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3265         Do secure signed Bcc handling
3267         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
3268         (bug#18718).
3270 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
3272         Avoid stdio in SIGINT handler
3274         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
3275         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
3276         * lib/ignore-value.h: New file, from gnulib.
3277         * src/keyboard.c: Include it.
3278         (write_stdout, read_stdin): New functions.
3279         (handle_interrupt): Use them instead of printf and getchar,
3280         and avoid fflush when handling signals.
3282 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
3284         * doc/misc/texinfo.tex: Revert unwanted copyright change.
3286 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
3288         * lisp/align.el (align): Simplify a lambda
3290         * lisp/align.el (align): Fix arg order in call to `align-region'
3292 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
3294         Fix compilation next-error in buffers with selective-display
3296         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
3297         function.
3298         (compilation-internal-error-properties)
3299         (compilation-next-error-function, compilation-set-window): Use
3300         it.  (Bug#1092)
3302 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3304         * nsm.el (nsm-check-protocol): Fix typo in the message.
3306 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3308         Add SHA1 warnings for high network security settings
3310         * nsm.el (nsm-check-protocol): When using high security, warn
3311         about SHA1 certificates, which are now believed to be open to
3312         spoofing.
3314 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3316         Refactor mml-smime.el, mml1991.el, mml2015.el
3318         (Maybe this is the last merge from Gnus git to Emacs git)
3320         Cf. discussion on ding mailing list, messages in
3321         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
3322         Common code from the three files mml-smime.el, mml1991.el, and
3323         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
3324         to gnus-util.el.
3326         The code is supported by test cases with necessary test keys.
3328         Documentation in message.texi is updated.
3330         * doc/misc/message.texi (Security, Using S/MIME):
3331         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
3332         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
3333         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
3335         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
3336         New functions.
3338         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
3339         (epa--select-keys): Autoload.
3340         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
3341         (mml-secure-openpgp-signers): New user option;
3342         make mml1991-signers and mml2015-signers obsolete aliases to it.
3343         (mml-secure-smime-signers): New user option;
3344         make mml-smime-signers an obsolete alias to it.
3345         (mml-secure-openpgp-encrypt-to-self): New user option;
3346         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
3347         aliases to it.
3348         (mml-secure-smime-encrypt-to-self): New user option;
3349         make mml-smime-encrypt-to-self an obsolete alias to it.
3350         (mml-secure-openpgp-sign-with-sender): New user option;
3351         make mml2015-sign-with-sender an obsolete alias to it.
3352         (mml-secure-smime-sign-with-sender): New user option;
3353         make mml-smime-sign-with-sender an obsolete alias to it.
3354         (mml-secure-openpgp-always-trust): New user option;
3355         make mml2015-always-trust an obsolete alias to it.
3356         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
3357         New user options.
3358         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
3359         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
3360         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
3361         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
3362         (mml-secure-passphrase-callback, mml-secure-check-user-id)
3363         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
3364         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
3365         (mml-secure-fingerprint, mml-secure-filter-keys)
3366         (mml-secure-normalize-cust-name, mml-secure-select-keys)
3367         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
3368         (mml-secure-self-recipients, mml-secure-recipients)
3369         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
3371         * lisp/gnus/mml-smime.el: Require epg;
3372         refactor declaration and autoloading of epg functions.
3373         (mml-smime-use): Doc fix.
3374         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
3375         Obsolete.
3376         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
3377         Use format instead of gnus-format-message.
3378         (mml-smime-epg-secret-key-id-list): Remove variable.
3379         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
3380         (mml-smime-epg-find-usable-secret-key): Remove functions.
3381         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
3383         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
3384         (mml1991-passphrase-cache-expiry): Obsolete.
3385         (mml1991-epg-secret-key-id-list): Remove variable.
3386         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
3387         (mml1991-epg-find-usable-secret-key): Remove functions.
3388         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
3390         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
3391         (mml2015-passphrase-cache-expiry): Obsolete.
3392         (mml2015-epg-secret-key-id-list): Remove variable.
3393         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
3394         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
3395         (mml2015-epg-find-usable-secret-key): Remove functions.
3396         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
3397         (mml2015-epg-encrypt): Refactor.
3399 2016-01-02  Glenn Morris  <rgm@gnu.org>
3401         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
3403         Explicitly ignore case.  (Bug#22262)
3405 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
3407         (semantic-symref-derive-find-filepatterns): Return a list
3409         * lisp/cedet/semantic/symref/grep.el
3410         (semantic-symref-derive-find-filepatterns): Return a list.
3411         (semantic-symref-perform-search): Quote the result here once and for all.
3413 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3415         Fix xref-find-references on MS-Windows
3417         * lisp/cedet/semantic/symref/grep.el
3418         (semantic-symref-derive-find-filepatterns): Use
3419         'shell-quote-argument' instead of manually quoting in a way that
3420         only works with Posix shells.  (Bug#22289)
3422 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3424         Document new features of tildify-mode
3426         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
3427         (tildify-mode): Spelling fixes in doc strings.
3429         * etc/NEWS: Reformat the tildify-mode entry.
3431 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3433         Document new features of Whitespace mode
3435         * doc/emacs/display.texi (Useless Whitespace): Document
3436         'whitespace-toggle-options' and the new 'big-indent' style.
3437         Document 'whitespace-big-indent-regexp'.  Document the Global
3438         Whitespace mode.
3440 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3442         Improve documentation of new Hide-IfDef features
3444         * etc/NEWS: Expand and reword Hide-IfDef section.
3446 2016-01-02  Leo Liu  <sdl.web@gmail.com>
3448         Fix regression in font-locking cl-assert and cl-check-type
3450         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
3451           el-errs-re.
3453 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3455         Spelling and grammar fixes
3457 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3459         Fix copyright years by hand
3461         These are dates that admin/update-copyright did not update, or
3462         updated incorrectly.
3464 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3466         Update copyright year to 2016
3468         Run admin/update-copyright.
3470 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3472         Merge from gnulib
3474         This mostly just updates copyright dates of gnulib files.
3475         It also updates to the latest version of texinfo.tex.
3477 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
3479         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
3481 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
3483         Port chart.el methods to cl-generic.
3485         cl-call-next-method cannot be used inside EIEIO's defmethod.
3486         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
3487         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
3488         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
3489         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
3490         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
3491         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
3493 2015-12-31  Brian Burns  <bburns.km@gmail.com>
3495         Add nt/INSTALL.W64 build instructions
3497         * nt/INSTALL.W64: New file.
3498         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
3500 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
3502         Add new input method 'programmer-dvorak'
3504         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
3505         input method.
3507         * etc/NEWS: Mention it.
3509 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
3511         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
3513         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
3514         original M-TAB binding in a buffer-local variable.
3515         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
3516         if that is recorded, when point is in a place where flyspell
3517         should not be active (e.g., because the user turned on
3518         'flyspell-prog-mode').  (Bug#18533)
3520 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
3522         Fix EWW rendering of long RTL lines
3524         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
3525         of the selected window before filling its lines.  (Bug#22250)
3527 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3529         fix  bug#21054
3531         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
3533 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3535         Clean up cairo printing code
3537         * src/gtkutil.c (xg_get_page_setup): Use listn.
3538         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
3539         decode_window_system_frame and FRAME_VISIBLE_P.
3540         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
3541         of Fdisplay.
3542         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
3543         instead of Fdisplay.  Temporarily unblock_input around QUIT.
3545 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3547         Add handle_user_signal_hook
3549         * src/keyboard.h (handle_user_signal_hook): New declaration.
3550         * src/keyboard.c (handle_user_signal_hook): New variable.
3551         (handle_user_signal): Call it.
3553 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3555         Avoid writing to purespace
3557         * src/alloc.c (Fmake_string): Don't write to empty string contents.
3558         (allocate_vector): Don't write to empty vector size.
3559         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
3560         Don't call unnecessary XSETCAR or XSETCDR.
3561         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
3562         write to empty string size_byte.
3564 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3566         Remove unused variable
3568         * lisp/international/mule-cmds.el: Remove unused variable
3569         `mac-system-coding-system'.
3571 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3573         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
3575 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3577         Use posix_openpt instead of openpty on Darwin
3579         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
3580         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
3581         Darwin-specific definitions.  Use posix_openpt instead.
3583 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
3585         Document support for ':documentation' in Lisp mode
3587         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
3588         (lisp-string-after-doc-keyword-p)
3589         (lisp-font-lock-syntactic-face-function): Add doc strings.
3591 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
3593         Document new features of TeX mode
3595         * doc/emacs/text.texi (TeX Print): Document
3596         'tex-print-file-extension'.
3597         * doc/emacs/programs.texi (Misc for Programs): Document support
3598         for Prettify Symbols mode in TeX mode.
3600 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3602         Clarify docs of hscroll in RTL text
3604         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
3605         meaning of a window's horizontal scroll amount for RTL paragraphs.
3607 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3609         Fix rendering of HTML pages that use character composition
3611         * src/indent.c (Fvertical_motion): Fix the case when point starts
3612         in the middle of a composition, as in shr-vertical-motion.
3613         (Bug#22250)
3615 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3617         Avoid some compiler warnings in w32.c
3619         * src/w32.c (codepage_for_filenames, crlf_to_lf)
3620         (ansi_encode_filename, socket_to_fd, sys_write)
3621         (check_windows_init_file): Avoid compiler warnings about
3622         differences in pointer signedness.
3624 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
3626         Undo ill-advised change
3628         * lisp/progmodes/xref.el (xref-collect-matches): Undo
3629         ill-advised change.  The hits come in the order that `find'
3630         produces them in, which isn't alphabetical.
3632 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
3634         Unbreak completion in python-mode buffers
3636         * lisp/progmodes/python.el (python-shell-completion-at-point):
3637         Unbreak in python-mode buffers.
3639 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
3641         Adding example replies to bug-triage.
3643         * admin/notes/bug-triage: Added example replies. Also, as requested,
3644           making the process notes into more of a checklist.
3646 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
3648         Rename the notes/admin/triage file to bug-triage.
3650         * CONTRIBUTE: Change reference to the triage file name.
3651         * admin/notes/triage: Rename file to admin/notes/bug-triage.
3653 2016-01-07  Glenn Morris  <rgm@gnu.org>
3655         Allow creation of loaddefs files without timestamps.
3657         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
3658         (autoload-generate-file-autoloads, update-directory-autoloads):
3659         If autoload-timestamps is nil, write "t" instead of file timestamp.
3660         (autoload-find-destination, update-directory-autoloads):
3661         If timestamp is "t", use the modtime of the output file instead.
3663 2016-01-06  Glenn Morris  <rgm@gnu.org>
3665         Doc tweaks.
3667         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
3668         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
3669         (calendar-iso-from-absolute):
3670         * lisp/calendar/cal-tex.el (cal-tex-comment):
3671         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
3673 2016-01-06  Glenn Morris  <rgm@gnu.org>
3675         Build tweaks related to tags files.
3677         * lib-src/Makefile.in (tagsfiles): New variable.
3678         (TAGS): Also depend on the source files.  Use our own etags program.
3679         * lisp/Makefile.in (ETAGS): Add EXEEXT.
3680         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
3681         Remove.
3682         (tagsfiles): New, replacing lisptagsfiles1 etc.
3683         Remove irrelevant source files here rather than in the TAGS rule.
3684         (${ETAGS}): New rule.
3685         (TAGS): Also depend on the etags executable.
3686         * lwlib/Makefile.in (EXEEXT): New, set by configure.
3687         (ETAGS): Add EXEEXT.
3688         (${ETAGS}): New rule.
3689         (ctagsfiles): Use "wildcard".
3690         (TAGS): Also depend on the etags executable.
3691         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
3692         (${ETAGS}): New rule.
3693         (TAGS): Fix dependencies.
3694         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
3695         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
3696         Remove "-t" argument.
3697         (${ETAGS}): New rule.
3698         (tagsfiles): New variable.
3699         (TAGS): New rule, with proper dependencies.
3700         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
3701         (ctagsfiles1, ctagsfiles2): Use "wildcard".
3702         (ctagsfiles3): Remove.
3703         (TAGS): Depend on etags.
3704         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
3705         directories decide if updates are needed.
3707 2016-01-06  Glenn Morris  <rgm@gnu.org>
3709         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
3711 2016-01-06  Glenn Morris  <rgm@gnu.org>
3713         * test/lisp/emacs-lisp/package-tests.el
3715         (package-test-macro-compilation): Fixup branch merge.
3717 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
3719         Fix fallout from merging emacs-25 branch in test/
3721         * .gitignore: Update for the new place of biditest.txt.
3722         * test/automated/: Directory removed.  All files moved to their
3723         proper places.
3724         * test/etags/: Directory removed.  All files moved to their proper
3725         places.
3726         * test/automated/url-parse-tests.el: File removed; it was an exact
3727         copy of the same file in test/lisp/url/.
3728         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
3730 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3732         Spelling fixes.
3734 2016-01-04  Daniel Colascione  <dancol@dancol.org>
3736         Let users disable unsafe signal handling code
3738         * src/keyboard.c (syms_of_keyboard): New user variables
3739         `attempt-stack-overflow-recovery' and
3740         `attempt-orderly-shutdown-on-fatal-signal'.
3741         * src/sysdep.c (stack_overflow): Check
3742         `attempt-stack-overflow-recovery'.
3743         * src/emacs.c (terminate_due_to_signal): Check
3744         `attempt-orderly-shutdown-on-fatal-signal'.
3746 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
3748         * configure.ac: Add error message for gfile on Nextstep.
3750 2016-01-03  John Wiegley  <johnw@newartisans.com>
3752         Merge branch 'emacs-25-merge'
3754 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3756         Align textually on fix done for emacs-25 branch for bug#21054
3758         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
3759         and useless `(if t ...)' in order to align textually on fix done for
3760         emacs-25 branch for bug#21054.
3762 2016-01-02  K. Handa  <handa@gnu.org>
3764         support rendering of wider range of combinging characters by ftfont backend
3766         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
3767         supports rendering of combining characters, call
3768         font-shape-gstring.
3770         * src/font.c (Ffont_get): Handle `combining-capability' property.
3771         (syms_of_font): New symbol ":combining-capability'.
3773         * src/font.h (struct font_driver): New member combining_capability.
3775         * src/ftfont.c: Include "category.h".
3776         (ftfont_driver): Initialize combining_capability to
3777         ftfont_combining_capability.
3778         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
3779         FLT in advance.
3780         (ftfont_combining_capability): New function.
3782 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
3784         Add notes on bug triage procedure
3786         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
3787         * admin/notes/triage: New file explaining triage procedure.
3789 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3791         Correct ses-rename-cell cursor-intangible text prop updating.
3793         There were two problems:
3795         - First ses-rename-cell has to work when called non interactively
3796           (with non-nil CELL argument), so in this case the start pos of
3797           put-text-property cannot be plainly (point), you need a
3798           ses-goto-print call before
3800         - Second, the range itself was computed erronously, only the first
3801           char was affected instead of the full cell width. This was not
3802           noticeable prior to changes (Deprecate `intangible' and
3803           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
3805         * lisp/ses.el (ses-rename-cell): Correct computation of position range
3806         to which the 'cursor-intangible text property has to be set to cell
3807         new name.
3809 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3811         Don't fake empty cells value by "" when printing with a lambda.
3813         When using a lambda expression printer function the user should be
3814         free to format differently a really empty cell, ie. containing nil,
3815         from a cell containing an empty string "".
3817         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
3818         in the case of a lambda expression printer function.
3820         * ses.texi (Printer functions): Add example and description about
3821         lambda expression printer function handling all the possible values,
3822         including unexpected ones.
3824 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3826         Quick temporary hack to fix curcell refreshing.
3828         The problem was caused by change: 2015-04-13 Deprecate `intangible'
3829         and `point-entered' properties. The problem is that this change has
3830         removed the (setq ses--curcell t) setting in the ses-command-hook
3831         function.
3833         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
3834         a condition to call function `ses-set-curcell'. Comment this as a quick
3835         temporary hack to make it work, as I don't know yet whether a definite
3836         correction would be to make the ses-set-curcell at every ses-check-curcell,
3837         or to revert to the previous approach, ie marking ses--curcell as out-of-date
3838         at every potentially cursor motion command.
3840 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3842         Restrictive URL checking tweaks
3844         * lisp/net/eww.el (eww): Check whether the domain is
3845         restrictive instead of the string
3846         (http://македонија.icom.museum is restrictive even if each
3847         part is from a different script).
3849 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3851         New function `puny-highly-restrictive-domain-p'
3853         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
3854         (puny-highly-restrictive-domain-p): New function.
3856 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3858         eww build fix (require puny)
3860 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3862         Transform non-restrictive domains to punycode for display
3864         * lisp/net/eww.el (eww): Check whether the domain is Highly
3865         Restrictive in the Unicode IDNA sense.
3867 2015-12-30  John Wiegley  <johnw@newartisans.com>
3869         Merge emacs-25 into master (using imerge)
3871 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3873         Fix typos in CC Mode manual
3875         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
3876         typos.  (Bug#22267)
3878 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3880         Avoid assertion violations in compact_font_cache_entry
3882         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
3883         avoid assertion violation in ASIZE.  (Bug#22263)
3885 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3887         Fix filling text with bidirectional characters in shr.el
3889         * lisp/net/shr.el (shr-insert-document): Bind
3890         bidi-display-reordering to nil while filling lines.  This is
3891         required for when a line includes characters whose bidi
3892         directionality is opposite to the base paragraph direction,
3893         because columns are counted in the logical order.  (Bug#22250)
3895 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3897         Further Unicode restrictive fixups
3899         * puny.el (puny-highly-restrictive-p): Include the extra
3900         identifier characters from table 3.
3902 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
3904         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
3906 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
3908         Sync with Tramp 2.2.13
3910         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
3912         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
3913         Use `tramp-compat-funcall'.
3915         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
3916         Make `split-string' call compatible with older Emacsen.
3918         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
3920 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
3922         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
3924 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3926         Mention that tls.el is secure by default, and will fail
3928 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3930         Make tls.el use trustfiles by default
3932         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
3933         (open-tls-stream): Insert the trustfile by looking at
3934         `gnutls-trustfiles'.
3936 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3938         Refactor out gnutls-trustfiles
3940         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
3942 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3944         Remove --insecure from gnutls-cli invocation
3946         * tls.el (tls-program): Default to using secure TLS
3947         connections (bug#19284).
3949 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3951         Add a new function to say whether a string is restrictive
3953         * puny.el (puny-highly-restrictive-p): New function.
3955 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
3957         Spelling fix
3959 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
3961         Port report-emacs-bug to deterministic builds
3963         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
3964         recent "built on" change to deterministic builds where
3965         emacs-build-system will be nil.  See:
3966         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
3968 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
3970         Fix URL auth error message
3972         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
3973         message more correct (bug#20069).
3975 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3977         Mention the new puny.el library
3979 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3981         IDNA-related fixes for the URL library
3983         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
3984         the Host: header.
3986         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
3987         domain names, but leave them as UTF-8, so that they can be
3988         IDNA-encoded later when contacting the host.
3990 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3992         IDNA-encode all domain names in `open-network-stream'
3994         * network-stream.el (open-network-stream)
3995         (network-stream-open-plain, network-stream-open-starttls):
3996         IDNA-encode all domain names, if needed.
3998 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4000         Fix puny-encoding all-non-ASCII domains
4002         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
4004 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4006         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
4008 2015-12-28  Tom Tromey  <tom@tromey.com>
4010         set :safe on css-indent-offset
4012         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
4014 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4016         * eww.el (eww-mode): Remove superfluous bidi reset.
4018 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
4020         Make chunked encoding trailer detection more compliant
4022         * lisp/url/url-http.el
4023         (url-http-chunked-encoding-after-change-function): Make
4024         trailer detection more compliant (bug#16345).
4026 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4028         Reconnect erc even on server errors
4030         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
4031         reconnect even if a server error has occurred (bug#18527).
4033 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4035         Fix punycode short circuit logic
4037         * puny.el (puny-encode-domain): Fix short-circuit logic.
4039 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
4041         Fix Bug#10873 in `report-emacs-bug'
4043         * lisp/mail/emacsbug.el (report-emacs-bug): If
4044         `report-emacs-bug-no-explanations' is nil, make sure we can show
4045         mail and warnings buffer on this frame (Bug#10873).
4047 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4049         IDNA speed up
4051         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
4053 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4055         Add IDNA domain encode/decode functions
4057         * puny.el (puny-decode-domain): New function.
4058         (puny-encode-domain): Ditto.
4059         (puny-decode-digit): Fix digit decoding error.
4061 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4063         Rename idna.el to puny.el
4065         * puny.el: Renamed from idna.el to avoid name collisions with
4066         the external idna.el library.
4068 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4070         Always reset the bidi direction
4072         * eww.el (eww-display-html): Always reset the bidi direction
4073         to `left-to-right' (bug#22257).
4075 2015-12-28  Alan Mackenzie  <acm@muc.de>
4077         Allow line comments ending with escaped NL to be continued to the next line.
4079         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
4081         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
4082         (forw-comment, back-comment): On encountering an end of comment character,
4083         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
4085         * doc/lispref/syntax.texi (Control Parsing): Describe
4086         `comment-end-can-be-escaped'.
4088         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
4090         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
4092 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
4094         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
4096         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
4097         Don't use split-string with 4th arg for old Emacsen compatibility.
4099 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
4101         Rename project-library-roots to project-external-roots
4103         * lisp/progmodes/project.el (project-library-roots): Rename to
4104         project-external-roots.
4105         (project-library-roots-function): Rename to
4106         project-vc-external-roots-function.  Only use it in the VC
4107         backend, for now.  Update project-external-roots accordingly.
4108         (project-vc-library-roots): Remove.
4109         (project-or-libraries-find-regexp):
4110         Rename to project-or-external-find-regexp.
4112         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
4113         Rename to elisp-load-path-roots.
4115         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
4116         an anonymous function for the default value of
4117         project-vc-external-roots-function.
4119 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4121         * idna.el (idna-decode-string-internal): Implement decoding.
4123 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4125         Further IDNA tweaks
4127         (idna-encode-string): Make idna-encode-string safe for
4128         non-ASCII use.
4130 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4132         Clean up the code slightly
4134 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4136         Added basic idna encoding support
4138         * lisp/net/idna.el: New file.
4140 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
4142         Disconnection fixes for erc
4144         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
4145         reconnect if the user has disconnected explicitly (bug#4589).
4147 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
4149         Further erc asynch fixes
4151         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
4152         erc-server-connect to return even if the connection is not
4153         ready.  Then erc-open and erc-server-reconnect do the
4154         same. (bug#5650).
4156 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
4158         Make erc connect asynchronously
4160         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
4161         reconnect asynchronously.
4163         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
4165 2015-12-27  Deniz Dogan  <deniz@dogan.se>
4167         Clear erc user list upon disconnection
4169         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
4170         lists upon disconnection.  This prevents invalid channel
4171         user lists when reconnecting (bug#10947).
4173 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4175         Don't bug out in erc after waking from sleep
4177         * erc-backend.el (erc-server-send-ping): If the server has
4178         closed connection, this may already have been detected and
4179         `erc-server-last-received-time' has been set to nil (bug#13608).
4181 2015-12-27  David Edmondson  <dme@dme.org>
4183         Proxy error in erc with multiple clients
4185         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
4186         generated when multiple IRC clients talk to a single IRC proxy
4187         (bug#19034).
4189 2015-12-27  Dima Kogan  <dima@secretsauce.net>
4191         Ensure that we don't have several timers in erc
4193         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
4194         for existing timers in the alist before adding new ones.  If a
4195         timer already exists, it is cancelled and
4196         overwritten. (bug#19292).
4198 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4200         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
4201         (bug#18718).
4203 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4205         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
4206         at the start of the buffer, not at the end (bug#20496).
4208 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4210         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
4212 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4214         Don't join erc channels doubly
4216         * erc-join.el (erc-autojoin-channels): Don't join channels
4217         more than once (if you have several nicks) (bug#20695).
4219 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
4221         Avoid leaving "ghost" of mouse pointer on MS-Windows
4223         * src/w32term.c (frame_set_mouse_pixel_position):
4224         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
4225         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
4226         * src/w32term.c (frame_set_mouse_pixel_position): Include
4227         w32common.h.
4229 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4231         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
4233 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4235         Identify unsafe combinations of Bcc and encryption
4237         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
4238         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
4239         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
4241 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
4243         Fix auth source lookups from erc with port numbers
4245         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
4246         numbers (bug#20541).
4248 2015-12-27  Fran Litterio  <flitterio@gmail.com>
4250         Run erc-kill-channel-hook always on exit
4252         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
4253         when erc-kill-queries-on-quit is set (bug#21187).
4255 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4257         Spelling fix
4259         * test/automated/url-parse-tests.el:
4260         (url-generic-parse-url/same-document-reference):
4261         Rename from url-generic-parse-url/same-decument-reference.
4263 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4265         Reword initial *scratch* for brevity, appearance
4267         * lisp/startup.el (initial-scratch-message):
4268         Reword to avoid apostrophes, and to make it shorter.
4269         See the thread starting in:
4270         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
4272 2015-12-26  Leo Liu  <sdl.web@gmail.com>
4274         Add ert-deftest to lisp-mode.el
4276         * lisp-mode.el (lisp-imenu-generic-expression,
4277           lisp-el-font-lock-keywords-1): Add ert-deftest.
4279 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
4281         Mark imap changes as not needing doc changes
4283         * imap.el (imap-ssl-open): Remove
4285 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
4287         Use built-in encryption in imap.el
4289         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
4290         (imap-starttls-open): Use open-network-stream instead of starttls.el.
4291         (imap-tls-open): Use open-network-stream instead of tls.el.
4293 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4295         Don't try using /bin/sh in artist.el on MS-Windows
4297         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
4298         New function.
4299         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
4300         (Bug#20167)
4302 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
4304         Always define gmalloc etc. in src/gmalloc.c
4306         This is a work-around to prevent the compiler from using semantic
4307         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
4308         with -O2 replaces most of calloc's definition by a call to calloc;
4309         see Bug#22085.
4310         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
4311         (aligned_alloc, free): Do not undef.  Instead, define these as
4312         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
4314 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4316         Fix documentation of browse-url browser-related functions
4318         * lisp/net/browse-url.el (browse-url)
4319         (browse-url-default-browser, browse-url-default-windows-browser)
4320         (browse-url-default-macosx-browser, browse-url-chromium)
4321         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
4322         and NEW-WINDOW arguments in these functions.  (Bug#19421)
4324 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4326         Propagate Bug#14412 fix to backtrace_eval_unrewind
4328         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
4329         becomes accurate again. This shouldn’t affect behavior.
4330         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
4332 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4334         Don't produce non-ASCII characters in *scratch*
4336         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
4337         avoid producing non-ASCII characters in the *scratch* buffer's
4338         commentary.
4340 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4342         Document changes in 'compare-windows'
4344         * lisp/vc/compare-w.el (compare-windows-removed)
4345         (compare-windows-added): Doc fix.
4347         * doc/emacs/files.texi (Comparing Files): Document the changes in
4348         window selection by 'compare-windows'.
4350 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4352         Document 'vc-annotate-background-mode'
4354         * doc/emacs/maintaining.texi (Old Revisions): Document
4355         'vc-annotate-background-mode'.
4357 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4359         Document 'vc-region-history'
4361         * doc/emacs/maintaining.texi (VC Change Log): Document
4362         'vc-region-history'.
4364 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4366         Improve documentation of 'vc-push'
4368         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
4369         improve the documentation of 'vc-push'.
4371         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
4373 2015-12-26  Alain Schneble  <a.s@realize.ch>
4375         Include the tests for the URL parsing fixes
4377 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4379         Document 'url-user-agent'.
4381         * lisp/url/url-http.el (url-user-agent): Move from here...
4382         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
4383         keep all the URL defcustoms in one place, and also have it defined
4384         whenever the URL library is loaded.
4386         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
4388 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4390         Document protocols supported by URL library via Tramp
4392         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
4393         supported via Tramp.
4394         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
4395         Tramp.
4397 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4399         Document changes in Shell-script mode
4401         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
4402         the 'sh-shell' file-local variable.
4403         (top level): Add an auto-load form to avoid byte-compiler warning
4404         about 'comint-send-string'.
4406 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4408         Fix documentation of 'ses-define-local-printer'
4410         * doc/misc/ses.texi (Printer functions): Fix whitespace between
4411         sentences and punctuation.  Add an index entry for
4412         'ses-define-local-printer'.
4414 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
4416         Document 'ert-summarize-tests-batch-and-exit'
4418         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
4419         'ert-summarize-tests-batch-and-exit'.
4421 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4423         Avoid assertion violation in unbind_to
4425         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
4426         if we get here with an object that is not a symbol.  (Bug#14412)
4428 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
4430         Don't treat /foo/bar:mumble as ange-ftp address
4431         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
4432         only in the first component.  (bug#5362)
4434 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4436         Make sure *scratch* etc. use forward slashes in its default-directory
4438         * lisp/startup.el (normal-top-level): On MS-Windows, convert
4439         backslashes to forward slashes while decoding default-directory
4440         of the initially-created buffers.
4442 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4444         Restore info about the build host in bug reports
4446         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
4447         which Emacs was built.  This is important information for
4448         investigating bug reports reported by users who don't build their
4449         Emacs.
4451 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4453         Fix bootstrap broken by changes related to OS X file-name encoding
4455         * lisp/international/ucs-normalize.el (eval-when-compile): Make
4456         sure char-code-property-alist includes elements that allow access
4457         to 'decomposition' and 'canonical-combining-class' Unicode
4458         properties, as compiling ucs-normalize.el requires that.
4459         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
4460         only of charprop.el was already loaded.
4462         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
4463         New order-only dependency.
4465 2015-12-25  Leo Liu  <sdl.web@gmail.com>
4467         * lisp/ido.el (ido-add-virtual-buffers-to-list):
4468         Use bookmark-get-filename.
4470 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
4472         Make tramp-test29-vc-registered more robust
4474         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
4475         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
4476         Remove instrumentation.
4478 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4480         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
4482 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
4484         Fix `gnus-union' so as to behave like `cl-union'
4486         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
4487         Make gnus-union use `equal' to compare items in lists.
4489         * lisp/gnus/gnus-util.el (gnus-union):
4490         Make it behave like cl-union partially.
4492 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
4494         Fix dired.c typo with ptrdiff_t vs Lisp_Object
4496         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
4497         an integer type, fixing a problem introduced in the recent fix for
4498         Bug#22169.
4500 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
4502         Document default process sentinel more prominently
4504         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
4505         defaults for process filter and sentinel.  Provide cross-references.
4506         (Process Information): Provide cross-references to where filters
4507         and sentinels are described.
4508         (Filter Functions): Add an index entry for "default filter".
4509         (Sentinels): Add a few status messages not documented previously.
4510         Resolve the "killed" confusion.  Document and describe the default
4511         sentinel.  (Bug#22220)
4513 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
4515         Fix file-name completion on OS X
4517         * src/dired.c (file_name_completion): Reject false matches due to
4518         file-name-coding-systems that decompose characters when encoding
4519         file names, by comparing decoded file names as well.  (Bug#22169)
4520         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
4522         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
4523         non-nil 'decomposed-characters' property.
4525 2015-12-23  Anders Lindgren  <andlind@gmail.com>
4527         File-name completion of non-ASCII characters on OS X (bug#22169)
4529         The coding system `utf-8-nfd', locally defined in ns-win.el,
4530         didn't provide a :pre-write-conversion method, causing file name
4531         completion of non-ASCII characters to fail.  Solved by using the
4532         `utf-8-hfs' coding system provided by `ucs-normalize'.
4534         * lisp/loadup.el: Load international/ucs-normalize (when building
4535         for ns).
4537         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
4538         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
4539         as the file name coding system.
4541         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
4543 2015-12-22  Tom Tromey  <tom@tromey.com>
4545         Fix bug #18588 by making bug-reference-bug-regexp more lenient
4547         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
4548         "bug NNNN".  (Bug #18588)
4550 2015-12-22  Tom Tromey  <tom@tromey.com>
4552         add some cl-* aliases to lisp-mode imenu
4554         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
4555         cl-defgeneric, and cl-defmethod.
4557 2015-12-22  Tom Tromey  <tom@tromey.com>
4559         Make a variable buffer-local
4561         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
4562         font-lock-syntax-table buffer-local.  (Bug #21627)
4564 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
4566         Fix decoding of text in URLs retrieved by EWW
4568         * lisp/net/eww.el (eww-render): Pass 'charset' to
4569         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
4570         non-nil, to set 'buffer-file-coding-system' of the buffer where we
4571         show the URL.
4572         (eww-display-html, eww-display-raw): Decode the text correctly,
4573         using the charset found in the headers, and defaulting to UTF-8.
4574         If the user told us to use a specific encoding, override the
4575         charset from the headers.  (Bug#22222)
4577 2015-12-22  Alan Mackenzie  <acm@muc.de>
4579         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
4581         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
4582         variable `tmp'.
4583         After a failed search for a matching ">", restore point before continuing.
4585 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
4587         Instrument Tramp tests
4589         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
4590         (tramp--test-utf8): Instrument tests.
4592 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
4594         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
4596         * lisp/simple.el (display-message-or-buffer): Call
4597         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
4598         (Bug#22221).
4600 2015-12-21  Juri Linkov  <juri@linkov.net>
4602         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
4604         (save-places-to-alist, save-place-dired-hook):
4605         Check for dired-subdir-alist.  (Bug#19851)
4607 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
4609         Add FIXME comment re stack overflow and modules
4611 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
4613         Revert some recent emacs-module commentary
4615         Most of the recently-added commentary was incorrect, due to the
4616         possibility of stack overflow.
4618 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
4620         Spelling fix: prefer "cooperate" to "co-operate"
4622 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
4624         Port undo fixes to -fno-common
4626         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
4627         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
4628         (buffer_before_last_command_or_undo):
4629         Declare in keyboard.h, and define in keyboard.c,
4630         instead of assuming the traditional Unix relaxed ref-def linkage.
4632 2015-12-20  Philipp Stephani  <phst@google.com>
4634         Improve commentary for emacs-module.c
4636         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
4637         * src/emacs-module.c (module_non_local_exit_get): Document that we
4638         cannot use the current implementation.
4639         (module_is_not_nil, module_eq): Document assumptions about EQ and
4640         NILP.
4642 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
4644         Suppress test on Mac OS X
4646         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
4647         (tramp--test-utf8): Use it.
4649 2015-12-20  Alan Mackenzie  <acm@muc.de>
4651         Merge branch 'scratch/follow' into emacs-25
4653         This allows Isearch, etc., to work well when Follow Mode is active.
4655 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
4657         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
4658         Improve check.
4660 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4662         Fix last commit
4664         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
4665         with numeric argument.
4667 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4669         Document new features of Rmail
4671         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
4672         Document new behavior of 'd' and 'C-d' with numeric argument.
4673         (Rmail Display): Document the rendering of HTML MIME parts.
4675 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4677         Improve documentation of new cl-lib functions
4679         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
4680         Fix wording.
4682 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4684         Document the new feature of 'minibuffer-with-setup-hook'
4686         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
4687         added to `minibuffer-setup-hook'.
4689 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4691         Document new features of Font Lock
4693         * doc/lispref/modes.texi (Other Font Lock Variables): Document
4694         'font-lock-flush-function' and 'font-lock-ensure-function'.
4695         (Font Lock Basics): Document the basic fontification functions
4696         referenced in "Other Font Lock Variables".
4698         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
4700 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4702         Document new features of Rectangle mode
4704         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
4705         rectangle-mark-mode.
4707 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4709         Manual followup to last change
4711         * doc/lispref/display.texi (Displaying Messages): Sync with the
4712         doc string.  (Bug#22210)
4714 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4716         Clarify doc string of 'display-message-or-buffer'
4718         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
4719         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
4721 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4723         * doc/emacs/emacs.texi (Top): Update top-level menus.
4725         * doc/lispref/elisp.texi (Top): Update top-level menus.
4727 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4729         Document how to avoid file-local variables that aren't
4731         * doc/emacs/custom.texi (Specifying File Variables): Describe how
4732         to prevent Emacs from interpreting unrelated text as file-local
4733         variables.  (Bug#22166)
4735 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
4737         Fix a typo in eterm-color's termcap entry
4739         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
4740         entry.  (Bug#22184)
4742 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4744         Allow 'browse-url-emacs' visit non-existent URLs
4746         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
4747         signal an error if VISIT is non-nil, to more faithfully emulate
4748         the behavior of 'insert-file-contents'.  (Bug#22160)
4750 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
4752         Remove SunOS 4.x cruft
4754         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
4755         * lib-src/pop.c [sun]: Remove no-longer-needed include.
4756         * lwlib/xlwmenu.c (SUNSO41): Remove.
4758 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
4760         Merge from gnulib
4762         This mostly commentary fixes.
4763         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
4764         * lib/gnulib.mk: Regenerate with new gnulib-tool.
4766 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
4768         Minor fixes in Tramp
4770         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
4771         Reorder ls arguments.
4773         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
4775 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
4777         Make tramp a built-in package
4779         * lisp/finder.el (finder-compile-keywords): Update
4780         `package--builtins' also when Version: keyword is available.
4782         * lisp/net/trampver.el: Add Version: keyword.
4783         (tramp-version): Change it to "2.2.13.25.1", in order to be
4784         compatible with `version-to-list'.
4786 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
4788         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
4790 2015-12-18  Alan Mackenzie  <acm@muc.de>
4792         Rename `recenter-group' to `recenter-window-group'
4794         * doc/lispref/windows.texi (Textual Scrolling)
4795         * lisp/window.el (top level, recenter-group)
4796         * lisp/follow.el (follow-mode)
4797         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
4798         `recenter-window-group' and `recenter-group-function' to
4799         `recenter-window-group-function'.
4801 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
4803         Fix vertical-motion in tabulated-list mode
4805         * src/indent.c (Fvertical_motion): When moving from line beginning
4806         to point under line truncation, assume overshoot by one line only
4807         if point actually lies beyond the window's right margin.
4808         (Bug#22194)
4810 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
4812         Don't have help functions call x-display-pixel-width/-height on ttys
4814         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
4815         Don't call x-display-pixel-width/-height on ttys.
4817 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
4819         Use 'hg id' in vc-hg-previous-revision
4821         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
4822         Use 'hg id' to retrieve it (bug#22032).
4824 2015-12-17  Alan Mackenzie  <acm@muc.de>
4826         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
4828 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
4830         Fix a typo in the Emacs manual
4832         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
4833         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
4835 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
4837         Fix parsing netrc entries with ports
4839         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
4840         make a list out of 't'.  (Bug#22188)
4842         * test/automated/auth-source-tests.el
4843         (auth-source-test-netrc-parse-entry): New test.
4845 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
4847         Fix typo in Doug Lea malloc configure log
4849         * configure.ac (emacs_cv_var_doug_lea_malloc):
4850         Fix typo that confused the log output of 'configure'.
4852 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
4854         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
4856 2015-12-16  Alan Mackenzie  <acm@muc.de>
4858         * etc/NEWS: Move entry on pcase to correct section
4860         (Accidentally omitted from previous commit)
4862 2015-12-16  Alan Mackenzie  <acm@muc.de>
4864         Add documentation for changes to Show Paren mode.
4866         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
4868         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
4869         options, including the new show-paren-when-point-inside-paren and
4870         show-paren-when-point-in-periphery.
4872         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
4873         Move an entry on pcase to the Lisp Changes section.
4875 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
4877         Document Eldoc changes
4879         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
4881 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
4883         Fix invocation of Python and Guile interpreters from gdb-mi
4885         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
4886         commands for interactive Python and Guile interpreters.
4887         (gdb-send): Recognize various ways of exiting from Python and
4888         Guile interpreters and returning to GDB.  For details, see
4889         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
4890         and http://stackoverflow.com/questions/31514741.
4892 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
4894         Remove attempt to use C11 threads
4896         C11 threads are not needed for Emacs now, and their use is causing
4897         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
4898         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
4899         * configure.ac: Do not check for C11 threads. Remove unnecessary
4900         fiddling with CPPFLAGS when configuring pthreads.
4901         * src/emacs-module.c (main_thread, check_main_thread)
4902         (module_init): Do not worry about C11 threads.
4904 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4906         Set utf8 encoding with stty in Tramp
4908         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4909         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
4910         encoding with stty.
4912 2015-12-15  Alan Mackenzie  <acm@muc.de>
4914         Tidy up documentation associated with window groups.
4916         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
4917         Groups".  Correct example function to `window-group-start'.
4918         (Window Start and End, Textual scrolling): Point to the new anchor.  State
4919         that (most of) the args in window group functions have the same meaning as for
4920         the corresponding window primitives.
4922         * doc/lispref/positions.texi (Screen Lines).  Same as above.
4924 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4926         Complete last commit
4928         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4929         Move uname check up.  Handle Mac OS X eol encoding.
4931 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4933         Handle Mac OS X eol encoding in Tramp
4935         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4936         Handle Mac OS X eol encoding.
4938 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4940         Fix variable name typo in compute_tip_xy
4942         * src/w32fns.c (compute_tip_xy):
4943         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
4944         when `right' is integer.
4946 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
4948         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
4950 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
4952         Revert "Fix rx matcher overflow without limiting"
4954         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
4956 2015-12-14  Alan Mackenzie  <acm@muc.de>
4958         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
4960         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
4961         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
4963 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
4965         Fix rx matcher overflow without limiting
4967         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
4968         change to the regexp without imposing a limit on the length of the
4969         options.
4971 2015-12-14  Alan Mackenzie  <acm@muc.de>
4973         Enhance ispell-skip-region-alist by generating part of it at runtime.
4975         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
4976         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
4977         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
4978         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
4979         Include the result of ispell--make-filename-or-URL-re in regexps.
4981 2015-12-14  Glenn Morris  <rgm@gnu.org>
4983         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
4985 2015-12-14  Alan Mackenzie  <acm@muc.de>
4987         Replace GROUP argument in six window primitives by new functions.
4989         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
4990         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
4991         from description of six window functions.  Add in description of new functions
4992         window-group-start, window-group-end, set-window-group-start,
4993         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
4994         together with the six variables indirecting to the pertinent group
4995         functions.
4997         * src/window.c
4998         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
4999         applies to these two files, which added the GROUP argument to six window
5000         primitives.
5002         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
5003         functions.
5005         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
5006         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
5007         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
5008         to window primitives (e.g. window-start) with a GROUP argument by calls to
5009         new functions (e.g. window-group-start).
5011         * lisp/ispell.el (ispell-command-loop): Replace call to
5012         pos-visible-in-window-p with pos-visible-in-window-group-p.
5014         * lisp/window.el (window-group-start, window-group-end)
5015         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
5016         (selected-window-group, move-to-window-group-line): New functions.
5017         (window-group-start-function, window-group-end-function)
5018         (set-window-group-start-function, recenter-group-function)
5019         (pos-visible-in-window-group-p-function, selected-window-group-function)
5020         (move-to-window-group-line-function): New variables.
5022 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
5024         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
5026 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
5028         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
5030 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
5032         Improve regex to not trigger stack overflow
5034         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
5035         order not to trigger a stack overflow in regex matcher with unbalanced
5036         brackets (bug#22146).
5038 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
5040         Fix visiting files with raw-text
5042         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
5043         when some stuff was actually read.  (Bug#22162)
5045 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
5047         Fix regex matching keyval labels
5049         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
5050         matching keyval labels.
5052 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
5054         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
5056         ... in case of Tramp.  (Bug#20821)
5058 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
5060         Fix performance regression with gcc -O0
5062         This fixes the smaller performance hit that I noted in:
5063         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
5064         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
5065         * src/puresize.h (puresize_h_PURE_P)
5066         (puresize_h_CHECK_IMPURE):
5067         New macros, with the old contents of the functions.
5068         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
5069         * src/puresize.h (PURE_P, CHECK_IMPURE):
5070         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
5071         * src/conf_post.h (ATTRIBUTE_UNUSED):
5072         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
5074 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
5076         * lisp/emacs-lisp/package.el (package-unpack): Security check
5078         Check that we received the package we were offered.
5080 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
5082         * lisp/emacs-lisp/package.el (package--compile): Don't activate
5084         `package-unpack' takes care of all activations now (other than
5085         `package-initialize).  `package--compile' now only compiles.
5087 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5089         Document the new bindings of <UP> and <DOWN> in the minibuffer
5091         * doc/emacs/mini.texi (Minibuffer History): Describe the new
5092         bindings of <UP> and <DOWN> in the minibuffer.
5094 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5096         Document new features of Ido
5098         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
5100 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
5102         Fix frame height calculations with added menu bar on Windows (Bug#22105)
5104         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
5105         when simultaneously specifying multiple parameters for
5106         `modify-frame-parameters' that all may change the frame's size.
5107         * src/w32fns.c (x_set_menu_bar_lines): Don't set
5108         windows_or_buffers_changed here.
5109         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
5110         with third argument false.
5111         * src/w32menu.c (set_frame_menubar): Set
5112         windows_or_buffers_changed here.
5113         * src/w32term.c (x_set_window_size): Determine third argument of
5114         AdjustWindowRect from whether the frame has a menu bar and not
5115         from whether it wants one.
5117 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5119         Document the change in interactive shell mode
5121         * doc/emacs/misc.texi (Interactive Shell): Document that the
5122         '*shell*' buffer by default displays in a new window.
5124 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5126         Document new features of package.el
5128         * doc/emacs/package.texi (Package Menu): Document the 'external'
5129         status and the new menu commands.
5130         (Package Installation): Document archive priorities.
5132         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
5133         (package-menu-hide-low-priority): Doc fix.
5135 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5137         Update and document new features of xterm support
5139         * doc/emacs/frames.texi (Text-Only Mouse): Document that
5140         track-mouse is supported by newer xterm versions.
5142 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5144         Document new features of Prettify Mode
5146         * doc/emacs/programs.texi (Misc for Programs): Document
5147         'prettify-symbols-compose-predicate' and
5148         'prettify-symbols-unprettify-at-point'.
5150         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
5151         (prettify-symbols-default-compose-p)
5152         (prettify-symbols-compose-predicate)
5153         (prettify-symbols--compose-symbol): Doc fixes.
5155 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5157         Document multi-mode indentation facilities
5159         * doc/lispref/text.texi (Mode-Specific Indent): Document
5160         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
5162         * lisp/progmodes/prog-mode.el (prog-indentation-context)
5163         (prog-widen): Doc fixes.
5165 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5167         Document 'vc-refresh-state'
5169         * doc/emacs/maintaining.texi (Version Control): Document
5170         'vc-refresh-state'.
5172         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
5174 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5176         Fix echo for "C-u"
5178         * src/keyboard.c (command_loop_1): Undo last change.  It caused
5179         duplicate echo of C-u.  (Bug#22107)
5181 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5183         Avoid errors when creating files under SVN in new directory
5185         * lisp/vc/vc-svn.el (vc-svn-registered): Use
5186         file-accessible-directory-p, to avoid cd'ing to a non-existing
5187         directory, which signals an error on some systems.  (Bug#21984)
5188         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
5189         Use declare-function to avoid byte-compiler warnings.
5191 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5193         Improve Lua support in etags
5195         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
5196         "function".
5198         * etc/NEWS: Mention improved Lua support by 'etags'.
5200         * test/etags/lua-src/test.lua (test): Add tests for indented
5201         function definitions.
5202         * test/etags/ETAGS.good_1:
5203         * test/etags/ETAGS.good_2:
5204         * test/etags/ETAGS.good_3:
5205         * test/etags/ETAGS.good_4:
5206         * test/etags/ETAGS.good_5:
5207         * test/etags/ETAGS.good_6:
5208         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
5210 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5212         Fix 'this-command-keys' wrt prefix argument
5214         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
5215         was part of this-command-keys, but not of this-single-command-keys.
5216         (Bug#22107)
5218         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
5219         commentary about the function's return value.
5221 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5223         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
5225 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5227         Improve and document Ruby support in 'etags'
5229         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
5230         (Ruby_functions): Support "module" and overloaded operators.
5231         (Ruby_help): Mention "module".
5233         * test/etags/ruby-src/test.rb:
5234         * test/etags/ruby-src/test1.ruby: New files.
5235         * test/etags/Makefile (RBSRC): New tests.
5236         (SRCS): Add ${RBSRC}.
5237         * test/etags/ETAGS.good_1:
5238         * test/etags/ETAGS.good_2:
5239         * test/etags/ETAGS.good_3:
5240         * test/etags/ETAGS.good_4:
5241         * test/etags/ETAGS.good_5:
5242         * test/etags/ETAGS.good_6:
5243         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
5245         * doc/man/etags.1: Mention Ruby support.
5246         * etc/NEWS: Mention Ruby support.
5248 2015-12-11  Xi Lu  <lx@shellcodes.org>
5250         Initial support for Ruby in 'etags'
5252         * lib-src/etags.c <Ruby_suffixes>: New variable.
5253         (lang_names): Add an entry for Ruby.
5254         (Ruby_functions): New function.  (Bug#22116)
5256 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5258         Clarify documentation of 'modify-frame-parameters'
5260         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
5261         PARMs" mean for 'modify-frame-parameters'.
5263         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
5264         PARMs" mean for this function.  (Bug#22104)
5266 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5268         Fix setting buffer unibyte when reading from a device
5270         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
5271         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
5273 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5275         Clarify documentation of 'values'
5277         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
5278         updated by any evaluation commands in 'lisp-interaction-mode'.
5279         (Bug#22056)
5281 2015-12-11  Anders Lindgren  <andlind@gmail.com>
5283         Fixed subversion vc error when opening file in new directory (bug#21984).
5285         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
5287 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
5289         Yet another fix for when point ends up in invisible text
5291         * src/xdisp.c (redisplay_window): When someone forced
5292         window-start, and honoring that failed to show the cursor, try
5293         moving out of invisible text, before falling back to the middle of
5294         the window.  (Bug#22098)
5296 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
5298         Fix error in Tramp perl script for cygwin
5300         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
5301         error if file doesn't exist.
5303 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5305         Remove font workaround for limited outdated versions
5307         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
5308         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
5310 2015-12-09  Anders Lindgren  <andlind@gmail.com>
5312         Don't add "." to load path (bug#21104)
5314         When configured with --enable-locallisppath=no, which is the
5315         default for OS X, the load-path incorrectly was populated with ".".
5317         * src/lread.c (init_lread): Don't call `decode_env_path' when
5318         PATH_SITELOADSEARCH is empty.
5320 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
5322         * lisp/emacs-lisp/package.el (package--with-response-buffer):
5324         Search for the blank-line in the right buffer.
5326 2015-12-08  Glenn Morris  <rgm@gnu.org>
5328         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
5329         for recent change.
5331 2015-12-08  Glenn Morris  <rgm@gnu.org>
5333         Fix some display-warning usage.
5335         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
5336         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
5337         * lisp/calendar/holidays.el (calendar-holiday-list):
5338         * lisp/mail/rmailout.el (rmail-output-read-file-name):
5339         Fix display-warning usage.
5341 2015-12-07  Glenn Morris  <rgm@gnu.org>
5343         * lisp/calendar/cal-html.el: Require diary-lib.
5345         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
5347 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5349         Add Obsolete-since header to eudcb-ph.el
5351         * eudcb-ph.el: Add Obsolete-since header.
5353 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
5355         Spelling fixes
5357         * doc/misc/calc.texi (Predefined Units): Use the bland modern
5358         scientific style for spelling the units “ampere” and
5359         “angstrom” rather than the older style “Ampere” and
5360         “Ångstrom”.  The latter spelling was wrong anyway (it should
5361         have been “Ångström”).
5362         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
5363         Fix misspelling of ‘atom’ in code.
5365 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
5367         Improve documentation of kill commands
5369         * lisp/simple.el (region-extract-function, delete-backward-char)
5370         (delete-forward-char, kill-region, copy-region-as-kill)
5371         (kill-ring-save): Better document the optional argument REGION in
5372         the doc strings.  Mention in the doc strings that text put in the
5373         kill-ring can be filtered by 'filter-buffer-substring'.
5375         * doc/lispref/text.texi (Kill Functions): Mention that functions
5376         described in this subsection can filter text they put in the
5377         kill-ring.  Add a cross-reference to "Buffer Contents" and an
5378         index entry.  Document the optional argument 'region' and its
5379         effect.
5380         (Bug#21315)
5382 2015-12-07  Alan Mackenzie  <acm@muc.de>
5384         Further progress making Isearch, Ispell, Replace work with Follow Mode.
5386         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
5387         no longer exists.  Add follow-post-command-hook to  three special purpose
5388         hooks at setup, and remove them at tear down.
5390         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
5391         isearch-lazy-highlight-new-loop.
5392         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
5393         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
5394         it.
5395         (isearch-lazy-highlight-maybe-new-loop): function removed.
5397         * lisp/replace.el: (replace-update-post-hook): New hook variable.
5398         (perform-replace): Add second (nil) argument to looking-back.  Invoke
5399         replace-update-post-hook before calling replace-highlight.
5401         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
5402         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
5403         call of pos-visible-in-window-p.
5404         (ispell-display-buffer): Place *Choices* window at the top of the last window
5405         in a window group.
5407 2015-12-07  Alan Mackenzie  <acm@muc.de>
5409         Amend doc of `mapconcat': it can take sequences, not merely strings.
5411         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
5412         to say that SEPARATOR and the results from FUNCTION may be any character
5413         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
5415 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
5417         Fix an utf8 problem for Tramp on BSD
5419         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5420         Make lax check for utf8.
5421         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
5423 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5425         Make eudcb-ph.el obsolete
5427         * doc/misc/eudc.texi: Bump version to 1.40.0.
5428         Remove PH/QI sections and mentions.
5429         * lisp/obsolete/eudcb-ph.el: Make obsolete.
5430         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
5431         (eudc-ph-bbdb-conversion-alist): Make obsolete.
5432         * etc/NEWS: Mention this.  (Bug#21191)
5434 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5436         Remove overenthusiastic eassert
5438         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
5439         previous change.  It breaks on MS-Windows --with-wide-int.
5440         Problem reported by Eli Zaretskii in:
5441         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
5443 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5445         Pacify gcc -Wparentheses
5447         * src/xdisp.c (row_containing_pos): Reparenthesize.
5449 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5451         Port mod-test to 32-bit Emacs --without-wide-int
5453         * modules/mod-test/test.el (mod-test-sum-test):
5454         Bring back the 2**29 tests, but port them to 32-bit Emacs
5455         --without-wide-int.
5457 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
5459         Fix minor Tramp problems found on BSD
5461         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
5462         trailing slash.  Quote apostrophes.
5463         (tramp-sh-handle-file-truename): Do not append trailing slash in
5464         the "ls" case.
5465         (tramp-get-ls-command-with-w-option): New defun.
5466         (tramp-do-file-attributes-with-ls)
5467         (tramp-do-directory-files-and-attributes-with-stat): Use it.
5469         * test/automated/tramp-tests.el
5470         (tramp-test31-special-characters-with-perl)
5471         (tramp-test31-special-characters-with-ls)
5472         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
5473         Suppress also readlink.
5475 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
5477         Fix cursor display when invisible text is at line beginning
5479         * src/xdisp.c (redisplay_window): When scrolling fails to show
5480         point, prefer using the desired matrix if possible for finding the
5481         fallback glyph row for displaying the cursor.  (Bug#22098)
5482         (row_containing_pos): Exit the loop as soon as we hit the first
5483         disabled glyph row.  Otherwise we risk accessing garbled data and
5484         departing to the no-no land.
5486 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5488         Improve module interface when WIDE_EMACS_INT
5490         * src/emacs-module.c (plain_values): New constant.
5491         (module_nil): Now a constant.
5492         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
5493         (syms_of_module): Use if, not #ifdef, so that both sides are
5494         checked at compile-time, and so that GCC doesn’t complain
5495         about an unused var in the typical case.  Also, depend on
5496         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
5497         that WIDE_EMACS_INT implies !USE_LSB_TAG.
5498         (value_to_lisp_bits, lisp_to_value_bits): New functions.
5499         Sign-extend integers rather than zero-extending them, as small
5500         negative integers are more likely.
5501         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
5502         functions.
5503         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
5504         (mark_modules): Remove.  All uses removed.
5505         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
5506         to GCALIGNMENT.
5507         (syms_of_module): Check that module_nil converts to Qnil.
5508         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
5509         we prefer signed to unsigned when either will do.
5510         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
5511         a bit better for emacs-module.c.
5513 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5515         Port mod-test to x86-64 GNU/Linux running 32-bit
5517         * modules/mod-test/test.el (mod-test-sum-test):
5518         Don’t attempt to match descriptions to operating systems.
5519         It didn’t work on Fedora x86-64 running a 32-bit executable,
5520         and it’s not worth the trouble anyway.
5521         Port to 32-bit platforms by removing an assumption about
5522         fixnum widths.
5524 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
5526         Fix auto-revert-tests.el when filenotify isn't used
5528         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
5529         Make it working also when filenotify isn't used.
5531 2015-12-05  Juri Linkov  <juri@linkov.net>
5533         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
5535         Let-bind isearch-regexp-function to nil.  (Bug#22097)
5537 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5539         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
5541         (package--with-response-buffer): NOERROR and ERROR-FORM only
5542         handle connection errors.
5543         (bad-signature): New error type.
5544         (package--check-signature-content): Use it.
5545         (package--check-signature): Properly distinguish connection errors
5546         from bad-signature errors.  Do the check for
5547         `package-check-signature' `allow-unsigned' here instead of forcing
5548         the callbacks to do it.  Add a new argument, UNWIND.
5549         (package--download-one-archive, package-install-from-archive):
5550         Update usage of `package--check-signature'.
5552 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
5554         Fix Bug#22092.
5556         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
5557           Clean up inconsistent line endings. (Bug#22092)
5558           (icalendar--clean-up-line-endings): New.
5559         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
5560           for Bug#22092.
5562 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5564         Document 'bookmark-set-no-overwrite'
5566         * doc/emacs/regs.texi (Bookmarks): Document the new command
5567         'bookmark-set-no-overwrite' and its keybinding.
5569 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5571         Document new binding of 'mouse-buffer-menu'
5573         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
5574         now also on C-F10.
5576 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5578         Initial documentation of dynamic modules
5580         * doc/lispref/loading.texi (Dynamic Modules): New section with
5581         initial documentation for dynamic modules.
5582         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
5583         detailed menu
5585         * etc/NEWS: Fix typos in dynamic modules' entry.
5587 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5589         Remove copyright statements from trivial test files
5591 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5593         Add "Preliminaries" section to etc/DEBUG
5595         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
5596         Most of the content was suggested by Phillip Lord
5597         <phillip.lord@russet.org.uk>.  Remove the section about debugging
5598         with the Visual Studio, as building Emacs with the Microsoft
5599         compilers is no longer supported.  Minor fixes in some other
5600         sections.
5602 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
5604         Improve parsing of version strings
5606         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
5607         (version-to-list): More helpful error messages.
5608         (version-to-list): ".5" is valid (update docstring).  Make
5609         "22.8X3" invalid, as the doc string says.
5611         * test/automated/subr-tests.el (ert-test-version-parsing): New
5612         tests for version string processing.
5614 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5616         Fix documentation of 'undo' changes
5618         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
5619         English conventions for spelling and whitespace between sentences.
5621         * etc/NEWS: Fix wording and spelling of undo-related entries.
5622         Mark them as documented.
5624 2015-12-04  Glenn Morris  <rgm@gnu.org>
5626         * lisp/net/net-utils.el: Small improvements.
5628         (net-utils--executable-find-sbin): New function.
5629         (ifconfig-program): Check sbin directories.
5630         Fallback to "ip".  (Bug#22091)
5631         (ifconfig-program-options): Check the actual program in use.
5632         (arp-program): Check sbin directories.
5634 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
5636         Fix wrong-type-argument integer-or-marker-p nil error
5638         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
5639         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
5641 2015-12-04  Alan Mackenzie  <acm@muc.de>
5643         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
5645         Merge necessitated by a rebase operation.
5647 2015-12-04  Alan Mackenzie  <acm@muc.de>
5649         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
5651 2015-12-04  Alan Mackenzie  <acm@muc.de>
5653         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
5655         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
5656         Windows" and new @defun selected-window-group.
5657         (Window Start and End): Describe new &optional parameter GROUP and
5658         ...-group-function for window-start, window-end, set-window-start, and
5659         pos-visible-in-window-p.
5660         (Textual Scrolling) Describe the same for recenter.
5661         doc/lispref/positions.texi (Screen Lines): Describe the same for
5662         move-to-window-line.
5664         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
5665         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
5666         new optional parameter "group".  At the beginning of each, check whether the
5667         corresponding ...-group-function is set to a function, and if so execute this
5668         function in place of the normal processing.
5669         (syms_of_window): Define symbols for the six new variables below.
5670         (window-start-group-function, window-end-group-function)
5671         (set-window-start-group-function, recenter-group-function)
5672         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
5673         New permanent local buffer local variables.
5674         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
5675         Fpos_visible_in_window_p.
5677         lisp/window.el (selected-window-group-function): New permanent local buffer
5678         local variable.
5679         (selected-window-group): New function.
5681         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
5682         enable, kill them at mode disable.  Add/remove follow-after-change to/from
5683         after-change-functions.
5684         (follow-start-end-invalid): New variable.
5685         (follow-redisplay): Manipulate follow-start-end-invalid.
5686         (follow-after-change, follow-window-start, follow-window-end)
5687         (follow-set-window-start, follow-pos-visible-in-window-p)
5688         (follow-move-to-window-line, follow-sit-for): New functions.
5690         lisp/isearch.el (isearch-call-message): New macro.
5691         (isearch-update, with-isearch-suspended, isearch-del-char)
5692         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
5693         (with-isearch-suspended): Rearrange code such that isearch-call-message is
5694         invoked before point is moved.
5695         (isearch-message): Add comment about where point must be at function call.
5696         (isearch-search): Remove call to isearch-message.
5697         (isearch-lazy-highlight-window-group): New variable.
5698         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
5699         the battery of tests to ...
5700         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
5701         Note: (sit-for 0) is still called.
5702         (isearch-lazy-highlight-update): Check membership of
5703         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
5704         property.
5705         (isearch-update, isearch-done, isearch-string-out-of-window)
5706         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
5707         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
5708         (isearch-lazy-highlight-update): Call the six amended primitives (see
5709         src/window.c above) with the new `group' argument set to t, to cooperate
5710         with Follow Mode.
5712 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5714         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
5716         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
5717         (ert--explain-format-atom, ert--explain-equal-rec)
5718         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
5719         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
5721 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5723         * lisp/character-fold.el: Remove special case-folding support
5725         (character-fold-to-regexp): Remove special code for
5726         case-folding.  Char-fold search still respects the
5727         `case-fold-search' variable (i.e., f matches F).  This only
5728         removes the code that was added to ensure that f also matched
5729         all chars that F matched.  For instance, after this commit, f
5730         no longer matches 𝔽.
5732         This was necessary because the logic created a regexp with
5733         2^(length of the string) redundant paths.  So, when a very
5734         long string "almost" matched, Emacs took a very long time to
5735         figure out that it didn't.  This became particularly relevant
5736         because isearch's lazy-highlight does a search bounded by (1-
5737         match-end) (which, in most circumstances, is a search that
5738         almost matches).  A recipe for this can be found in bug#22090.
5740 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5742         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
5743         Fixes (bug#21701)
5745 2015-12-04  Daiki Ueno  <ueno@gnu.org>
5747         lisp/gnus/qp.el: Don't replace "from " at bol
5749         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
5750         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
5752 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
5754         Externalize some symbols in undo-auto
5756          * doc/lispref/text.texi: Update symbols.
5757          * lisp/simple.el (undo-auto--amalgamate,
5758            undo-auto--current-boundary-timer): Make symbols public.
5759          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
5760            updated symbol.
5762 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
5764         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
5766 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
5768         Some error message improvements in tramp-sh.el
5770         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5771         Suppress error messages for "mesg" and "biff" calls.
5772         (tramp-get-remote-path): Ignore errors when expanding
5773         `tramp-own-remote-path'.  Raise a warning instead.
5775 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5777         Document 'nacl' value for 'system-type'
5779         * doc/lispref/os.texi (System Environment): Document the 'nacl'
5780         value of 'system-type'.
5782 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5784         Document 'window-max-chars-per-line'
5786         * doc/lispref/windows.texi (Window Sizes): Document
5787         'window-max-chars-per-line'.
5789 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5791         Fix some file headers for the purpose of `package--builtins'
5793         * lisp/emacs-lisp/cl-preloaded.el
5794         * lisp/emacs-lisp/eieio-compat.el
5795         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
5797         * lisp/ielm.el: Fix summary line.
5799 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5801         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
5803         Reload any previously loaded package files before compiling
5804         the package (also reload the same files after compiling).
5805         This ensures that we have the most recent definitions during
5806         compilation, and avoids generating bad elc files when a macro
5807         changes and it is used in a different file from the one it's
5808         defined in.
5810 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5812         * lisp/emacs-lisp/package.el: Refactor package activation code
5814         (package-activate): Move code that activates dependencies into
5815         package-activate-1.
5816         (package--load-files-for-activation): New function.
5817         (package-activate-1): Add code for (optionally) activating
5818         dependencies, and move file-loading code into
5819         `package--load-files-for-activation'.
5821 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5823         Document new font-related functionality
5825         * doc/lispref/display.texi (Low-Level Font): Document
5826         'default-font-width', 'default-font-height', 'window-font-width',
5827         and 'window-font-height'.
5829         * etc/NEWS: Move entries for 'default-font-width',
5830         'default-font-height', 'window-font-width', and 'window-font-height'
5831         to their place and mark them documented.
5833 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5835         Fix documentation and implementation of 'directory-name-p'
5837         * lisp/files.el (directory-name-p): Modify to recognize
5838         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
5839         accordingly.  Use '=', not char-equal, for comparison, as
5840         letter-case cannot possibly be an issue here.
5842         * doc/lispref/files.texi (Directory Names): Move the documentation
5843         of directory-name-p here from "Relative File Names".  Update the
5844         description per the changes in implementation.
5846         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
5847         place and mark it documented.
5849 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
5851         Minor copyedit in Emacs manual
5853         * doc/emacs/search.texi (Lax Search): Make wording about character
5854         folding by default less definitive.  (Bug#22043)
5856 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
5858         More emacs-module.c fixes for wide ints
5860         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
5861         unsigned data types to manipulate pointers, to avoid sign
5862         extension coming after us with a vengeance.
5864         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
5865         Emacs with wide ints that verify integer values near the critical
5866         value that requires us to switch to a cons cell.
5868 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
5870         Fix bug#22069 in cl-generic.el
5872         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
5873         not run thru `format'.
5875 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
5877         APPEND etags--xref-backend to xref-backend-functions
5879         * lisp/progmodes/xref.el (xref-backend-functions):
5880         Use APPEND when adding the default element
5881         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
5883 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5885         More accurate documentation of lax whitespace matching
5887         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
5888         (word-search-backward, word-search-forward)
5889         (word-search-backward-lax, word-search-forward-lax): Mention in
5890         doc strings that toggling lax whitespace matching has no effect on
5891         these commands.
5893         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
5894         lax whitespace matching has no effect on these commands.
5896 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5898         Fix emacs-module.c for wide ints
5900         * src/emacs-module.c (lisp_to_value): Compare the produced value
5901         with the original Lisp object, not with the one potentially
5902         converted into a Lisp_Cons.  Fixes assertion violations when
5903         working with integers larger than fit into a 32-bit value.
5905         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
5906         large integers, to test --with-wide-int.
5908 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5910         Document 'directory-files-recursively'
5912         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
5913         the argument MATCH to REGEXP, to be more explicit about its form.
5915         * doc/lispref/files.texi (Contents of Directories): Improve the
5916         documentation of 'directory-files-recursively'.  Add
5917         cross-references.
5919         * etc/NEWS: Move the entry for 'directory-files-recursively' to
5920         its place and mark it documented.
5922 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5924         Document 'inhibit-read-only' property
5926         * doc/lispref/text.texi (Special Properties): Describe the new
5927         'inhibit-read-only' text property.  Add cross-reference to where
5928         read-only buffers are described.
5929         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
5930         'inhibit-read-only' property exempts text from being read-only.
5931         Add cross-reference to "Special Properties".
5933         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
5934         its place and mark it documented.
5936 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
5938         * lisp/emacs-lisp/package.el: Update header comments
5940 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
5942         * lisp/character-fold.el: Add back multi-char matching
5944         (character-fold-to-regexp): Uncomment recently commented code
5945         and make the algorithm "dummer" by not checking every possible
5946         combination.  This will miss some possible matches, but it
5947         greatly reduces regexp size.
5949         * test/automated/character-fold-tests.el
5950         (character-fold--test-fold-to-regexp): Comment out test of
5951         functionality no longer supported.
5953 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
5955         * doc/emacs/ack.texi (Acknowledgments): Update.
5957 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
5959         Check `file-remote-p' over absolute files names in files.el
5961         * lisp/files.el (directory-files-recursively)
5962         (get-free-disk-space): Check `file-remote-p' over absolute files names.
5964 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
5966                 * src/lread.c (syms_of_lread): Doc fix.
5968 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
5970         Don't mistake certain JS method calls for keywords
5972         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
5973         Braceless keyword can't come after a period (bug#22063).
5975 2015-11-30  David Reitter  <david.reitter@gmail.com>
5977         Read frame_title_format from buffer-local variable for NS port
5979         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
5980         icon-title-format variables from buffer in appropriate window.
5981         (Bug#22048)
5983 2015-11-30  Juri Linkov  <juri@linkov.net>
5985         * lisp/replace.el (occur-engine): Count matches in empty lines.
5987         (Bug#22062)
5989 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
5991         * src/emacs-module.h: Fix finalizer typedef for C++11
5993         C++11 standard doesn't allow exception-specification in typedef.
5994         The workaround is to declare a dummy function prototype and use
5995         decltype on it.
5997 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
5999         Fix last change
6001         * src/emacs-module.c (lisp_to_value, value_to_lisp)
6002         [WIDE_EMACS_INT]: Avoid compiler warnings.
6004 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
6006         Rely on conservative stack scanning to find "emacs_value"s
6008         * src/emacs-module.c (struct emacs_value_tag)
6009         (struct emacs_value_frame, struct emacs_value_storage): Remove.
6010         (value_frame_size): Remove constant.
6011         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
6012         (lisp_to_value): Remove first arg.
6013         (module_nil): New constant.
6014         Use it instead of NULL when returning an emacs_value.
6015         (module_make_function): Adjust to new calling convention of
6016         Qinternal_module_call.
6017         (DEFUN): Receive args in an array rather than a list.
6018         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
6019         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
6020         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
6021         Adjust to new type of non_local_exit info.
6022         (ltv_mark) [WIDE_EMACS_INT]: New constant.
6023         (value_to_lisp, lisp_to_value): Rewrite.
6024         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
6025         (allocate_emacs_value): Remove function.
6026         (mark_modules): Gut it.
6027         (initialize_environment): Don't initialize storage any more.
6028         Keep the actual env object on Vmodule_environments.
6029         (finalize_environment): Don't finalize storage any more.
6030         (syms_of_module): Initialize ltv_mark and module_nil.
6032         * src/emacs-module.h (emacs_value): Make it more clear that this type
6033         is really opaque, including the fact that NULL may not be valid.
6035         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
6036         Don't assume that NULL is a valid emacs_value.
6038 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
6040         Yet another doc improvement for search commands
6042         * doc/emacs/search.texi (Word Search, Symbol Search)
6043         (Regexp Search): Document commands that don't support lax
6044         whitespace matching or character folding.
6045         (Nonincremental Search): Mention the search commands that can be
6046         invoked from the menu bar.
6048         * lisp/isearch.el (isearch-define-mode-toggle-word)
6049         (isearch-define-mode-toggle-symbol)
6050         (isearch-define-mode-toggle-character-fold): Note in the doc
6051         string that turning these on exits the regexp mode.
6052         (isearch-forward-regexp, isearch-forward-word)
6053         (isearch-forward-symbol, isearch-backward-regexp)
6054         (word-search-backward, word-search-forward)
6055         (word-search-backward-lax, word-search-forward-lax): State in the
6056         doc string which commands don't support character folding and/or
6057         lax-whitespace matching.
6059 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
6061         Run `window-size-change-functions' also when reading from minibuffer
6063         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
6064         also when reading from minibuffer.
6066 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
6068         Fix scrambling of html-rendered item buffers
6070         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
6071           scrambling of contents by wrapping call to html-renderer in
6072           save-selected-window.
6074 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6076         Fix font typo in previous doc fix.
6078 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6080         A bit more security doc, esp. file local vars
6082         * doc/emacs/emacs.texi (Top):
6083         * doc/emacs/misc.texi (Miscellaneous Commands):
6084         Refer to new Host Security section.
6085         (Host Security): New section.
6086         * doc/lispref/os.texi (Security Considerations):
6087         Mention file local variables.
6089 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6091         * lisp/character-fold.el: Comment out branching code
6093         (character-fold-to-regexp): Comment out code that uses multi-char
6094         table.  The branching caused by this induces absurdly long regexps,
6095         up to 10k chars for as little as 25 input characters.
6097 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6099         Spelling and grammar fixes
6101 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
6103         Make lisp-completion-at-point a wrapper instead of an alias
6105         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
6106         Turn into an obsolete wrapper around elisp-completion-at-point
6107         (bug#20455).
6109 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6111         * lisp/isearch.el (isearch-search-fun-default): Nicer error
6113         message when the search fails.
6115 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
6117         Update menu-bar-goto-uses-etags-p for the current xref API
6119         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
6120         xref-backend-functions, instead of now-nonexistent
6121         xref-find-function.
6123 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6125         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
6127 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6129         * lisp/menu-bar.el: Use folding in searches
6131         (nonincremental-search-forward): Use `isearch-search-fun-default'
6132         to determine the search function.
6133         (nonincremental-search-backward)
6134         (nonincremental-repeat-search-forward)
6135         (nonincremental-repeat-search-backward): Use it.
6137 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6139         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
6141 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6143         * lisp/character-fold.el (character-fold-to-regexp): Be careful
6145         not to return huge regexps.
6147 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6149         Improve documentation of string-collate-* functions
6151         * doc/lispref/strings.texi (Text Comparison): Improve wording and
6152         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
6154         * etc/NEWS: Move the entry of 'string-collate-equalp' and
6155         'string-collate-lessp' to "Lisp Changes" section and mark it as
6156         documented.
6158 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6160         Document truncate-string-ellipsis
6162         * doc/lispref/display.texi (Size of Displayed Text): Document
6163         'truncate-string-ellipsis'.
6165         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
6166         (truncate-string-to-width): Mention in the doc string that the
6167         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
6169         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
6170         Changes" section.
6172 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6174         Fix confusion wrt character folding in the Emacs manual
6176         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
6177         Document that invoking search-forward/backward and
6178         re-search-forward/backward supports only case folding, but not the
6179         rest of the lax-search features.  Reported by Mike Kupfer
6180         <m.kupfer@acm.org>.
6182 2015-11-29  Ken Brown  <kbrown@cornell.edu>
6184         Update mod-test-sum-test
6186         * modules/mod-test/test.el (mod-test-sum-test): Update to
6187         accommodate the lack of dladdr on Cygwin.
6189 2015-11-29  Alan Mackenzie  <acm@muc.de>
6191         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
6193         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
6194         to `funcall', (i) Output an error message; (ii) Generate code to signal a
6195         `wrong-number-of-arguments' error.
6197 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
6199         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
6201 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6203         * lisp/character-fold.el (character-fold-to-regexp)
6205         Warn about using long strings.
6207         * test/automated/character-fold-tests.el
6208         (character-fold--test-lax-whitespace)
6209         (character-fold--test-consistency): Reduce string size for tests.
6211 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6213         Document renaming of x-select-enable-* variables
6215         * doc/emacs/killing.texi (Clipboard): Rename
6216         x-select-enable-clipboard to select-enable-clipboard and
6217         x-select-enable-primary to select-enable-primary.  Update index
6218         entries.
6220         * etc/NEWS: Mark entry as documented.
6222 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6224         Document the shorthand hints displayed by M-x
6226         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
6227         suggest-key-bindings.  Document the shorthand hints for commands
6228         that have no key bindings.  Document that M-x completion ignores
6229         obsolete commands.
6231         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
6232         documented.
6234 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6236         Update docs of character folding
6238         * doc/emacs/search.texi (Lax Search): Update the description of
6239         character folding for the latest changes.
6241 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6243         * lisp/character-fold.el: Also play nice with case-folding
6245         (character-fold-to-regexp): Take `case-fold-search' into account.
6247 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6249         * lisp/character-fold.el: Add support for multi-char matches
6251         (character-fold-table): Now has an extra-slot. This is a second
6252         char-table that holds multi-character matches.  See docstring for
6253         details.
6254         (character-fold-to-regexp): Can build branching regexps when a
6255         character's entry the extra slot of `character-fold-table' matches the
6256         characters that succeed it.
6258 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6260         * lisp/character-fold.el: Code simplifications
6262         (character-fold-table): Reduce the scope of a variable.
6263         (character-fold-to-regexp): Change logic to work directly on the
6264         input string.  It's a little easier to understand, probably
6265         faster, and sets us up for implementing multi-char matches.
6267         * test/automated/character-fold-tests.el
6268         (character-fold--test-fold-to-regexp): New test.
6270 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6272         Document changes in "C-h l"
6274         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
6276         * etc/NEWS: mark "C-h l" changes as documented.
6278 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6280         Finalize documentation of 'custom-prompt-customize-unsaved-options'
6282         * doc/emacs/custom.texi (Saving Customizations): Index the new
6283         function 'custom-prompt-customize-unsaved-options'.
6285         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
6286         is useful.
6288 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6290         Document 'comment-line'
6292         * doc/emacs/programs.texi (Comment Commands): Document
6293         'comment-line'.
6295         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
6297 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6299         Document new checkdoc features
6301         * doc/lispref/tips.texi (Tips, Library Headers): Document the
6302         keyword-checking features of checkdoc and the commands
6303         'checkdoc-file' and 'checkdoc-current-buffer'.
6305         * etc/NEWS: Move the checkdoc-related entries to their own
6306         section.
6308 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
6310         Simplify the prologue of emacs-module.c functions
6312         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
6313         (module_make_global_ref)
6314         (module_free_global_ref, module_make_function, module_funcall)
6315         (module_intern, module_type_of, module_extract_integer)
6316         (module_make_integer, module_extract_float, module_make_float)
6317         (module_copy_string_contents, module_make_string)
6318         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
6319         (module_get_user_finalizer, module_set_user_finalizer)
6320         (module_vec_set, module_vec_get, module_vec_size): Use new helper
6321         macro MODULE_FUNCTION_BEGIN.
6323 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6325         Don't reject module calls with no arguments
6327         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
6329 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
6331         Make module-call be visible from Lisp
6333         * src/emacs-module.c (module_make_function): Use internal--module-call.
6334         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
6335         checks.
6336         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
6337         defsubr internal--module-call.
6339 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6341         Add etags tests for the recent Lua-related bugfix
6343         * test/etags/lua-src/test.lua: New file, tests the issues raised
6344         by bug#21934.
6345         * test/etags/Makefile (LUASRC): Add test.lua.
6346         * test/etags/ETAGS.good_1:
6347         * test/etags/ETAGS.good_2:
6348         * test/etags/ETAGS.good_3:
6349         * test/etags/ETAGS.good_4:
6350         * test/etags/ETAGS.good_5:
6351         * test/etags/ETAGS.good_6:
6352         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
6353         regression fix, resolved around 25 May 2015, required changes to
6354         the "good" ETAGS files.
6356 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6358         Fix Lua tags when a function name includes '.' or ':'
6360         * lib-src/etags.c (Lua_functions): Add a tag for the last element
6361         of a function name after a dot or a colon.  (Bug#21934)
6363 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6365         Improve documentation of search and replace commands
6367         * doc/emacs/search.texi (Replacement and Lax Matches): Document
6368         which commands are affected by 'replace-character-fold'.
6369         (Lax Search): Add a cross reference to "Replacement and Lax
6370         Matches".  Improve wording.  Fix lost extra whitespace.
6371         (Search Customizations): Improve wording.  (Bug#22036)
6372         See also comments in
6373         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
6375         * lisp/replace.el (query-replace, query-replace-regexp)
6376         (query-replace-regexp-eval, replace-string, replace-regexp):
6377         Mention 'replace-character-fold' in the doc strings.
6379 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
6381         Fix minor problems found by static checking
6383         * src/undo.c (prepare_record): Add proper prototype for C.
6385 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
6387         * src/emacs-module.c (struct env_storage): Delete
6389         (struct emacs_runtime_private): Keep an emacs_env instead.
6390         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
6391         (initialize_environment): Split the arg in two.  Adjust all callers.
6392         Only store the private part in Vmodule_environments.
6393         (finalize_environment): Change the arg to only be the private env.
6394         Adjust all callers.
6396 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6398         Improve documentation of 'replace-character-fold'
6400         * lisp/replace.el (replace-character-fold): Clarify which commands
6401         are affected by this variable.
6403 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
6405         Autoload etags when using its xref backend
6407         * lisp/progmodes/xref.el (xref--etags-backend):
6408         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
6409         (Bug#22026)
6411 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6413         * lisp/character-fold.el: Allow complex chars to match their decomposition
6415         (character-fold-table): When a character's decomposition does not
6416         involve a formatting tag (i.e., if it has an "exact" description via
6417         other characters), then this character is allowed to match the
6418         decomposition.
6420 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6422         * lisp/character-fold.el: More descriptive variable names
6424         (character-fold-table): Rename a lot of the lexical variables to
6425         make the code easier to read.
6427 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6429         * lisp/isearch.el: Ensure we still support `isearch-new-word'
6431         (isearch-new-regexp-function): Define variable.
6432         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
6434 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6436         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6438 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
6440         * test/lisp/abbrev-tests.el: Define more tests
6442         (abbrev-table-name-test, kill-all-abbrevs-test)
6443         (clear-abbrev-table-test): New tests.
6445 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6447         Add module tests for wrong-type-argument
6449         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
6450         wrong-type-argument.
6452 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6454         Improve handling of signals and 'throw' in modules
6456         * src/emacs-module.c: Add commentary explaining how to write
6457         functions in this file.
6458         (module_make_global_ref, module_free_global_ref)
6459         (module_non_local_exit_signal, module_non_local_exit_throw)
6460         (module_make_function, module_funcall, module_intern)
6461         (module_type_of, module_is_not_nil, module_eq)
6462         (module_extract_integer, module_make_integer)
6463         (module_extract_float, module_make_float)
6464         (module_copy_string_contents, module_make_string)
6465         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
6466         (module_get_user_finalizer, module_set_user_finalizer)
6467         (module_vec_set, module_vec_get, module_vec_size)
6468         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
6469         Do nothing and return with failure indication immediately, if some
6470         previous module call signaled an error or wants to throw.  See
6471         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
6472         for the relevant discussions.
6474 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6476         Add ':version' tag to 'checkdoc-package-keywords-flag'
6478         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
6479         Add a ':version' tag.
6481 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6483         Improve documentation of 'eval-buffer' and 'eval-region'
6485         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
6487         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
6488         "accessible portion of buffer".
6490 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6492         Unbreak the Cygwin w32 build
6494         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
6495         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6497 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6499         Improve commentary in character-fold.el
6501         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
6502         description from commit log message to comments.  (Bug#22019)
6504 2015-11-26  Alan Mackenzie  <acm@muc.de>
6506         Byte Compiler: generate code to adjust stack count after call to `signal'.
6508         Corrects change from earlier today.
6510         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
6511         `byte-compile--for-effect' as argument to `byte-compile-form'.
6513 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
6515         Improve commentary of prepare_to_modify_buffer_1
6517         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
6518         that this function runs Lisp.  Suggested by Richard Stallman
6519         <rms@gnu.org>.
6521 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6523         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6525 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6527         Fix regression after merge.
6529          * src/undo.c (prepare_record): Remove call to run_undoable_change.
6531 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6533         After delete, record point location in undo.
6535         Addresses Bug #21968.
6537                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
6538                 better support intercalating calls.
6539                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
6540                 point and current buffer before each command.
6541                 * src/undo.c (record_point): Now only record the point.
6542                 * src/undo.c (prepare_record): Functionality removed form
6543                 record_point.
6544                 * src/undo.c (record_delete): Check if point needs recording.
6545                 * src/undo.c (undo-boundary): Record value of point before each
6546                 boundary.
6547                 * test/automated/simple-test.el: New tests.
6549         Conflicts:
6550                 src/undo.c
6552 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
6554         Fix compiler warnings in w32.c
6556         * src/w32.c (sys_socket): In case of error, use -1 as return
6557         value, not INVALID_SOCKET, which causes compiler warnings.
6558         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
6559         to the appropriate function signature, to avoid compiler errors.
6560         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
6562 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
6564         Check if the file exists on disk before producing the revert diff
6566         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
6567         exists on disk (bug#20558).
6569 2015-11-26  Alan Mackenzie  <acm@muc.de>
6571         Byte compiler: on setq with an odd number of arguments, generate a `signal'
6573         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
6574         it has an odd number of arguments, to allow bytecomp to handle the error.
6576         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
6577         odd number of arguments, generate a `signal' instead of the normal code.
6579 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
6581         Use find-tag-default for xref-backend-identifier-at-point
6583         * lisp/progmodes/etags.el (find-tag-tag)
6584         (tags-completion-at-point-function): Extract common code as
6585         find-tag--default.
6586         (xref-backend-identifier-at-point): Define in terms of the new
6587         function.
6589 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6591         * src/undo.c (record_property_change): Remove now-unused local.
6593 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
6595         run_undoable_changes now called from insdel.
6597         The original calls from inside undo.c are not always at a safe position
6598         to call lisp, as they originate in varied positions within insdel.c.
6599         Calling them directly from prepare_to_modify_buffer_1 ensures that they
6600         are always run at the same point.
6602          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
6603          and symbol used.
6604          * src/insdel.c (run_undoable_changes): Add function and symbol.
6606 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
6608         Improve and update documentation of search commands
6610         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
6611         all references changed.  Move the description of lax-whitespace
6612         here.  Add description of the new character folding features and
6613         additional customizable options.
6614         (Isearch Yank): Move before "Error in Search".
6615         (Basic Isearch): Improve wording.  Add index entries.  Add short
6616         description of how to abandon search, making this subsection a
6617         complete introduction to search basics.
6618         (Repeat Isearch): Add index entries.  Describe additional
6619         customizable options.  Describe mouse clicks.
6620         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
6621         area.  Describe more customizable options.
6622         (Error in Isearch): Add index entries.
6623         (Special Isearch): Move actual description of some isearch
6624         commands to other sections, leaving here just the summary of the
6625         commands.  Add command that toggles character folding.  Describe
6626         commands, like "C-h C-h", that were previously omitted for some
6627         reason.
6628         (Not Exiting Isearch): Describe search-exit-option.  Add index
6629         entries.
6630         (Word Search): Describe eww-search-word and eww-search-prefix.
6631         (Symbol Search): Add index entries.
6632         (Regexp Search): Describe regexp-search-ring-max.
6633         (Replacement and Lax Matches): Renamed from "Replacement and
6634         Case"; all references changed.  Describe lax-whitespace matching
6635         in replace commands and related options.  Describe character
6636         folding in replace commands and related options.
6637         (Query Replace): Describe query-replace-from-to-separator and the
6638         new history features.  Add index entries for highlighted text.
6639         Describe query-replace-skip-read-only.  Describe more keys
6640         accepted by query-replace.
6641         (Other Repeating Search): More index entries for Occur.  Describe
6642         list-matching-lines-default-context-lines.
6643         (Search Customizations): New section, documents customizable
6644         options that were not documented until now.
6645         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
6646         "Character Folding".
6648         * etc/NEWS: Move search- and replace-related entries to a single
6649         parent section.
6651         * lisp/replace.el (query-replace-show-replacement): Doc fix.
6652         * lisp/isearch.el (search-nonincremental-instead)
6653         (isearch-hide-immediately): Doc fixes.
6655 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
6657         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
6659         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
6660         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
6661         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
6663 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6665         Fix module_format_fun_env when dynlib_addr fails
6667         * src/emacs-module.c (module_format_fun_env):
6668         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
6669         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
6671 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6673         Disambiguate variable help a bit better
6675         * lisp/help-fns.el (describe-variable): Quote the
6676         variable’s value if it is a symbol other than t or nil.
6677         See: T.V Raman in:
6678         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
6680 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
6682         Pass SVN commit message through log-edit-extract-headers
6684         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
6685         log-edit-extract-headers (bug#18954).
6687 2015-11-24  Alan Mackenzie  <acm@muc.de>
6689         CC Mode: Eliminate compiler warning messages.
6691         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
6692         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
6693         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
6694         (c-awk-set-syntax-table-properties): Clarify comments about
6695         `font-lock-syntactic-keywords'.
6697         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
6698         of this before the real (interpreted) one, to satisfy the byte compiler.
6700 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
6702         Extend the test suite for json.el
6704         * lisp/json.el (json-plist-p): Clarify docstring.
6706         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
6707         macro.
6708         (test-json-join, test-json-alist-p)
6709         (test-json-plist-p, test-json-advance, test-json-peek)
6710         (test-json-pop, test-json-skip-whitespace)
6711         (test-json-read-keyword, test-json-encode-keyword)
6712         (test-json-read-number, test-json-encode-number)
6713         (test-json-read-escaped-char, test-json-read-string)
6714         (test-json-encode-string, test-json-encode-key)
6715         (test-json-new-object, test-json-add-to-object)
6716         (test-json-read-object, test-json-encode-list)
6717         (test-json-read-array, test-json-encode-array)
6718         (test-json-read, test-json-read-from-string)
6719         (test-json-encode): New tests.
6720         (json-read-simple-alist): Merged into `test-json-read-object'.
6721         (json-encode-string-with-special-chars): Merged into
6722         `test-json-encode-string'.
6723         (json-read-string-with-special-chars): Split into
6724         `test-json-encode-string' and `test-json-read-from-string'.
6726 2015-11-24  Anders Lindgren  <andlind@gmail.com>
6728         Fixed bug#18283: Enable applescript in NextStep.
6730         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
6732 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6734         Allow completion on dynamic module files in load-library
6736         * lisp/files.el (load-library): Bind completion-ignored-extensions
6737         to nil, to allow completion on dynamic modules typed as file
6738         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6740 2015-11-24  Alan Mackenzie  <acm@muc.de>
6742         CC Mode: eliminate almost all byte compilation warnings
6744         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
6745         (cc-require): Remove the crude hack that saved and restored
6746         byte-compile-noruntime-functions.
6747         (cc-conditional-require, cc-conditional-require-after-load): New macros.
6749         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
6750         cc-fix.el using the new macros in cc-bytecomp.el.
6752         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
6753         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
6754         forms to remove the superflous quotes.
6756 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6758         Add one more mod-test test
6760         * modules/mod-test/test.el (mod-test-sum-test): Test the error
6761         signaled when the function is invoked with a wrong number of
6762         arguments.
6764 2015-11-24  Philipp Stephani  <phst@google.com>
6766         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
6768 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6770         Implement dynlib_addr for MS-Windows
6772         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
6773         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
6774         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
6775         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
6776         if undefined.
6777         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
6778         zero.
6779         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
6780         the full file name of the module for a given address.
6782 2015-11-24  Alan Mackenzie  <acm@muc.de>
6784         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6786 2015-11-24  Alan Mackenzie  <acm@muc.de>
6788         Squashed commit of the following:
6790         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
6791         Author: Alan Mackenzie <acm@muc.de>
6792         Date:   Tue Nov 24 16:50:09 2015 +0000
6794             Byte compile: minor amendments.
6796             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
6797             add a comment to explain the binding of variables around a subsidiary
6798             compilation.
6799             (byte-compile-new-defuns): Amend the doc string.
6801         commit c537bfed1dda1593d218956ff00c6105a3ff0316
6802         Author: Alan Mackenzie <acm@muc.de>
6803         Date:   Sat Nov 21 18:43:57 2015 +0000
6805             Byte compiler: fix spurious warnings "might not be defined at runtime".
6807             Also initialize byte-compile-noruntime-functions between runs.
6809             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
6810             (byte-compile-initial-macro-environment): For eval-when-compile: bind
6811             byte-compile-unresolved-functions and byte-compile-new-defuns around
6812             byte-compile-top-level, to prevent spurious entries being made.
6813             (byte-compile-warn-about-unresolved-functions): Check whether function is
6814             in byte-compile-new-defuns before emitting a warning about it.
6815             (byte-compile-from-buffer): Initialize new variable and
6816             byte-compile-noruntime-functions to nil.
6817             (byte-compile-file-form-require): record all new functions defined by a
6818             `require' in byte-compile-new-defuns.
6819             (byte-compile-file-form-defmumble): record the new alias in
6820             byte-compile-new-defuns.
6822 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6824         Fix crash at startup related to GC of font entities
6826         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
6827         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
6828         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
6829         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
6830         Don't ifdef away font cache compaction on NT_GUI, as the problems
6831         which led to that seem to have been solved.
6832         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
6833         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
6834         cousins.  (Bug#21999)
6836 2015-11-24  Alan Mackenzie  <acm@muc.de>
6838         Byte compile: Output an error, not a warning, for odd number of args to setq
6840         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
6842 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
6844         Fix kbd_buffer iteration loop in readable_events
6846         * src/keyboard.c (readable_events): Wrap the event pointer back to the
6847         start of the kbd_buffer array inside the top of the loop instead of
6848         right before checking the loop condition, since kbd_fetch_ptr and
6849         kbd_store_ptr point past the end of the array to mean that element 0
6850         is next. (bug#21935)
6852 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6854         Improve text-quoting-style doc again
6856         * doc/lispref/help.texi (Keys in Documentation):
6857         Omit overkill discussion of ‘setq’.  Mention Emacs versions
6858         where ‘grave’ style was standard.
6860 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6862         Improve text-quoting-style doc
6864 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6866         Simplify module_make_function
6868         * src/emacs-module.c (module_make_function):
6869         Simplify by calling build_unibyte_string.
6871 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6873         Port better to FreeBSD’s dlfunc vs dlsym
6875         This avoids warnings when converting between void * and
6876         function pointers, which strict C11 does not allow.
6877         * configure.ac (dlfunc): Check for existence.
6878         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
6879         (dynlib_func): New function.
6880         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
6881         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
6882         dynlib_sym, for function pointers.
6884 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6886         Simplify use of emacs_finalizer_function type
6888         * src/emacs-module.h (emacs_finalizer_function):
6889         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
6890         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
6892 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6894         module_format_fun_env fixes
6896         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
6897         * src/emacs-module.c (module_format_fun_env):
6898         Convert path and sym to UTF-8.
6899         Don’t use VLAs, as the C11 standard says they’re optional,
6900         and anyway they can cause core dumps with large allocations.
6901         Use exprintf rather than snprintf, as exprintf handles arbitrarily
6902         long strings.  Simplify the code a bit.
6904 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
6906         Don't use package-user-dir in elisp-library-roots if it's not bound
6908         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
6909         use package-user-dir if it's not bound (bug#19759).
6911 2015-11-23  Anders Lindgren  <andlind@gmail.com>
6913         New visible-bell for NextStep (OS X El Capitan compatible).
6915         Instead of inverting a rectangle in the middle of the frame, use
6916         the standard NextStep image "caution", represented using an
6917         warning sign with an exclamation mark.  (Bug#21662)
6919         Implemented based on a suggestion drafted by Mustafa Kocaturk.
6921         * src/nsterm.m (EmacsBell): New class for managing the caution
6922         image.  Support multiple active bells, the image is removed once
6923         all bells have timed out.
6924         (ns_timeout): Removed, no longer used.
6925         (ns_ring_bell): Reimplemented to use EmacsBell.
6927 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
6929         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
6931         (remove-function): Ditto. (Bug#20376)
6933 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
6935         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
6937 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
6939         Improve how non-ASCII strings are accepted from modules
6941         * src/emacs-module.c (module_make_function, module_make_string):
6942         Build a unibyte Lisp string and then decode it by UTF-8, instead
6943         of building a multibyte string without decoding.  This is more
6944         tolerant to deviations from UTF-8.
6946 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6948         Port recent module changes to pickier compilers
6950         * src/emacs-module.c (module_make_function)
6951         (module_make_string): Add casts to fix pointer signedness issues.
6953 2015-11-23  Philipp Stephani  <phst@google.com>
6955         Fix how strings are accepted from modules
6957         * emacs-module.c (module_make_function, module_make_string): Use
6958         make_multibyte_string.
6959         (module_copy_string_contents): Encode before reading the byte
6960         size.  Return false if and only if an error occurred.
6962 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
6964         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6966 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
6968         Add the tamil-dvorak input method
6970         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
6972         * etc/NEWS: Mention the new input method.
6974 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
6976         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
6978         * src/frame.c (adjust_frame_size): Don't set
6979         FRAME_WINDOW_SIZES_CHANGED here ...
6980         * src/window.c (resize_frame_windows): ... but here, as suggested
6981         by Stefan Monnier.  Also remove some dead code along the way.
6983 2015-11-23  Alan Mackenzie  <acm@muc.de>
6985         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
6987 2015-11-23  Alan Mackenzie  <acm@muc.de>
6989         Signal an error when `setf' gets an odd number of arguments.
6991         * lisp/emacs-lisp/gv.el (setf): Amend.
6993 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6995         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
6997 2015-11-23  Alan Mackenzie  <acm@muc.de>
6999         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
7001 2015-11-23  Alan Mackenzie  <acm@muc.de>
7003         Expunge occurrences of `setq' with an odd number of arguments.
7005         * lisp/apropos.el (apropos-documentation):
7006         * lisp/obsolete/complete.el (PC-include-file-all-completions):
7007         * lisp/progmodes/compile.el (compilation-goto-locus):
7008         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
7009         Insert missing nil at end of `setq' forms.
7011         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
7012         erroneous trailing variable name from a setq, thus allowing a compilation
7013         properly to track functions not defined at runtime.
7015 2015-11-23  John Wiegley  <johnw@newartisans.com>
7017         Add a note about a questionable use of bool in xdisp.c
7019 2015-11-23  Alan Mackenzie  <acm@muc.de>
7021         Issue a warning from the byte compiler on a malformed `setq' form.
7023         Partly fixes bug#20241.
7024         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
7025         `setq' form with an odd number of arguments is compiled.
7027 2015-11-23  Alan Mackenzie  <acm@muc.de>
7029         Don't let cconv_convert insert a nil argument into a `setq' form.
7031         Fixes bug#21983.
7032         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
7033         argument into a `setq' when there're an odd number of args.  This enables the
7034         byte compiler to issue a message in this case.
7036 2015-11-23  Alan Mackenzie  <acm@muc.de>
7038         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
7040         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
7041         (syms_of_eval): Add a DEFSYM for Qsetq.
7043 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
7045         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
7047         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
7049 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7051         Add EUDC BBDB 3 entry in NEWS
7053         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
7055 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7057         Improve EUDC to BBDB 3 export
7059         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
7060         entry to single item.  Add company conversion.
7061         * eudc-export.el (eudc-bbdbify-company): New function.
7062         (bbdb-parse-phone): Declare function.
7063         (eudc-bbdbify-phone): Add BBDB 3 support.
7064         (Bug#21971)
7066 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7068         Add BBDB 3 support for EUDC export
7070         * eudc.el: Add bbdb-version defvar.
7071         (eudc--using-bbdb-3-or-newer-p): New function.
7072         * eudc-export.el (eudc-create-bbdb-record): Add support for
7073         bbdb-create-internal argument list changes introduced in BBDB 3.
7074         * eudcb-bbdb.el: Remove bbdb-version defvar.
7075         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
7076         (Bug#21971)
7078 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
7080         Allow loading modules by 'load-file'
7082         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
7083         2nd arg, to avoid the "binding stack not balanced" error.
7084         (syms_of_lread) <module-file-suffix>: New Lisp variable.
7086         * lisp/files.el (module-file-suffix): Declare.
7087         (load-file): Remove 'module-file-suffix' from
7088         'completion-ignored-extensions', to allow completion on modules.
7090         * etc/NEWS: Mention 'module-file-suffix'.
7092 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
7094         Fix unoptimized builds
7096         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
7097         builds.
7099 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
7101         Work around the asynchronous-empty-diff problem
7103         * lisp/vc/vc-rcs.el (vc-rcs-diff):
7104         * lisp/vc/vc-mtn.el (vc-mtn-diff):
7105         * lisp/vc/vc-hg.el (vc-hg-diff):
7106         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
7107         do a synchronous process call (bug#21969).
7109 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
7111         Finish excising electric indent from `open-line'
7113         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
7115         * test/automated/simple-test.el (open-line-indent, open-line-hook):
7116           Adjust accordingly.
7118         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
7119         (git commit c59353896) started.  It turns out that having INTERACTIVE
7120         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
7121         still had the electric indent behavior, as `post-self-insert-hook'
7122         normally contains `electric-indent-post-self-insert-function' ever
7123         since `electric-indent-mode' has been on by default.  Tracing the code
7124         change in `open-line' is mildly twisty, because Artur Malabarba's
7125         earliest two commits of 24 Oct 2015 first removed the `interactive'
7126         form entirely (git commit 6939896e2) and then restored it with the new
7127         extra "p" already added (git commit bd4f04f86), such that there is no
7128         single-commit diff in which one sees the second "p" appear.  Thus this
7129         change is effectively a reversion of parts of each of those commits.
7131         This could close bug#21884, at least until further discussion.
7133 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
7135         Adhere closer to the "implicit tag name" definition
7137         * lisp/progmodes/etags.el (etags-tags-completion-table):
7138         Adhere closer to the "implicit tag name" definition.  Simplify
7139         the regexp.  Search for the explicit tag name first, and when
7140         not found, search locally for the implicit one.  (Bug#21934)
7142 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7144         Unrevert most of regexp reentrancy abort patch
7146         The problem was in:
7147           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
7148         which is hence not unreverted.
7149         The rest is:
7150         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7151         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
7152         All callers in regex.c changed back to the _FAST versions.
7154         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
7155         propertization in backward-sexp.
7157 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
7159         Revert regexp reentrancy abort patch
7161         Although the patch does fix Bug#21688 and prevents a core dump,
7162         it also makes the message-mode-propertize test fail; see:
7163         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
7164         Perhaps someone else can come up with a better fix some day.
7165         * src/syntax.c (update_syntax_table_forward):
7166         Propertize even when truncated.
7167         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7168         (UPDATE_SYNTAX_TABLE_FAST): Remove.
7169         All callers changed back to the non-_FAST versions.
7171 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
7173         Add a few safety checks when ENABLE_CHECKING
7175         This was motivated by the recent addition of module code,
7176         which added some ENABLE_CHECKING-enabled checks that are
7177         useful elsewhere too.
7178         * src/alloc.c (compact_font_cache_entry):
7179         * src/fns.c (sweep_weak_table):
7180         * src/lread.c (oblookup):
7181         Use gc_asize rather than doing it by hand.
7182         * src/emacs-module.c (module_make_global_ref)
7183         (module_free_global_ref, module_vec_size):
7184         Omit assertions that lisp.h now checks.
7185         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
7186         check that the result is nonnegative.  Use eassume, as this
7187         info can help a bit when optimizing production code.
7188         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
7189         to be consistent with the USE_LSB_TAG case.
7190         (gc_asize): New function, when ASIZE is needed in the gc.
7191         (gc_aset): Use it.
7192         (HASH_TABLE_P): Move definition up, so that it can be used ...
7193         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
7195 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7197         Simplify recording of main thread's ID on MS-Windows
7199         * src/w32term.c (w32_initialize):
7200         * src/w32console.c (initialize_w32_display):
7201         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
7202         ID independently for each type of session (GUI, TTY, batch).
7203         * src/w32term.c (w32_init_main_thread): New function, records the
7204         main thread's thread ID.
7205         * src/w32term.h: Add prototype for w32_init_main_thread.
7206         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
7208         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
7209         main_thread, for consistency with other threading libraries.  All
7210         users changed.  Include w32term.h.
7211         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
7212         make sure the main thread is alive, as we hold a handle on it
7213         opened by w32_init_main_thread.
7214         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
7215         w32_init_main_thread, instead of calling the requisite APIs once
7216         more.
7218 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7220         Call 'window-size-change-functions' for mini-windows
7222         * src/window.c (grow_mini_window, shrink_mini_window): Set the
7223         frame's 'window_sizes_changed' flag.
7224         * src/xdisp.c (redisplay_internal): Call the hooks on
7225         'window-size-change-functions' if the call to 'echo_area_display'
7226         sets the frame's 'window_sizes_changed' flag.
7227         (syms_of_xdisp) <window-size-change-functions>:
7228         Update doc string to indicate the mini-window resizes trigger a
7229         call to the hooks, and don't promise that will happen "before
7230         redisplay".  (Bug#19576, Bug#21333)
7232         * doc/lispref/windows.texi (Window Hooks): Update the description
7233         of 'window-size-change-functions'.
7235 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7237         Improve documentation of dynamic modules
7239         * src/fns.c (Frequire): Doc fix to include the dynamic module
7240         support.
7241         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
7242         dynamic module support.
7243         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
7244         wrt the MUST-SUFFIX argument.
7246         * etc/NEWS: Expand documentation of dynamically loaded modules.
7248 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
7250         Initial documentation for dynamic modules
7252         * etc/NEWS: Mention the new support for dynamically loaded modules.
7254 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
7256         Add xref--etags-backend to xref-backing-functions using add-hook
7258         * lisp/progmodes/xref.el (xref-backend-functions): Move the
7259         default value into a separate `add-hook' call (bug#21964).
7261         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
7262         Don't declare the xref-backend-functions variable.
7263         It doesn't make any difference.
7265 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7267         Fix double-decrement bug when freeing global refs
7269         * src/emacs-module.c (module_free_global_ref): Add a FIXME
7270         comment about error reporting.  Fix a recently-introduced typo
7271         that double-decremented the refcount.
7273 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7275         Declare emacs_module_init in the module API
7277         * src/emacs-module.h (emacs_module_init): New decl.
7278         Without it, GCC might complain about a module that defines
7279         emacs_module_init without using it.  This also checks the
7280         API better.
7282 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7284         Fix module test to use ptrdiff_t nargs too
7286         * modules/mod-test/mod-test.c (Fmod_test_return_t)
7287         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
7288         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
7289         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
7290         (Fmod_test_userptr_get, Fmod_test_vector_fill)
7291         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
7292         (finalizer): Remove; no longer used.
7294 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7296         Fix reindent-introduced typo in module code
7298         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
7299         introduced while reindenting the code earlier, and add a
7300         comment explaining the unusual use of do-while here.
7302 2015-11-20  Anders Lindgren  <andlind@gmail.com>
7304         Fixed bug#19576: `write-file' saves wrong buffer.
7306         If a function on the hook `window-size-change-functions' doesn't
7307         restore the current buffer, functions that save and restore the
7308         current window configuration (like `y-or-no-p') could silently
7309         change the current buffer.  When `write-file' asked the user
7310         confirmation to overwrite a file, `y-or-no-p' changed the current
7311         buffer, and the wrong buffer was saved to the file.
7313         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
7314         using the `norecord' parameter.
7315         (follow-window-size-change): Restore current buffer. Call
7316         `select-frame' using the `norecord' parameter. Cleanup.
7318 2015-11-20  John Wiegley  <johnw@newartisans.com>
7320         Correct a documentation error in frames.texi
7322 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
7324         * lisp/cedet/mode-local.el: Delete obsolete comment
7326 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7328         Module function arg counts are ptrdiff_t, not int
7330         * src/emacs-module.c (struct module_fun_env)
7331         (module_make_function, module_funcall, Fmodule_call):
7332         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
7333         Use ptrdiff_t, not int, for arg counts.
7334         * src/emacs-module.c (module_make_function): Don’t bother
7335         checking arity against MOST_POSITIVE_FIXNUM, as that’s
7336         unnecessary here.  Make the checking clearer by negating it.
7337         (module_make_function, Fmodule_call): No need to use xzalloc
7338         since the storage doesn’t need to be cleared.
7339         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
7340         for it, and many implementations are buggy with large VLAs anyway.
7341         Use SAFE_ALLOCA_LISP instead.
7342         (module_vec_set): Don’t crash if i < 0.
7343         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
7344         (module_vec_set, module_vec_get): Do fixnum checks only when
7345         i is out of array bounds, for efficiency in the usual case.
7346         (Fmodule_load): Simplify fixnum range check.
7347         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
7348         integer overflow in array allocation size.
7350 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
7352         Minor improvements in module test
7354         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
7355         about missing prototype of malloc.
7356         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
7357         compiler warnings.
7359 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
7361         Improve MS-Windows implementation in dynlib.c
7363         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
7364         No need to include windows.h, as w32.h already does that.
7365         <dynlib_last_err>: New static variable.
7366         (dynlib_reset_last_error): New function.
7367         (dynlib_open): Convert forward slashes to backslashes.  Convert
7368         file names from UTF-8 to either UTF-16 or the current ANSI
7369         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
7370         argument is NULL, return a handle to the main module, like
7371         'dlopen' does.  Record the error, if any, for use by dynlib_error.
7372         (dynlib_sym): Check the handle for validity. Record the error, if
7373         any, for use by dynlib_error.
7374         (dynlib_error): Call w32_strerror to produce the error string, and
7375         zero out the last error code, like dlerror does.
7376         (dynlib_close): Check the handle for validity.  Record the error,
7377         if any, for use by dynlib_error.  Don't call FreeLibrary with a
7378         handle for the main module.
7379         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
7381 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7383         Include-file tweaks for modules
7385         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
7386         * src/dynlib.h: Do not include config.h.
7387         It’s every .c file’s responsibility to include config.h first.
7388         * src/emacs-module.c: Include emacs-module.h immediately after
7389         config.h, to test that emacs-module.h doesn’t depend on
7390         include files other than config.h.
7392 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7394         Simplify push_handler and profile its malloc
7396         * src/lisp.h (PUSH_HANDLER): Remove.
7397         All callers changed to use push_handler directly.
7398         * src/eval.c (internal_condition_case)
7399         (internal_condition_case_1, internal_condition_case_2)
7400         (internal_condition_case_n):
7401         Use same pattern as for other invokers of push_handler.
7402         (push_handler, push_handler_nosignal): Use call-by-value
7403         instead of call-by-reference.  All uses changed.
7404         (push_handler): Simplify by rewriting in terms of
7405         push_handler_nosignal.
7406         (push_handler_nosignal): Profile any newly allocated memory.
7408 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7410         * src/emacs-module.h: Include stddef.h, not stdlib.h.
7412 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
7414         Discover repository version in linked worktrees (bug#21930)
7416         * lisp/version.el (emacs-repository--version-git-1): Do not assume
7417         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
7418         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
7419         is nil too.
7421 2015-11-19  Juri Linkov  <juri@linkov.net>
7423         * lisp/replace.el (occur-regexp-descr): New function.
7424         (occur-1, occur-engine): Use it.
7426         * lisp/isearch.el (isearch-occur): Propertize regexp with
7427         isearch-string and isearch-regexp-function-descr for
7428         occur-regexp-descr to display the correct description
7429         message in the header (bug#21176, bug#21180).
7431 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
7433         Revert `open-line' electric-indent sensitivity
7435         * lisp/simple.el (open-line): Remove electric indent code.
7436           (electric-indent-just-newline): Don't declare.
7438         * test/automated/simple-test.el (open-line-indent): Adjust test.
7440         This partly reverts Artur Malabarba's change that added electric
7441         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
7442         commit bd4f04f86), and adjusts a new test he added right afterwards
7443         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
7444         However, the new INTERACTIVE argument to `open-line', which he also
7445         added in the first commit, is not reverted here.
7447         See the thread "Questioning the new behavior of `open-line'." on the
7448         Emacs Devel mailing list, and in particular this message:
7450           From: Artur Malabarba
7451           Subject: Re: Questioning the new behavior of `open-line'.
7452           To: Karl Fogel
7453           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
7454           Date: Wed, 18 Nov 2015 21:03:58 +0000
7455           Message-ID: \
7456             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
7458           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
7460 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7462         Omit unnecessary clear in Fmodule_load
7464         * src/emacs-module.c (Fmodule_load):
7465         Simplify and avoid unnecessary initialization of priv member to 0.
7467         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
7469 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7471         Prefer signed integer types in module code
7473         Generally speaking, at the C level the Emacs source code prefers
7474         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
7475         partly to avoid the usual signedness confusion when comparing values.
7476         Change the module API to follow this convention.
7477         Use ‘int’ for small values that can’t exceed INT_MAX.
7478         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
7479         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
7480         (Fmod_test_vector_eq):
7481         * src/emacs-module.c (struct emacs_value_frame)
7482         (module_make_global_ref, module_free_global_ref)
7483         (module_copy_string_contents, module_make_string)
7484         (module_vec_set, module_vec_get, module_vec_size):
7485         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
7486         * src/lread.c (suffix_p):
7487         Prefer signed to unsigned integer types.
7489 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7491         Omit ‘const’ on locals
7493         Remove ‘const’ qualifier from locals that were newly added.
7494         We don’t normally bother declaring locals with ‘const’ even
7495         though they are not modified, for the same reason we don’t
7496         bother declaring them with ‘register’ even though their
7497         addresses are not taken; the advantage in compile-time
7498         checking isn’t worth the loss of readability.
7499         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
7500         (Fmod_test_vector_fill, Fmod_test_vector_eq):
7501         * src/emacs-module.c (MODULE_SETJMP_1)
7502         (module_make_global_ref, module_free_global_ref)
7503         (module_non_local_exit_get, module_make_function)
7504         (module_extract_integer, module_extract_float)
7505         (module_get_user_ptr, module_set_user_ptr)
7506         (module_get_user_finalizer, module_set_user_finalizer)
7507         (module_vec_get, Fmodule_call)
7508         (module_non_local_exit_signal_1)
7509         (module_non_local_exit_throw_1, lisp_to_value)
7510         (finalize_storage, allocate_emacs_value, mark_modules)
7511         (module_handle_signal, module_handle_throw)
7512         (module_format_fun_env):
7513         * src/eval.c (push_handler, push_handler_nosignal)
7514         (init_handler):
7515         * src/lread.c (suffix_p):
7516         Omit unnecessary ‘const’.
7518 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7520         Prefer intmax_t to int64_t in module code
7522         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
7523         * src/emacs-module.c (module_extract_integer)
7524         (module_make_integer):
7525         * src/emacs-module.h (struct emacs_env_25):
7526         Prefer intmax_t to int64_t.  This doesn’t change the generated
7527         code on any of the machines Emacs currently ports to, but it’s
7528         at least in theory more future-proof as C99 doesn’t guarantee
7529         that int64_t exists.
7531 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7533         Rename module.c to emacs-module.c, etc.
7535         * src/emacs-module.c: Rename from src/module.c.
7536         * src/emacs-module.h: Rename from src/module.h.
7537         All uses changed.
7539 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7541         Fix minor module problems found by static checking
7543         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
7544         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
7545         * src/module.c (Fmodule_load): Fix pointer signedness bug.
7546         (Fmodule_call): Tell GCC that the default case is unreachable.
7548 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7550         Style fixes for indenting etc. in module code
7552         This is mostly indenting and spacing changes.  Also, remove
7553         some unnecessary static decls instead of bothering to reindent them.
7554         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
7555         as most other Emacs files do for this sort of thing.
7557 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
7559         Minor improvements in modules testing Makefile
7561         * modules/mod-test/Makefile (EMACS, SO): New variables.
7562         (CFLAGS): When SO = dll, don't use -fPIC.
7563         (check): New target, runs the test.
7565 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
7567         * .gitignore: Add "*.dll".
7569 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7571         Migrate modules/.gitignore into .gitignore
7573         * .gitignore: Add former contents of modules/.gitignore.
7574         * modules/.gitignore: Remove.
7576 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7578         Add copyright notices to module code
7580         Put them in the usual format for GNU Emacs copyright notices.
7582 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7584         Rename emacs_module.h to module.h
7586         * src/module.h: Rename from src/emacs_module.h.
7587         All uses changed.
7589 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
7591         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
7593         * src/lread.c (Fload): Remove unused variable `size'
7595 2015-11-19  Alan Mackenzie  <acm@muc.de>
7597         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
7599 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
7601         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
7603         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
7604         vc-parent-buffer over log-view-mode fallback (bug#21955).
7606 2015-11-18  Alan Mackenzie  <acm@muc.de>
7608         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
7610 2015-11-18  Ken Brown  <kbrown@cornell.edu>
7612         * configure.ac (LIBMODULES): Don’t define on Cygwin
7614 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
7616         Fix MS-Windows build --with-modules
7618         * src/module.c: Reformat copyright commentary.
7619         (module_vec_get): Use explicit cast to size_t to avoid compiler
7620         warning in 32-bit builds.
7621         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
7622         Compare thread IDs directly, as GetThreadId is not available
7623         before Windows Vista.
7624         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
7625         without using APIs and constants not available on XP and older
7626         systems.  Obtain and store the thread ID as well.
7628 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7629             Philipp Stephani  <phst@google.com>
7631         Add dynamic module test and helper script
7633         Add 'modhelp.py' script (python2) to automate module testing and
7634         module generation.
7636         To build and test all modules in the modules/ dir
7637           $ ./modhelp.py test
7639         To generate a module from template code (good starting point)
7640           $ ./modhelp init mynewtestmodule
7642         See the script -h option for more documentation.
7644         * modules/modhelp.py: New module helper script.
7645         * modules/mod-test/Makefile: New file. Makefile for the test module.
7646         * modules/mod-test/mod-test.c: New file. Test module source file.
7647         * modules/mod-test/test.el: New file. ert test suite for the test module.
7648         * modules/.gitignore: New file. Local .gitignore file.
7650 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7652         Make 'Fload' look for modules
7654         'Fload' can now load dynamic modules. This also makes 'require' work.
7656         * src/lread.c:
7657           (suffix_p): New function.
7658           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
7659           with a module suffix.
7660           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
7662 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7663             Philipp Stephani  <phst@google.com>
7665         Add dynamic module module support
7667         * configure.ac: Add '--with-modules' option.  Conditionally add
7668           dynlib.o and module.o to the list of objects.  Add any system
7669           specific flags to the linker flags to support dynamic libraries.
7670         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
7671           attributes.
7672         * src/Makefile.in: Conditionally add module objects and linker flags.
7673         * src/alloc.c (garbage_collect_1): protect module local values from
7674           GC.
7675         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
7676         * src/emacs_module.h: New header file included by modules.  Public
7677           module API.
7678         * src/module.c: New module implementation file.
7680 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7682         Add new User Pointer (User_Ptr) type
7684         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
7685         (XUSER_PTR): New User_Ptr accessor.
7686         * src/alloc.c (make_user_ptr): New function.
7687         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
7688         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
7689         (Fuser-ptrp): New user pointer type predicate function.
7690         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
7691         subr.
7692         * src/print.c (print_object): Add printer for User_Ptr type.
7694 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7695             Philipp Stephani  <phst@google.com>
7697         Add portable layer for dynamic loading
7699         * src/dynlib.h: New file.
7700         * src/dynlib.c: New file.
7702 2015-11-18  Philipp Stephani  <phst@google.com>
7704         Add catch-all & no-signal version of PUSH_HANDLER
7706         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
7707         a new "catch-all" handler type.
7709         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
7710           functions.
7711         * src/fns.c (hash_remove_from_table): Expose function public.
7712         * src/lisp.h: New handler type, define macro to push_handler call.
7714 2015-11-18  Ken Brown  <kbrown@cornell.edu>
7716         Silence byte-compiler warning
7718         * lisp/server.el (server-process-filter): Silence byte-compiler
7719         warning.
7721 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
7723         Quote symbols in docstrings using `'
7725         Be more systematic about quoting symbols `like-this' rather than
7726         `like-this or 'like-this' in docstrings.  This follows up Artur
7727         Malabarba's email in:
7728         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
7730 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
7732         Fix savegames in dunnet
7734         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
7735           of separate implementation.
7737 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
7739         * lisp/emacs-lisp/package.el (package--with-response-buffer):
7741         Ensure we're at the start of the buffer before searching for
7742         the end of headers.
7744 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
7746         * admin/release-process: Improve wording.
7748 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
7750         Fix docstring quoting problems with ‘ '’
7752         Problem reported by Artur Malabarba in:
7753         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
7754         Most of these fixes are to documentation; many involve fixing
7755         longstanding quoting glitches that are independent of the
7756         recent substitute-command-keys changes.  The changes to code are:
7757         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
7758         (describe-mode-local-overload):
7759         Substitute docstrings before displaying them.
7760         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
7761         Quote the generated docstring for later substitution.
7763 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
7765         Improve configure --help text for wide ints
7767         * configure.ac (wide-int): Clarify user-level advantages and
7768         disadvantages.
7770 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
7772         Improve doc string
7774         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
7776 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
7778         eval_sub followed dangling pointer when debugging
7780         Problem reported by Pip Cet (Bug#21245).
7781         This bug could occur in eval_sub if the C compiler reused
7782         storage associated with the ‘argvals’ local after ‘argvals’
7783         went out of scope, and if the Elisp debugger stopped on Elisp
7784         function exit and accessed ‘argvals’.  It could also occur if
7785         a variadic function was called with so many arguments (over
7786         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
7787         SAFE_FREE freed the arguments, then the memory manager used
7788         the storage for other purposes, then the debugger accessed the
7789         arguments.
7790         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
7791         function body.  Simplify local decls.
7792         When allocating args via SAFE_ALLOCA, call
7793         debugger before invoking SAFE_FREE, as the debugger needs
7794         access to the args.
7795         (eval_sub, apply_lambda): Rework to avoid need for
7796         set_backtrace_debug_on_exit hack.  This is cleaner,
7797         and should work better with buggy custom debuggers.
7799 2015-11-16  Daiki Ueno  <ueno@gnu.org>
7801         * lisp/image-mode.el: Support encrypted file
7803         (image-toggle-display-image): Read content from the buffer instead
7804         of the file, if the buffer holds a decrypted data.  (Bug#21870)
7806 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
7808         ELF unexec: align section header
7810         This ports the recent unexelf.c changes to Fedora x86-64
7811         when configured with GCC’s -fsanitize=undefined option.
7812         * src/unexelf.c (unexec): Align new_data2_size to a multiple
7813         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
7814         pointer aligned appropriately for its type.
7816 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
7818         Do more checks on bytecode objects (Bug#21929)
7820         * src/eval.c (funcall_lambda): Check size of compiled function
7821         object.
7822         (Ffetch_bytecode): Likewise.
7824 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
7826         pcase.el: Fix edebugging of backquoted cons patterns
7828         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
7829         cons patterns. (Bug#21920)
7831 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
7833         Improve fix for regex reentrancy abort
7835         Suggested by Stefan Monnier (Bug#21688).
7836         * src/syntax.c (update_syntax_table_forward):
7837         Remove recently-added PROPERTIZE arg, and assume it is true.
7838         All callers changed.
7839         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7840         Invoke update_syntax_table directly.
7842 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
7844         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
7846         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
7848         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
7850 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
7852         Recognize .rbw and .pyw files (bug#18753)
7854         * lisp/progmodes/python.el (auto-mode-alist):
7855         Recognize .pyw files.
7857         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
7858         Recognize .rbw files.
7860 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7862         Fix ruby-mode auto-mode-alist entry
7864         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
7865         around the extensions (bug#21257).
7867 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7869         Fix etags completion near eob
7871         * lisp/progmodes/etags.el (tags-completion-at-point-function):
7872         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
7874 2015-11-15  Alan Mackenzie  <acm@muc.de>
7876         De-pessimize detection of C++ member initialization lists.
7878         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
7879         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
7880         is only called when a construct "looks right" rather than continually.
7881         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
7883 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
7885         Improve a few doc strings, comments
7887         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
7888         * lisp/cedet/ede/locate.el (ede-locate-base):
7889         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
7890         * src/fns.c (Fdelq): Improve doc string.
7892         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
7894 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7896         Enhance NSTRACE (trace output for NextStep).
7898         Trace can be disabled for groups of functions. By default, event
7899         functions and functions that generate lots of output are disabled.
7901         Trace output of Objective-C functions now use the "[ClassName
7902         parameter:]" form.
7904         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
7905         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
7906         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
7907         controlling in which function groups trace should be active.
7908         (NSTRACE_WHEN): Support for silencing a function, this also
7909         silencing all called functions.
7910         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
7911         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
7912         print the full screen state in NSTRACE functions.
7914         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
7915         can be accessed from multiple threads.
7916         (nstrace_enabled_global): New variable, when FALSE, trace is
7917         silenced.
7918         (nstrace_restore_global_trace_state): New function, used to
7919         restore `nstrace_enabled_global' at end of block.
7920         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
7921         ([EmacsWindow setFrame:display:animation:])
7922         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
7923         and call corresponding super function.
7924         (Many functions): Add or enhance trace output.
7926         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
7928         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
7930         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
7931         and call corresponding super function.
7933 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7935         Fixed a toolbar related issue on OS X.
7937         Earlier, when toggling the tool-bar in a maximized frame, the
7938         frame size didn't match the number of text lines, leaving an
7939         unused area at the bottom of the frame.
7941         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
7942         fullscreen modes when tool bar is disabled.
7944 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7946         Fixed OS X 10.6.8 build issue (bug#21862).
7948         * src/nsterm.h (EmacsView): Add missing declarations.
7949         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
7950         the standard method but without the notification parameter.
7951         Intended to be used for direct calls.
7952         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
7953         version of `windowDidBecomeKey'. Made the notification method call
7954         the non-notification method instead of the vice versa.
7955         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
7956         needed.
7958 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
7960         * lisp/faces.el (faces--attribute-at-point): Fix an issue
7962         Previous code would signal an error when the face at point was
7963         a manually built list of attributes such as '(:foregroud "white").
7965         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
7967 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
7969         Fix regex abort when it tries to reenter itself
7971         Problem reported by Ken Raeburn.
7972         Solution suggested by Stefan Monnier (Bug#21688).
7973         * src/regex.c (re_match_2_internal):
7974         Use new _FAST functions to avoid regex code reentering itself.
7975         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
7976         All callers changed.
7977         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
7978         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
7980 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7982         Improve Ruby 1.9-style keyword keys highlighting
7984         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
7985         Handle required keyword arguments (bug#21367).
7986         And highlight the colon together with the name.
7988 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7990         Unify the absolutely equal xref-backend-references implementations
7992         * lisp/progmodes/elisp-mode.el (xref-backend-references):
7993         Remove.
7995         * lisp/progmodes/etags.el (xref-backend-references):
7996         Remove.
7998         * lisp/progmodes/xref.el (xref-backend-references):
7999         Define the default implementation.
8001 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8003         Update project-find-regexp for the new xref API
8005         * lisp/progmodes/project.el (project--read-regexp):
8006         Update to use the new xref API methods.
8008         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
8010 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8012         Fix replacing a match with a shorter string
8014         In effect, partially reverting fe973fc.
8016         * lisp/progmodes/xref.el (xref-query-replace): Store the end
8017         of each match as a marker again, instead of length.
8018         (xref--query-replace-1): Update accordingly.
8020 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
8022         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
8024         Signal user-errors instead.
8026 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8028         Document 'describe-symbol'
8030         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
8031         (Name Help): Document "C-h o" and describe-symbol.
8033         * lisp/help-fns.el (describe-symbol): Doc fix.
8035 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
8037         Change test name to avoid spellcheck issue.
8039 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8041         Avoid signaling an error in 'describe-symbol'
8043         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
8044         exists as a function/variable/face/etc., but is undocumented.
8046         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
8047         test.
8049 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8051         * INSTALL (--with-cairo): Document this new configure option.
8053 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8055         Document that GNU Make >= 3.81 is required to build Emacs
8057         * doc/lispref/internals.texi (Building Emacs): Document that GNU
8058         Make 3.81 or later is now required.
8060 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8062         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
8064 2015-11-13  l3thal  <kwhite@gnu.org>
8066         Merge branch 'erc-async-reconnect' into emacs-25
8068         Reconnect asynchronously.
8070 2015-11-11  Alan Mackenzie  <acm@muc.de>
8072         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
8074         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
8075         Windows" and new @defun selected-window-group.
8076         (Window Start and End): Describe new &optional parameter GROUP and
8077         ...-group-function for window-start, window-end, set-window-start, and
8078         pos-visible-in-window-p.
8079         (Textual Scrolling) Describe the same for recenter.
8080         doc/lispref/positions.texi (Screen Lines): Describe the same for
8081         move-to-window-line.
8083         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
8084         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
8085         new optional parameter "group".  At the beginning of each, check whether the
8086         corresponding ...-group-function is set to a function, and if so execute this
8087         function in place of the normal processing.
8088         (syms_of_window): Define symbols for the six new variables below.
8089         (window-start-group-function, window-end-group-function)
8090         (set-window-start-group-function, recenter-group-function)
8091         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
8092         New permanent local buffer local variables.
8093         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
8094         Fpos_visible_in_window_p.
8096         lisp/window.el (selected-window-group-function): New permanent local buffer
8097         local variable.
8098         (selected-window-group): New function.
8100         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
8101         enable, kill them at mode disable.  Add/remove follow-after-change to/from
8102         after-change-functions.
8103         (follow-start-end-invalid): New variable.
8104         (follow-redisplay): Manipulate follow-start-end-invalid.
8105         (follow-after-change, follow-window-start, follow-window-end)
8106         (follow-set-window-start, follow-pos-visible-in-window-p)
8107         (follow-move-to-window-line, follow-sit-for): New functions.
8109         lisp/isearch.el (isearch-call-message): New macro.
8110         (isearch-update, with-isearch-suspended, isearch-del-char)
8111         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
8112         (with-isearch-suspended): Rearrange code such that isearch-call-message is
8113         invoked before point is moved.
8114         (isearch-message): Add comment about where point must be at function call.
8115         (isearch-search): Remove call to isearch-message.
8116         (isearch-lazy-highlight-window-group): New variable.
8117         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
8118         the battery of tests to ...
8119         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
8120         Note: (sit-for 0) is still called.
8121         (isearch-lazy-highlight-update): Check membership of
8122         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
8123         property.
8124         (isearch-update, isearch-done, isearch-string-out-of-window)
8125         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
8126         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
8127         (isearch-lazy-highlight-update): Call the six amended primitives (see
8128         src/window.c above) with the new `group' argument set to t, to cooperate
8129         with Follow Mode.
8131 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8133         * shr.el (shr-descend): Allow using lambdas in external functions.
8135 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8137         * admin/gitmerge.el: Tweaks that seemed necessary
8139         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
8140         (gitmerge-maybe-resume): Provide explicit empty commit message.
8142 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
8144         Use a different port for TLS erc
8146         * lisp/erc/erc.el (erc-default-port-tls): New variable
8147         (bug#19497).
8148         * lisp/erc/erc.el (erc-tls): Use it.
8150 2015-12-25  Alain Schneble  <a.s@realize.ch>
8152         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
8154         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
8155         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
8156         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
8157         information in URL-struct.
8158         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
8159         path and query into nil path and query, respectively.
8160         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
8161         empty path into an absolute ("/") path.
8162         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
8163         fragment-only URIs. Do not just return them unchanged.
8164         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
8165         reference URI should not drop the last segment.
8167 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8169         Let url use default file modes when copying files
8171         * lisp/url/url-handlers.el (url-copy-file): Use default file
8172         modes when copying files (bug#11400).
8174 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
8176         Doc fix for url-http
8178         * lisp/url/url-http.el (url-http): Document better return values
8179           (bug#13187) (tiny change)
8181 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8183         * eww.el (eww-display-html): Support <button> tags (bug#20485).
8185 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8187         Made ffap-url-p a defun instead of a defsubst
8189         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
8190         since there doesn't seem to be much of a reason for it to be a
8191         defsubst (bug#18203).
8193 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8195         Add a command to view files in the browser to dired
8197         * lisp/dired.el (dired-mode-map): Add the `W' command
8198         (bug#18810).
8200 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8202         Allow http://user:pass@foo/ URLs again
8204         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
8205         user/passwords in URLs (bug#19046).
8207 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8209         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
8211 2015-12-25  Samer Masterson  <samer@samertm.com>
8213         Autoload url-insert-buffer-contents
8215         * lisp/url/url-handlers.el: Add autoload cookie so that
8216         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
8218 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8220         Allow toggling colors in eww
8222         * doc/misc/eww.texi (Basics): Mention "C".
8224         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
8226         * lisp/net/shr.el (shr-use-colors): New variable.
8227         (shr-colorize-region): Use it.
8229 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8231         Follow meta refresh tags in eww
8233         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
8235 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8237         More eww file name coding fixes
8239         * eww.el (eww-decode-url-file-name): Use the base coding
8240         system to check for encodability.
8242 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8244         Always save eww history
8246         * eww.el (eww-setup-buffer): Always save history, even when
8247         called from outside the eww buffer (bug#19638).
8249 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8251         Default web pages to right-to-left
8253         * eww.el (eww-mode): Most web pages are left-to-right, so make
8254         that the default (bug#19801).
8256         * shr.el (shr-tag-html): Respect "dir" attributes
8257         (left-to-right, right-to-left).
8259 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8261         Make toggling checkboxes work again
8263         * eww.el (eww-update-field): Make toggling checkboxes work
8264         again (bug#21881).
8266 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8268         Don't store cookies with empty names
8270         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
8271         cookies with empty names (bug#21936).
8273 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8275         * shr.el (shr-descend): Stop rendering before we run out of
8276         specpdl room (bug#22117).
8278 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8280         Use cl-reduce, not reduce.
8282 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8284         Allow several <tbody> tags in shr
8286         * shr.el (shr-table-body): New function to find the real body
8287         of a table.
8288         (shr-tag-table): Use it to render several <tbody> tags in a
8289         table (bug#22170).
8291 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8293         Make prettier unique file names in eww
8295         (eww-make-unique-file-name): Make unique file names by making
8296         files like foo(2).jpg instead of foo(1)(2).jpg.
8298 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8300         Decode hex-encoded URLs before using them as file names
8302         * eww.el (eww-decode-url-file-name): New function.
8303         (eww-download-callback): Use it to decode file names before
8304         saving them.
8306 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
8308         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
8309         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
8311 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8313         Allow overriding shr functions from eww
8315         * eww.el (eww-display-html): Allow overriding elements in
8316         `shr-external-rendering-functions'.
8318 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8320         Ignore invalid SVG images
8322         * shr.el (shr-tag-svg): Ignore SVG images that have no width
8323         or height, because these can't be displayed by ImageMagick,
8324         anyway.
8326 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8328         shr table rendering fix
8330         * shr.el (shr-tag-table): Allow rendering body-less tables
8331         that have headers.
8333 2015-12-22  Sam Steingold  <sds@gnu.org>
8335         clipboard should still work even if interprogram-* is disabled
8337         (clipboard-yank): When `interprogram-cut-function' is nil,
8338         bind it to `gui-selection-value' - the default value.
8339         (clipboard-kill-region, clipboard-kill-ring-save): When
8340         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
8341         the default value.
8343 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
8345         Fix bootstrap issue with dired-loaddefs
8347         * lisp/dired.el: Autoloads for secondary files loaded optionally.
8349 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8351         dired generate autoloads to non-versioned file.
8353         * lisp/dired.el: Remove autoloads.
8354         * lisp/Makefile.in: Add dired to autogenel.
8355         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
8356         * test/lisp/dired-tests.el: Add new test.
8358 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8360         eieio generate autoloads to non-versioned file.
8362         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
8363         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
8364           Remove autoloads.
8365         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
8366           lisp/emacs-lisp/eieio-opt.el: Update file local.
8367         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
8369 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8371         htmlfontify generate autoload to non-versioned file.
8373         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
8374         * lisp/hfy-cmap.el: Update file local.
8375         * lisp/htmlfontify.el: Remove autoloads, add require.
8376         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
8378 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8380         ibuffer generate autoloads to non-versioned file.
8382         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
8383         * lisp/ibuf-ext.el: Update file local.
8384         * lisp/ibuffer.el: Remove autoloads and add a require.
8385         * test/lisp/ibuffer-tests.el: Test that autoload is working.
8387 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8389         rmail generate autoloads to non-versioned file.
8391         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
8392         * lisp/mail/rmail.el: Remove autoloads, add require.
8393         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
8394           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
8395           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
8396           lisp/mail/undigest.el: Update file-local.
8397         * test/lisp/mail/rmail-tests.el:
8399 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8401         Add autoload-force target.
8403         * lisp/Makefile.in (autoload-force): New target.
8405 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8407         ps-print generate autoloads to non versioned file.
8409         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
8410         * lisp/ps-print.el: Remove autoloads.
8411         * lisp/ps-mule.el: Update file-local.
8412         * test/lisp/ps-print-tests.el: Test autoload functionality.
8414 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8416         reftex generate autoloads to non versioned file.
8418         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
8419         * lisp/textmodes/reftex.el: Remove autoloads.
8420         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
8421           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
8422           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
8423           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
8424           lisp/textmodes/reftex-toc.el: Update autoload file-local.
8425         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
8426           function.
8428 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
8430         * lisp/calculator.el (calculator-define-key): Undo last change
8432         Make map argument mandatory instead (bug#22106).
8433         (calculator-add-operators): Pass the argument that's not optional any more.
8435 2015-12-03  Glenn Morris  <rgm@gnu.org>
8437         * Makefile.in: Avoid duplication.
8439         (have-tests): New rule.
8440         (check, check-maybe): Use it.
8442 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
8444         make check unconditional, check-maybe top-level.
8446          * Makefile.in: Add check-maybe target.
8447          * test/Makefile.in: Restore unconditional behaviour to make check.
8449 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
8451         Tests now support out-of-source-build.
8453          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
8454            about current working directory.
8456 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
8458         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
8460 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8462         Improve documentation and clean up.
8464          * test/Makefile.in: Improve documentation, use EMACS variable
8465            correctly, and clean up makefile rules.
8467 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8469         Update file headers for name change.
8471          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
8473 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8475         Test files renamed to new scheme.
8477          * (finalizer-tests.el): Now renamed alloc-tests.el
8478          * (zlib-tests.el): Now renamed decompress-tests.el.
8480 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8482         Tests now depend on source files
8484          * test/Makefile.in: Include dependences from tests to source files.
8485          * test/make-test-deps.emacs-lisp: New file
8486          * .gitignore: Ignore generated make include file
8488 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
8490         * lisp/progmodes/which-func.el: Improve disabling the mode
8492         Use lexical-binding.
8493         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
8494         (which-func, which-func-format): Remove redundant :group arg.
8495         (which-func-try-to-enable): New function.
8496         (which-func-ff-hook, which-function-mode): Use it.
8497         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
8498         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
8500 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
8502         * lisp/calculator.el (calculator-define-key): Silence warning
8504         ...about unknown calculator-mode-map.
8506 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8508         * lisp/calculator.el: more improvements and bugfixes.
8510         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
8511           effect anyway.)
8513         - Simplify `calculator-number-to-string' by throwing most of the work
8514           onto `number-to-string', leaving just some tweaks for decimal inputs.
8515           This leads to some minor changes, for example, pasting "1x1" in hex
8516           mode would warn that "x" is ignored and result in "11" (and it wasn't
8517           done in decimal mode), whereas now it just ignores everything from the
8518           "x" and on and result in a "1" just like in decimal input mode.  Also,
8519           overflows are left for `number-to-string' to deal with.
8521         - `calculator-paste' is very simple as a result.
8523         - Extend the simplified `calculator-paste': with a prefix argument it
8524           pastes a string as if the characters were entered.  This can be used
8525           to reduce expressions, but note that it's a simple literal operation,
8526           so precedence can be messed, a number can be paster while entering a
8527           number, spaces and newlines matter, etc.
8529         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
8530           operator.
8532         - Fix a bug in `calculator-put-value': avoid grouping in the display
8533           that is used to construct `calculator-curnum'.  This would trigger
8534           when pasting or getting a value from a register in some radix mode
8535           with a large enough value.  Another fix: make the output radix equal
8536           the input one, otherwise numbers could be converted twice.
8538 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8540         * lisp/calculator.el: Re-do key bindings.
8542         Use a helper function that arranges a parent keymap that binds alternate
8543         case keys so if some letter key is unbound and it's un/shifted version
8544         is, it will get used.  This makes the global-map trickery unnecessary.
8546         Also switch to passing strings that name keys through `kbd'.
8548 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8550         * lisp/calculator.el: improve radix modes
8552         Fix prompt for some input radix with decimal output (eg, "BD" instead of
8553         the incorrect "B="); also, some minor docstring tweaks for these.
8555 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8557         * lisp/calculator.el: better reading of register names
8559         Use `register-read-with-preview' with a dynamically bound
8560         `register-alist' and a proper preview function to read register names.
8562 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8564         * lisp/calculator.el: General improvements
8566         Use things like `when', `unless', and `push'.
8568         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
8569         non-electric mode.
8571 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
8573         Fix a problem with gfilenotify in filenotify-tests.el
8575         * test/lisp/filenotify-tests.el
8576         (file-notify--test-expected-events): Remove.
8577         (file-notify--test-cleanup): Do not set that variable.
8578         (file-notify--test-with-events): EVENTS can also be a list of lists.
8579         (file-notify-test02-events, file-notify-test04-file-validity):
8580         Adapt expected result.
8582 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
8584         * .gitignore: Adjust to changes in 'test' directory structure.
8586 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
8588         Fix test/manual/etags/Makefile
8590         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
8591         changes in 'test' directory structure.
8593 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
8595         Exclude resource dirs from search for tests.
8597         * test/Makefile.in: Test file locations are now found with find
8598           rather than using finds native functions.
8600 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
8602         Add test targets without directory names.
8604          * (test/Makefile.in): Extend test_template to add two targets for each
8605            file.
8607 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
8609         * lisp/emacs-lisp/package.el: Require url-handlers
8611 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
8613         Move elisp-mode-tests to new function names.
8615          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
8616          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
8618 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
8620         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
8622 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
8624         Merge branch 'feature/standard-test-location'
8626 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8628         * lisp/emacs-lisp/eieio.el: Add some default implementations
8630         (standard-class): Mark it obsolete.
8631         (slot-missing): Give it a default implementation.
8632         (destructor): Simplify and mark it obsolete.
8633         (object-print): Give it a default implementation.
8634         (eieio-change-class): Rename from change-class.
8635         (change-class): Redefine as obsolete alias.
8637 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8639         Some final fixes in file notification before merging with master
8641         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
8642         (file-notify-callback): Improve check for `stopped' event.  Call
8643         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
8644         (file-notify-add-watch): In case FILE is not a directory, call the
8645         file monitor for the kqueue backend.  Otherwise, call the
8646         directory monitor for the upper directory.
8648         * src/inotify.c (inotifyevent_to_event): Extract file name from
8649         watch_object if the event doesn't provide it.
8650         (Finotify_add_watch): Add file name to watch_object.
8652         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8653         Use different timeouts for different libraries.
8654         (file-notify--test-with-events): Suppress lock files.  Flush
8655         outstanding events before running the body.
8656         (file-notify-test02-events, file-notify-test04-file-validity): Do
8657         not skip cygwin tests.  Add additional test for file creation.
8658         Adapt expected result for different backends.
8659         (file-notify-test03-autorevert): Some of the tests don't work for
8660         w32notify.
8661         (file-notify-test06-many-events): Rename into both directions.
8663 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8665         Rework file notifications, kqueue has problems with directory monitors
8667         * lisp/filenotify.el (file-notify-add-watch): Call the native
8668         add-watch function on the file, not on the dir.
8670         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
8671         about already deleted entries.
8673         * test/automated/auto-revert-tests.el
8674         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
8675         since this deletes the target file first.
8677         * test/automated/file-notify-tests.el (file-notify--test-event-test):
8678         Make stronger checks.
8679         (file-notify-test01-add-watch, file-notify-test02-events)
8680         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
8681         Rewrite in order to call file monitors but directory monitors.
8682         (file-notify-test06-many-events): Ler rename work in both directions.
8684 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8686         Continue with pending events
8688         * src/kqueue.c (pending_events): Remove global variable.
8689         (kqueue_compare_dir_list): Create `write' event for not used
8690         pending events.
8691         (globals_of_kqueue): Remove initialization of pending_events.
8693 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8695         Improve loops in file-notify-test06-many-events
8697         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8698         Use `read-event' pauses for the `write-file' loops; otherwise
8699         events are lost in inotify and gfilenotify cases.
8701 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8703         Handle more complex rename operation in kqueue
8705         * src/kqueue.c (pending_events): New variable.
8706         (kqueue_compare_dir_list): Handle more complex rename operation.
8707         (globals_of_kqueue): Initialize pending_events.
8709         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8710         Adapt expected events in the `rename-file' case.
8711         (file-notify-test06-many-events-remote): Declare.
8713 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
8715         New test with a larger number of events
8717         * test/automated/file-notify-tests.el (file-notify--test-with-events):
8718         Make timeout heuristically depend on the number of events.
8720         (file-notify-test06-many-events): Use it for new test.
8722 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8724         Further fixes for kqueue
8726         * lisp/filenotify.el (file-notify-callback): Raise also event if
8727         directory name matches.
8728         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
8730         * src/kqueue.c (kqueue_generate_event): Use watch_object as
8731         argument instead of ident.  Remove callback argument.  Adapt
8732         callees.  Check actions whether they are monitored flags.
8734         * test/automated/file-notify-tests.el (file-notify--test-library):
8735         New defun.
8736         (file-notify-test00-availability, file-notify-test02-events)
8737         (file-notify-test04-file-validity)
8738         (file-notify-test05-dir-validity): Use it.
8739         (file-notify-test02-events, file-notify-test04-file-validity): Add
8740         `read-event' calls between different file actions, in order to
8741         give the backends a chance to rais an event.  Needed especially
8742         for kqueue.  In case of deleting a directory, there are two
8743         `deleted' events.
8745 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8747         Code cleanup of kqueue.c
8749         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
8750         (kqueue_compare_dir_list): Do not loop when calling
8751         directory_files_internal.  Remove checks for "." and "..", this is
8752         done in kqueue_directory_listing now.
8753         (Fkqueue_add_watch): Check for proper emacs_open flags.
8755 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8757         Doc changes for kqueue
8759         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
8760         Fix some glitches in the example.
8762 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8764         Finish implementation in kqueue.c
8766         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
8767         Simplify access to list.
8768         (kqueue_compare_dir_list): Simplify access to list.  Raise
8769         `delete' event if directory does not exist any longer.  Otherwise,
8770         wait until directory contents has changed.  Fix error in check.
8772 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8774         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
8776 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8778         More work on kqueue
8780         * lisp/filenotify.el (file-notify-callback): Handle also the
8781         `rename' event from kqueue.
8782         (file-notify-add-watch): Do not register an entry twice.
8784         * src/kqueue.c (kqueue_directory_listing): New function.
8785         (kqueue_generate_event): New argument FILE1.  Adapt callees.
8786         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
8788 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8790         Implement directory events
8792         * lisp/filenotify.el (file-notify-handle-event)
8793         (file-notify-callback): Remove traces.
8795         * src/kqueue.c: Include <sys/time.h>.
8796         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
8797         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
8798         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
8799         Compute initial directory listing.  Close file descriptor in case
8800         of errors.
8801         (syms_of_kqueue): Declare Qcreate.
8803 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
8805         Build fixes for kqueue support
8807         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
8808         flag.
8810         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
8811         kqueue on *BSD.
8813 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8815         Continue kqueue implementation
8817         * lisp/filenotify.el (file-notify-handle-event)
8818         (file-notify-callback): Enable trace messages.
8820         * src/kqueue.c: Include also <sys/types.h>.
8821         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
8822         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
8823         (syms_of_kqueue): Add them.
8825 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8827         Work on kqueue
8829         * lisp/filenotify.el (file-notify--library)
8830         (file-notify-descriptors, file-notify-callback)
8831         (file-notify-add-watch, file-notify-rm-watch)
8832         (file-notify-valid-p): Add kqueue support.
8834         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
8836 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8838         Add kqueue support
8840         * configure.ac (--with-file-notification): Add kqueue.
8841         (top): Remove special test for "${HAVE_NS}" and
8842         ${with_file_notification}, this is handled inside gfilenotify
8843         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
8844         instead of library specific variables.
8846         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
8848         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
8850         * src/kqueue.c: New file.
8852         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
8854 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8856         Update elisp-mode-tests for changed file location.
8858          * test/lisp/progmodes/elisp-mode-tests.el:
8860 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8862         Exclude manual tests from Makefile
8864          * test/Makefile.in:
8866 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8868         Move package test files to new directory.
8870          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
8871          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
8873 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8875         Restore delete Makefiles and fix .gitignore.
8877          * .gitignore: Update Makefiles to changed locations
8878          * test/lisp/progmodes/flymake-resources/Makefile,
8879            test/manual/etags/Makefile,
8880            test/manual/etags/make-src/Makefile,
8881            test/manual/indent/Makefile: Restored and moved to new location.
8883 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8885         Test infrastructure: updates after directory move
8887          * (test/Makefile.in): Support directories several levels deep.
8888          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
8889          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
8891 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8893         Rename all test files to reflect source layout.
8895          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
8896            test directory moves.
8897          * test/file-organisation.org: New file.
8898          * test/automated/Makefile.in
8899            test/automated/data/decompress/foo.gz
8900            test/automated/data/epg/pubkey.asc
8901            test/automated/data/epg/seckey.asc
8902            test/automated/data/files-bug18141.el.gz
8903            test/automated/data/flymake/test.c
8904            test/automated/data/flymake/test.pl
8905            test/automated/data/package/archive-contents
8906            test/automated/data/package/key.pub
8907            test/automated/data/package/key.sec
8908            test/automated/data/package/multi-file-0.2.3.tar
8909            test/automated/data/package/multi-file-readme.txt
8910            test/automated/data/package/newer-versions/archive-contents
8911            test/automated/data/package/newer-versions/new-pkg-1.0.el
8912            test/automated/data/package/newer-versions/simple-single-1.4.el
8913            test/automated/data/package/package-test-server.py
8914            test/automated/data/package/signed/archive-contents
8915            test/automated/data/package/signed/archive-contents.sig
8916            test/automated/data/package/signed/signed-bad-1.0.el
8917            test/automated/data/package/signed/signed-bad-1.0.el.sig
8918            test/automated/data/package/signed/signed-good-1.0.el
8919            test/automated/data/package/signed/signed-good-1.0.el.sig
8920            test/automated/data/package/simple-depend-1.0.el
8921            test/automated/data/package/simple-single-1.3.el
8922            test/automated/data/package/simple-single-readme.txt
8923            test/automated/data/package/simple-two-depend-1.1.el
8924            test/automated/abbrev-tests.el
8925            test/automated/auto-revert-tests.el
8926            test/automated/calc-tests.el
8927            test/automated/icalendar-tests.el
8928            test/automated/character-fold-tests.el
8929            test/automated/comint-testsuite.el
8930            test/automated/descr-text-test.el
8931            test/automated/electric-tests.el
8932            test/automated/cl-generic-tests.el
8933            test/automated/cl-lib-tests.el
8934            test/automated/eieio-test-methodinvoke.el
8935            test/automated/eieio-test-persist.el
8936            test/automated/eieio-tests.el
8937            test/automated/ert-tests.el
8938            test/automated/ert-x-tests.el
8939            test/automated/generator-tests.el
8940            test/automated/let-alist.el
8941            test/automated/map-tests.el
8942            test/automated/advice-tests.el
8943            test/automated/package-test.el
8944            test/automated/pcase-tests.el
8945            test/automated/regexp-tests.el
8946            test/automated/seq-tests.el
8947            test/automated/subr-x-tests.el
8948            test/automated/tabulated-list-test.el
8949            test/automated/thunk-tests.el
8950            test/automated/timer-tests.el
8951            test/automated/epg-tests.el
8952            test/automated/eshell.el
8953            test/automated/faces-tests.el
8954            test/automated/file-notify-tests.el
8955            test/automated/auth-source-tests.el
8956            test/automated/gnus-tests.el
8957            test/automated/message-mode-tests.el
8958            test/automated/help-fns.el
8959            test/automated/imenu-test.el
8960            test/automated/info-xref.el
8961            test/automated/mule-util.el
8962            test/automated/isearch-tests.el
8963            test/automated/json-tests.el
8964            test/automated/bytecomp-tests.el
8965            test/automated/coding-tests.el
8966            test/automated/core-elisp-tests.el
8967            test/automated/decoder-tests.el
8968            test/automated/files.el
8969            test/automated/font-parse-tests.el
8970            test/automated/lexbind-tests.el
8971            test/automated/occur-tests.el
8972            test/automated/process-tests.el
8973            test/automated/syntax-tests.el
8974            test/automated/textprop-tests.el
8975            test/automated/undo-tests.el
8976            test/automated/man-tests.el
8977            test/automated/completion-tests.el
8978            test/automated/dbus-tests.el
8979            test/automated/newsticker-tests.el
8980            test/automated/sasl-scram-rfc-tests.el
8981            test/automated/tramp-tests.el
8982            test/automated/obarray-tests.el
8983            test/automated/compile-tests.el
8984            test/automated/elisp-mode-tests.el
8985            test/automated/f90.el
8986            test/automated/flymake-tests.el
8987            test/automated/python-tests.el
8988            test/automated/ruby-mode-tests.el
8989            test/automated/subword-tests.el
8990            test/automated/replace-tests.el
8991            test/automated/simple-test.el
8992            test/automated/sort-tests.el
8993            test/automated/subr-tests.el
8994            test/automated/reftex-tests.el
8995            test/automated/sgml-mode-tests.el
8996            test/automated/tildify-tests.el
8997            test/automated/thingatpt.el
8998            test/automated/url-future-tests.el
8999            test/automated/url-util-tests.el
9000            test/automated/add-log-tests.el
9001            test/automated/vc-bzr.el
9002            test/automated/vc-tests.el
9003            test/automated/xml-parse-tests.el
9004            test/BidiCharacterTest.txt
9005            test/biditest.el
9006            test/cedet/cedet-utests.el
9007            test/cedet/ede-tests.el
9008            test/cedet/semantic-ia-utest.el
9009            test/cedet/semantic-tests.el
9010            test/cedet/semantic-utest-c.el
9011            test/cedet/semantic-utest.el
9012            test/cedet/srecode-tests.el
9013            test/cedet/tests/test.c
9014            test/cedet/tests/test.el
9015            test/cedet/tests/test.make
9016            test/cedet/tests/testdoublens.cpp
9017            test/cedet/tests/testdoublens.hpp
9018            test/cedet/tests/testfriends.cpp
9019            test/cedet/tests/testjavacomp.java
9020            test/cedet/tests/testnsp.cpp
9021            test/cedet/tests/testpolymorph.cpp
9022            test/cedet/tests/testspp.c
9023            test/cedet/tests/testsppcomplete.c
9024            test/cedet/tests/testsppreplace.c
9025            test/cedet/tests/testsppreplaced.c
9026            test/cedet/tests/testsubclass.cpp
9027            test/cedet/tests/testsubclass.hh
9028            test/cedet/tests/testtypedefs.cpp
9029            test/cedet/tests/testvarnames.c
9030            test/etags/CTAGS.good
9031            test/etags/ETAGS.good_1
9032            test/etags/ETAGS.good_2
9033            test/etags/ETAGS.good_3
9034            test/etags/ETAGS.good_4
9035            test/etags/ETAGS.good_5
9036            test/etags/ETAGS.good_6
9037            test/etags/a-src/empty.zz
9038            test/etags/a-src/empty.zz.gz
9039            test/etags/ada-src/2ataspri.adb
9040            test/etags/ada-src/2ataspri.ads
9041            test/etags/ada-src/etags-test-for.ada
9042            test/etags/ada-src/waroquiers.ada
9043            test/etags/c-src/a/b/b.c
9044            test/etags/c-src/abbrev.c
9045            test/etags/c-src/c.c
9046            test/etags/c-src/dostorture.c
9047            test/etags/c-src/emacs/src/gmalloc.c
9048            test/etags/c-src/emacs/src/keyboard.c
9049            test/etags/c-src/emacs/src/lisp.h
9050            test/etags/c-src/emacs/src/regex.h
9051            test/etags/c-src/etags.c
9052            test/etags/c-src/exit.c
9053            test/etags/c-src/exit.strange_suffix
9054            test/etags/c-src/fail.c
9055            test/etags/c-src/getopt.h
9056            test/etags/c-src/h.h
9057            test/etags/c-src/machsyscalls.c
9058            test/etags/c-src/machsyscalls.h
9059            test/etags/c-src/sysdep.h
9060            test/etags/c-src/tab.c
9061            test/etags/c-src/torture.c
9062            test/etags/cp-src/MDiagArray2.h
9063            test/etags/cp-src/Range.h
9064            test/etags/cp-src/burton.cpp
9065            test/etags/cp-src/c.C
9066            test/etags/cp-src/clheir.cpp.gz
9067            test/etags/cp-src/clheir.hpp
9068            test/etags/cp-src/conway.cpp
9069            test/etags/cp-src/conway.hpp
9070            test/etags/cp-src/fail.C
9071            test/etags/cp-src/functions.cpp
9072            test/etags/cp-src/screen.cpp
9073            test/etags/cp-src/screen.hpp
9074            test/etags/cp-src/x.cc
9075            test/etags/el-src/TAGTEST.EL
9076            test/etags/el-src/emacs/lisp/progmodes/etags.el
9077            test/etags/erl-src/gs_dialog.erl
9078            test/etags/f-src/entry.for
9079            test/etags/f-src/entry.strange.gz
9080            test/etags/f-src/entry.strange_suffix
9081            test/etags/forth-src/test-forth.fth
9082            test/etags/html-src/algrthms.html
9083            test/etags/html-src/index.shtml
9084            test/etags/html-src/software.html
9085            test/etags/html-src/softwarelibero.html
9086            test/etags/lua-src/allegro.lua
9087            test/etags/objc-src/PackInsp.h
9088            test/etags/objc-src/PackInsp.m
9089            test/etags/objc-src/Subprocess.h
9090            test/etags/objc-src/Subprocess.m
9091            test/etags/objcpp-src/SimpleCalc.H
9092            test/etags/objcpp-src/SimpleCalc.M
9093            test/etags/pas-src/common.pas
9094            test/etags/perl-src/htlmify-cystic
9095            test/etags/perl-src/kai-test.pl
9096            test/etags/perl-src/yagrip.pl
9097            test/etags/php-src/lce_functions.php
9098            test/etags/php-src/ptest.php
9099            test/etags/php-src/sendmail.php
9100            test/etags/prol-src/natded.prolog
9101            test/etags/prol-src/ordsets.prolog
9102            test/etags/ps-src/rfc1245.ps
9103            test/etags/pyt-src/server.py
9104            test/etags/tex-src/gzip.texi
9105            test/etags/tex-src/nonewline.tex
9106            test/etags/tex-src/testenv.tex
9107            test/etags/tex-src/texinfo.tex
9108            test/etags/y-src/atest.y
9109            test/etags/y-src/cccp.c
9110            test/etags/y-src/cccp.y
9111            test/etags/y-src/parse.c
9112            test/etags/y-src/parse.y
9113            test/indent/css-mode.css
9114            test/indent/js-indent-init-dynamic.js
9115            test/indent/js-indent-init-t.js
9116            test/indent/js-jsx.js
9117            test/indent/js.js
9118            test/indent/latex-mode.tex
9119            test/indent/modula2.mod
9120            test/indent/nxml.xml
9121            test/indent/octave.m
9122            test/indent/pascal.pas
9123            test/indent/perl.perl
9124            test/indent/prolog.prolog
9125            test/indent/ps-mode.ps
9126            test/indent/ruby.rb
9127            test/indent/scheme.scm
9128            test/indent/scss-mode.scss
9129            test/indent/sgml-mode-attribute.html
9130            test/indent/shell.rc
9131            test/indent/shell.sh
9132            test/redisplay-testsuite.el
9133            test/rmailmm.el
9134            test/automated/buffer-tests.el
9135            test/automated/cmds-tests.el
9136            test/automated/data-tests.el
9137            test/automated/finalizer-tests.el
9138            test/automated/fns-tests.el
9139            test/automated/inotify-test.el
9140            test/automated/keymap-tests.el
9141            test/automated/print-tests.el
9142            test/automated/libxml-tests.el
9143            test/automated/zlib-tests.el: Files Moved.
9145 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
9147         Rework file notifications, kqueue has problems with directory monitors
9149         * lisp/filenotify.el (file-notify-add-watch): Call the native
9150         add-watch function on the file, not on the dir.
9152         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
9153         about already deleted entries.
9155         * test/automated/auto-revert-tests.el
9156         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
9157         since this deletes the target file first.
9159         * test/automated/file-notify-tests.el (file-notify--test-event-test):
9160         Make stronger checks.
9161         (file-notify-test01-add-watch, file-notify-test02-events)
9162         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
9163         Rewrite in order to call file monitors but directory monitors.
9164         (file-notify-test06-many-events): Ler rename work in both directions.
9166 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
9168         Continie with pending events
9170         * src/kqueue.c (pending_events): Remove global variable.
9171         (kqueue_compare_dir_list): Create `write' event for not used
9172         pending events.
9173         (globals_of_kqueue): Remove initialization of pending_events.
9175 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
9177         Improve loops in file-notify-test06-many-events
9179         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
9180         Use `read-event' pauses for the `write-file' loops; otherwise
9181         events are lost in inotify and gfilenotify cases.
9183 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
9185         Handle more complex rename operation in kqueue
9187         * src/kqueue.c (pending_events): New variable.
9188         (kqueue_compare_dir_list): Handle more complex rename operation.
9189         (globals_of_kqueue): Initialize pending_events.
9191         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
9192         Adapt expected events in the `rename-file' case.
9193         (file-notify-test06-many-events-remote): Declare.
9195 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
9197         New test with a larger number of events.
9199         * test/automated/file-notify-tests.el (file-notify--test-with-events):
9200         Make timeout heuristically depend on the number of events.
9202         (file-notify-test06-many-events): Use it for new test.
9204 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
9206         Further fixes for kqueue.
9208         * lisp/filenotify.el (file-notify-callback): Raise also event if
9209         directory name matches.
9210         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
9212         * src/kqueue.c (kqueue_generate_event): Use watch_object as
9213         argument instead of ident.  Remove callback argument.  Adapt
9214         callees.  Check actions whether they are monitored flags.
9216         * test/automated/file-notify-tests.el (file-notify--test-library):
9217         New defun.
9218         (file-notify-test00-availability, file-notify-test02-events)
9219         (file-notify-test04-file-validity)
9220         (file-notify-test05-dir-validity): Use it.
9221         (file-notify-test02-events, file-notify-test04-file-validity): Add
9222         `read-event' calls between different file actions, in order to
9223         give the backends a chance to rais an event.  Needed especially
9224         for kqueue.  In case of deleting a directory, there are two
9225         `deleted' events.
9227 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
9229         Code cleanup of kqueue.c
9231         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
9232         (kqueue_compare_dir_list): Do not loop when calling
9233         directory_files_internal.  Remove checks for "." and "..", this is
9234         done in kqueue_directory_listing now.
9235         (Fkqueue_add_watch): Check for proper emacs_open flags.
9237 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
9239         Doc changes for kqueue
9241         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
9242         Fix some glitches in the example.
9244 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
9246         Finish implementation in kqueue.c
9248         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
9249         Simplify access to list.
9250         (kqueue_compare_dir_list): Simplify access to list.  Raise
9251         `delete' event if directory does not exist any longer.  Otherwise,
9252         wait until directory contents has changed.  Fix error in check.
9254 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
9256         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
9258 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
9260         More work on kqueue
9262         * lisp/filenotify.el (file-notify-callback): Handle also the
9263         `rename' event from kqueue.
9264         (file-notify-add-watch): Do not register an entry twice.
9266         * src/kqueue.c (kqueue_directory_listing): New function.
9267         (kqueue_generate_event): New argument FILE1.  Adapt callees.
9268         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
9270 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
9272         Implement directory events
9274         * lisp/filenotify.el (file-notify-handle-event)
9275         (file-notify-callback): Remove traces.
9277         * src/kqueue.c: Include <sys/time.h>.
9278         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
9279         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
9280         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
9281         Compute initial directory listing.  Close file descriptor in case
9282         of errors.
9283         (syms_of_kqueue): Declare Qcreate.
9285 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
9287         Build fixes for kqueue support.
9289         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
9290         flag.
9292         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
9293         kqueue on *BSD.
9295 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
9297         Continue kqueue implementation
9299         * lisp/filenotify.el (file-notify-handle-event)
9300         (file-notify-callback): Enable trace messages.
9302         * src/kqueue.c: Include also <sys/types.h>.
9303         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
9304         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
9305         (syms_of_kqueue): Add them.
9307 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
9309         Work on kqueue
9311         * lisp/filenotify.el (file-notify--library)
9312         (file-notify-descriptors, file-notify-callback)
9313         (file-notify-add-watch, file-notify-rm-watch)
9314         (file-notify-valid-p): Add kqueue support.
9316         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
9318 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
9320         Add kqueue support
9322         * configure.ac (--with-file-notification): Add kqueue.
9323         (top): Remove special test for "${HAVE_NS}" and
9324         ${with_file_notification}, this is handled inside gfilenotify
9325         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
9326         instead of library specific variables.
9328         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
9330         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
9332         * src/kqueue.c: New file.
9334         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
9336 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
9338         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
9340         * verilog-mode.el (verilog-save-font-no-change-functions):
9341         Commentary and fix pre-Emacs 21 behavior.
9343 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
9345         Use obarray functions from obarray.
9347         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
9348           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
9349           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
9350           delegate to obarray.el functions.
9351         * lisp/loadup.el: load obarray before abbrev
9352         * test/automated/abbrev-tests.el: new tests
9354 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
9356         epa.el: Add option to replace original text
9358         * lisp/epa.el (epa-replace-original-text): New user option.
9359         (Bug#21947)
9361 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
9363         Add interactive seek command.
9365         * lisp/mpc.el (mpc-cmd-seekcur): New function.
9366         (mpc-seek-current): New command.
9367         (mpc-mode-menu): Add entry for mpc-seek-current
9368         (mpc-mode-map): Bind mpc-seek-current to "g"
9370 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
9372         Fix issue where a new tempfile was created every refresh
9374         * lisp/mpc.el (mpc-format): Leave dir as relative path
9376 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
9378         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
9380         (c-save-buffer-state): Use with-silent-modifications when available.
9381         (c--macroexpand-all): Check macroexpand-all directly rather than
9382         c--mapcan-status.
9384 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
9386         * lisp/loadup.el: Set max-lisp-eval-depth here
9388         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
9389         (BYTE_COMPILE_FLAGS): Adjust accordingly.
9391 2015-11-17  João Távora  <joaotavora@gmail.com>
9393         Minor fix to comment indentation and typo in last commit
9395         * linum.el (linum-update-window): Fix comment indentation and a
9396         typo.
9398 2015-11-17  João Távora  <joaotavora@gmail.com>
9400         linum-mode plays more nicely with other margin-setting extensions
9402         linum.el will only modify the left margin if it needs to, and will
9403         only reset the it back to 0 if it guesses that no-one has touched that
9404         margin in the meantime.
9406         As such, this is a more of a workaround than an actual fix, but fixes
9407         the problems described in bug#20674 regarding the interaction with
9408         modes such as darkroom-mode and olivetti-mode.
9410         A similar fix was commited to nlinum.el in ELPA.git's
9411         e7f5f549fbfb740b911fb7f33b42381ecece56d8
9413         * linum.el (linum-delete-overlays): Restore margins more
9414         criteriously.
9415         (linum-update-window): Set margins more criteriously.
9417 2015-11-16  Daiki Ueno  <ueno@gnu.org>
9419         * lisp/image-mode.el: Support encrypted file
9421         (image-toggle-display-image): Read content from the buffer instead
9422         of the file, if the buffer holds a decrypted data.  (Bug#21870)
9424 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
9426         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
9428 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
9430         * lisp/emacs-lisp/package.el: Fix a decoding issue
9432         (package--with-response-buffer): Use `url-insert-buffer-contents'.
9433         The previous code had some issues with decoding. Refactoring that
9434         function allows us to use the decoding from url-handlers while still
9435         treating both sync and async requests the same.
9437         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
9438         `url-insert-buffer-contents'.
9439         (url-insert-buffer-contents): New function
9441 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9443         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
9445         (verilog-save-buffer-state): Use with-silent-modifications when available.
9446         (verilog-save-font-no-change-functions): Don't bind
9447         before/after-change-functions if it's not needed.
9449 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9451         * CONTRIBUTE: Remove information about feature freeze.
9453         Merge branch 'release-process-lowercase'
9455 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9457         Document the release process
9459         * admin/notes/versioning: Add information about RC releases.
9460         * admin/release-process: Document the release process.
9461         * admin/authors.el (authors-ignored-files):
9462         * admin/README: Change FOR-RELEASE to release-process.
9463         * CONTRIBUTE:
9464         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
9466 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9468         * admin/release-process: Rename from admin/FOR-RELEASE.
9470 2015-11-14  David Engster  <deng@randomsample.de>
9472         gitmerge: Fix git log command
9474         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
9475         only want commits from the branch that is to be merged.
9476         (gitmerge-setup-log-buffer): Use the same symmetric range as in
9477         `gitmerge-missing'.
9479 2015-11-14  David Engster  <deng@randomsample.de>
9481         gitmerge: Try to detect cherry-picks
9483         * admin/gitmerge.el (gitmerge-default-branch): Change to
9484         origin/emacs-25.
9485         (gitmerge-missing): Use symmetric difference ('...') between
9486         branch and master so that cherry-picks can be detected.
9488 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9490         Increment Emacs version on master branch
9492         * lisp/cus-edit.el (customize-changed-options-previous-release):
9493         Increase previous version to 24.5.
9495         * configure.ac:
9496         * msdos/sed2v2.inp: Bump version to 25.1.50.
9498 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9500         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
9501         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
9502         * README: Mention CONTRIBUTE.
9504 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
9506         Update verilog-mode.el to 2015-11-09-b121d60-vpo
9508         * verilog-mode.el (verilog-auto, verilog-delete-auto)
9509         (verilog-modi-cache-results, verilog-save-buffer-state)
9510         (verilog-save-font-no-change-functions): When internally suppressing
9511         change functions, use `inhibit-modification-hooks' and call
9512         `after-change-funtions' to more nicely work with user hooks.
9513         Reported by Stefan Monnier.
9514         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
9515         Create `verilog-delete-auto-buffer' to avoid double-calling
9516         fontification hooks.
9517         (verilog-restore-buffer-modified-p, verilog-auto)
9518         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
9519         set-buffer-modified-p.  Reported by Stefan Monnier.
9520         (verilog-diff-auto, verilog-diff-buffers-p)
9521         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
9522         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
9523         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
9524         by Amol Nagapurkar.
9525         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
9526         properties inside internal structures.  No functional change
9527         intended.
9529 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
9531         Use generic dispatch for xref backends
9533         * lisp/progmodes/xref.el (xref-backend-functions):
9534         New variable.
9535         (xref-find-function): Remove.
9536         (xref-find-backend)
9537         (xref--etags-backend): New functions.
9538         (xref-identifier-at-point-function)
9539         (xref-identifier-completion-table-function): Remove.
9540         (xref-backend-definitions, xref-backend-references)
9541         (xref-backend-apropos, xref-backend-identifier-at-point)
9542         (xref-backend-identifier-completion-table):
9543         New generic functions.
9545         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
9546         Add `elisp--xref-backend' to the beginning of
9547         `xref-backend-functions', locally.  Delete references to
9548         removed functions and vars.
9549         (elisp-xref-find): Remove.
9550         (elisp--xref-backend): New function.
9551         (elisp--xref-find-references, elisp--xref-find-apropos)
9552         (elisp--xref-identifier-completion-table):
9553         Turn into appropriately named generic methods.
9555         * lisp/progmodes/etags.el (etags-xref-find): Remove.
9556         (xref-backend-identifier-completion-table)
9557         (xref-backend-references, xref-backend-definitions)
9558         (xref-backend-apropos): New generic methods.
9560 2015-11-13  Juri Linkov  <juri@linkov.net>
9562         Support rectangular regions for more commands
9564         * lisp/simple.el (region-extract-function): Handle the arg
9565         value ‘bounds’.
9566         (region-insert-function): New function.
9567         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
9568         If non-nil, operate on multiple chunks.
9569         (region-noncontiguous-p): New function.
9571         * lisp/rect.el: Add function rectangle--insert-region
9572         around region-insert-function.
9573         (extract-rectangle-bounds): New function.
9574         (rectangle--extract-region): Handle the arg value ‘bounds’.
9575         (rectangle--insert-region): New function.
9577         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
9578         around region-insert-function.
9579         (cua--extract-rectangle-bounds): New function.
9580         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
9582         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
9583         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
9584         (query-replace-regexp-eval, map-query-replace-regexp)
9585         (replace-string, replace-regexp): Use ‘use-region-p’.
9586         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
9587         (perform-replace): Add arg ‘region-noncontiguous-p’.
9588         If non-nil, operate on multiple chunks.
9590         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
9591         If non-nil, operate on multiple chunks.  (Bug#19829)
9593 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
9595         Handle multiple matches on the same line; add highlighting
9597         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
9598         column value in characters.
9599         (xref--collect-matches): Rename from `xref--collect-match'.
9600         Search for all matches in the hit line.  Add `highlight' face to
9601         the matched region in the summary.  Update both callers.
9603 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
9605         Replace xref-match-bounds with xref-match-length
9607         Relying on xref-location-marker to point to the beginning of the match
9609         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
9610         (xref-match-length): Add.
9611         (xref-make-match): Change the arguments.
9612         (xref--match-buffer-bounds): Remove.
9613         (xref-match-item): Store length, instead of end-column.
9614         (xref-pulse-momentarily)
9615         (xref--collect-match)
9616         (xref--query-replace-1): Update accordingly.
9617         (xref-query-replace): Ditto.  And check that the search results
9618         are up-to-date.
9620 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9622         Merge from gnulib
9624         This incorporates:
9625         2015-11-13 xalloc-oversized: improve performance with GCC 5
9626         * lib/xalloc-oversized.h: Copy from gnulib.
9628 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9630         Spruce up ftfont.c memory allocation
9632         * src/ftfont.c (setup_otf_gstring):
9633         Avoid O(N**2) behavior when reallocating.
9634         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
9635         reallocating buffers; this simplifies the code.  Do not trust
9636         mflt_run to leave the output areas unchanged on failure, as
9637         this isn’t part of its interface spec.
9639 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9641         Port recent XCB changes to 64-bit ‘long int’
9643         For historical reasons, libX11 represents 32-bit values like Atoms as
9644         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
9645         do that, so adapt the recent XCB code to behave properly on 64-bit
9646         platforms.  Also, fix what appears to be a bug in the interpretation
9647         of xcb_get_property_value_length, at least on my Fedora platform
9648         which is running libxcb-1.11-5.fc21.
9649         * src/xfns.c (x_real_pos_and_offsets):
9650         * src/xterm.c (get_current_wm_state):
9651         xcb_get_property_value_length returns a byte count, not a word count.
9652         For 32-bit quantities, xcb_get_property_value returns a vector
9653         of 32-bit words, not of (possibly 64-bit) long int.
9655 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9657         * src/undo.c (run_undoable_change): Now static.
9659 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
9661         Adapt Tramp version, do not merge with master
9663         * doc/misc/trampver.texi (trampver):
9664         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
9666 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9668         Remove support for ':timeout' from w32 tray notifications
9670         * src/w32fns.c (Fw32_notification_notify): Delete the code that
9671         supports ':timeout'.
9672         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
9673         with dbusbind.c when D-Bus is compiled in.
9675         * doc/lispref/os.texi (Desktop Notifications): Don't mention
9676         ':timeout'.
9678 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
9680         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
9681         (simple-test--transpositions): New macro.
9682         (simple-transpose-subr): New test.
9684 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
9686         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
9688 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
9690         * src/undo.c: Small fixes for previous change
9691         (run_undoable_change): Mark void argument list.
9692         (record_property_change): Remove unused variable `boundary'.
9694 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9696         Add a few more variables to redisplay--variables
9698         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
9699         and bidi-display-reordering to the list.
9701 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9703         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
9705 2015-11-13  Eli Barzilay  <eli@barzilay.org>
9707         Fix point positioning after transposing with negative arg
9709         * lisp/simple.el (transpose-subr): When invoked with a negative
9710         argument, move point to after the transposed text, like we do
9711         when invoked with a positive argument.  (Bug#21885)
9713 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9715         Fix last change in shr.el
9717         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
9718         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
9720 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9722         Fix last change
9724         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
9725         Don't DEFSYM tray notification symbols if D-Bus is being used.
9727 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9729         Another fix for MinGW64 and Cygwin builds due to notifications
9731         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
9732         being compiled into Emacs.
9733         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
9734         Sw32_notification_notify and Sw32_notification_close if the code
9735         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
9737 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9738 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9740         Remove intern calls and XXX comments from Fx_export_frames
9742         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
9743         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
9744         for consistency with image types.  Remove XXX comments.
9745         (syms_of_xfns) <Qpdf>: DEFSYM it.
9747 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
9748 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
9750         shr: don't invoke unbound function (Bug#21895)
9752         * lisp/net/shr.el (have-fringes-p): New function.
9753         (shr-insert-document, shr-fill-text): Use it.
9755 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
9757         * test/automated/keymap-tests.el: Fix test to make it repeatable
9759         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
9760         entry to its initial value to make the test repeatable in interactive
9761         sessions (assuming it doesn't fail and crashes Emacs, of course).
9763 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9765         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
9767 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
9769         : Tests for undo-auto functionality.
9770 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
9772         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
9773         Small fix.
9775 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
9777         The heuristic that Emacs uses to add an `undo-boundary' has been
9778         reworked, as it interacts poorly with functions on `post-command-hook'
9779         or `after-change-functions'.
9781         * lisp/simple.el: New section added.
9782         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
9783         (self_insert_command): Calls simple.el to amalgamate.
9784         (delete_char): Calls simple.el to amalgamate.
9785         * src/keyboard.c (last_undo_boundary): Removed.
9786         * src/undo.c (run_undoable_change): New function.
9788 2015-11-12  Juri Linkov  <juri@linkov.net>
9790         Bind [?\S-\ ] to previous line command in Dired-like modes.
9792         * lisp/arc-mode.el (archive-mode-map):
9793         * lisp/dired.el (dired-mode-map):
9794         * lisp/proced.el (proced-mode-map):
9795         * lisp/vc/vc-dir.el (vc-dir-mode-map):
9796         Bind [?\S-\ ] to previous line command.
9797         (Bug#20790)
9799 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
9801         Fix the MinGW64 and Cygwin-w32 builds
9803         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
9804         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
9805         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
9806         which cause trouble with MinGW42 headers.  Ifdef away tray
9807         notifications code for Cygwin.  Reported by Andy Moreton
9808         <andrewjmoreton@gmail.com>.
9810 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
9812         Enable sorting of JSON object keys when encoding
9814         * lisp/json.el (json-encoding-object-sort-predicate): New variable
9815         for specifying a sorting predicate for JSON objects during encoding.
9816         (json--plist-to-alist): New utility function.
9817         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
9818         are to be sorted.
9819         (json-encode-alist): Sort output by
9820         `json-encoding-object-sort-predicate, when set.
9821         (json-encode-plist): Re-use `json-encode-alist' when object keys are
9822         to be sorted.
9823         (json-pretty-print-buffer-ordered): New command to pretty print the
9824         buffer with object keys sorted alphabetically.
9825         (json-pretty-print-ordered): New command to pretty print the region
9826         with object keys sorted alphabetically.
9828         * test/automated/json-tests.el (test-json-plist-to-alist)
9829         (test-json-encode-plist, test-json-encode-hash-table)
9830         (test-json-encode-alist-with-sort-predicate)
9831         (test-json-encode-plist-with-sort-predicate): New tests.
9833         * etc/NEWS: Add an entry for the new commands.
9835 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
9837         * test/automated/keymap-tests.el: New test file.
9839 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9841         Speed up x_real_pos_and_offsets using XCB
9843         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
9844         all X calls, and pipeline requests when possible, collecting results
9845         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
9847 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9849         Enable use of XCB for checking window manager state
9851         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
9852         of XGetWindowProperty plus error-catching, since we can explicitly
9853         check for errors in the XCB version.  This eliminates 3 XSync calls on
9854         top of the round-trip actually fetching the information.
9856 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9858         Detect XCB and save a connection handle
9860         * configure.ac: If using X11, check for XCB libraries and header.
9861         * src/Makefile.in (XCB_LIBS): Define.
9862         (LIBX_EXTRA): Include it.
9864         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
9865         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
9866         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
9868 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9870         Reduce some data dependencies between X calls
9872         Gains nothing in the traditional-Xlib code, but more closely aligns
9873         with how the XCB version will work.
9875         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
9876         send coordinates (0,0) to the X server and add in the real coordinates
9877         after getting the response.  Move XGetGeometry for outer window inside
9878         error-trapping block.  Use DPY variable more, since it's available.
9880 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9882         Use color cache for creating bitmap
9884         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
9885         Set attributes to use the caching color allocator.  Initialize and
9886         free the cache.
9888 2015-11-12  Eli Barzilay  <eli@barzilay.org>
9890         Add "^" to the interactive specs of `dired-next/previous-line'
9892         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
9893         to bind these commands to the arrow keys, and that means that they work
9894         better with a "^" in the `interactive' declaration so selection works
9895         as expected.
9897 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9899         Sync with soap-client repository, version 3.0.2
9901         * lisp/net/soap-client.el: Bump version to 3.0.2.
9903         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
9905         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
9906         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
9908         * lisp/net/soap-client.el: Support Emacs versions that do not have
9909         define-error.
9911         * lisp/net/soap-inspect.el: Remove version header.
9913         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
9914 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9916         Sync with soap-client repository, version 3.0.2
9918         * soap-client.el: Bump version to 3.0.2.
9920         * soap-client.el (soap-warning): Use format, not format-message.
9922         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
9923         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
9925         * soap-client.el: Support Emacs versions that do not have
9926         define-error.
9928         * soap-inspect.el: Remove version header.
9930         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
9931         format.
9933 2015-11-11  Alan Mackenzie  <acm@muc.de>
9935         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
9937         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
9938         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
9939         (c-guess-basic-syntax):
9940         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
9941         (c-get-fallback-scan-pos): "New" function (existed several years ago).
9942         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
9943         c-get-fallback-scan-pos.
9944         (c-parse-state-1): Handle 'BOD strategy.
9946         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
9947         (c-font-lock-fontify-region): Remove bindings of
9948         open-paren-in-column-0-is-defun-start to nil.
9950         * doc/misc/cc-mode.texi (Performance Issues)
9951         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
9953 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
9955         * lisp/obarray.el: Fix shadowed variables.
9956         (obarray-map, obarray-remove, obarray-put, obarray-get):
9957         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
9959 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
9961         Avoid error in submitting a form with EWW
9963         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
9964         CHUNK to be nil.  (Bug#21881)
9966 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
9968         Rename seq-p and map-p to seqp and mapp
9970         * lisp/emacs-lisp/seq.el (seqp): New name.
9971         * lisp/emacs-lisp/map.el (mapp): New name.
9972         * doc/lispref/sequences.texi: Update the documentation for seqp.
9973         * test/automated/map-tests.el: Update the tests for mapp.
9975 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
9977         Rename obarray-p to obarrayp
9979         * lisp/obarray.el (obarrayp): New name.
9980         * test/automated/obarray-tests.el: Update the tests.
9982 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
9984         Rename obarray-foreach to obarray-map
9986         * lisp/obarray.el (obarray-map): New name.
9987         * test/automated/obarray-tests.el: Update the corresponding tests.
9989 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
9991         New file with obarray functions.
9993         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
9994         * test/automated/obarray-tests.el: New file.
9996 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
9998         Implement tray notifications for MS-Windows
10000         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
10001         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
10002         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
10003         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
10004         (EMACS_NOTIFICATION_MSG): New macros.
10005         (NI_Severity): New enumeration.
10006         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
10007         (delete_tray_notification, Fw32_notification_notify)
10008         (Fw32_notification_close): New functions.
10009         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
10010         keywords used by w32-notification-notify.
10012         * doc/lispref/os.texi (Desktop Notifications): Describe the native
10013         w32 tray notifications.
10015 2016-01-30  Alan Mackenzie  <acm@muc.de>
10017         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
10019         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
10020         Windows" and new @defun selected-window-group.
10021         (Window Start and End): Describe new &optional parameter GROUP and
10022         ...-group-function for window-start, window-end, set-window-start, and
10023         pos-visible-in-window-p.
10024         (Textual Scrolling) Describe the same for recenter.
10025         doc/lispref/positions.texi (Screen Lines): Describe the same for
10026         move-to-window-line.
10028         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
10029         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
10030         new optional parameter "group".  At the beginning of each, check whether the
10031         corresponding ...-group-function is set to a function, and if so execute this
10032         function in place of the normal processing.
10033         (syms_of_window): Define symbols for the six new variables below.
10034         (window-start-group-function, window-end-group-function)
10035         (set-window-start-group-function, recenter-group-function)
10036         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
10037         New permanent local buffer local variables.
10038         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
10039         Fpos_visible_in_window_p.
10041         lisp/window.el (selected-window-group-function): New permanent local buffer
10042         local variable.
10043         (selected-window-group): New function.
10045         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
10046         enable, kill them at mode disable.  Add/remove follow-after-change to/from
10047         after-change-functions.
10048         (follow-start-end-invalid): New variable.
10049         (follow-redisplay): Manipulate follow-start-end-invalid.
10050         (follow-after-change, follow-window-start, follow-window-end)
10051         (follow-set-window-start, follow-pos-visible-in-window-p)
10052         (follow-move-to-window-line, follow-sit-for): New functions.
10054         lisp/isearch.el (isearch-call-message): New macro.
10055         (isearch-update, with-isearch-suspended, isearch-del-char)
10056         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
10057         (with-isearch-suspended): Rearrange code such that isearch-call-message is
10058         invoked before point is moved.
10059         (isearch-message): Add comment about where point must be at function call.
10060         (isearch-search): Remove call to isearch-message.
10061         (isearch-lazy-highlight-window-group): New variable.
10062         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
10063         the battery of tests to ...
10064         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
10065         Note: (sit-for 0) is still called.
10066         (isearch-lazy-highlight-update): Check membership of
10067         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
10068         property.
10069         (isearch-update, isearch-done, isearch-string-out-of-window)
10070         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
10071         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
10072         (isearch-lazy-highlight-update): Call the six amended primitives (see
10073         src/window.c above) with the new `group' argument set to t, to cooperate
10074         with Follow Mode.
10076 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
10078         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
10080         * lisp/net/tramp.el (tramp-handle-file-equal-p)
10081         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
10082         Harvey Chapman <hchapman@3gfp.com>.
10084         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
10085         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
10086         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
10087         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
10089 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
10091         * CONTRIBUTE: Encourage adding tests.
10093         Based on this post from John Wiegley:
10095           From: "John Wiegley" <johnw@newartisans.com>
10096           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
10097           To: Juanma Barranquero <lekktu@gmail.com>
10098           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
10099               emacs-devel <emacs-devel@gnu.org>
10100           Date: Wed, 28 Oct 2015 18:45:29 -0700
10101           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
10103           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
10105 2015-11-10  David Reitter  <david.reitter@gmail.com>
10107         Avoid creating notification objects when possible
10109         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
10110         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
10111         functions that do not require a notification object.  When needed,
10112         define NSWindowDidEnterFullScreenNotification to allow for compilation
10113         on OS X 10.6.8.
10115 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
10117         Move INTEGER_TO_CONS body out of .h file
10119         * src/data.c (INTBIG_TO_LISP): New macro, with most
10120         of the contents of the old INTEGER_TO_CONS.
10121         (intbig_to_lisp, uintbig_to_lisp): New functions.
10122         * src/lisp.h (INTEGER_TO_CONS):
10123         Simplify by using EXPR_SIGNED and the new functions.
10124         This shrinks code size a bit, and makes it easier to
10125         put a breakpoint on handling of large integers.
10127 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
10129         Merge from gnulib
10131         This incorporates:
10132         2015-11-10 intprops: new public macro EXPR_SIGNED
10133         2015-11-10 intprops: fix typo in clang port
10134         * lib/intprops.h: Copy from gnulib.
10136 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
10138         Spelling fixes
10140         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
10141         Fix misspelling in output.
10143 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10145         * doc/lispref/variables.texi (Directory Local Variables):
10146         Document dir-locals wildcards.
10148         * lisp/files.el (dir-locals-file): Point to Info node.
10150         * doc/emacs/custom.texi (Directory Variables):
10151         Document dir-locals wildcards.
10153         * etc/NEWS: Document new functionality.
10155 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10157         * lisp/files.el: Don't allow customization of dir-locals sorting.
10158         In retrospect, this is not a good idea for the same reason that
10159         `dir-locals-file' is a defconst, because it is important that this
10160         behaviour be "uniform across different environments and users".
10161         Sure, the user can still change the sorting with a hack, but we
10162         shouldn't encourage them to change it.
10163         (dir-locals--all-files): Return list in the order returned by
10164         `file-expand-wildcards'.
10165         (file-expand-wildcards): Document the sorting predicate used.
10166         (dir-locals-sort-predicate): Delete variable.
10168 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10170         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
10172         * lisp/isearch.el (search-default-regexp-mode): Change default value.
10174 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10176         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
10177         `locate-dominating-file' will now keep looking if the files it finds in
10178         a given directory are unreadable (or not files).
10180 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10182         * lisp/files.el (dir-locals-file): Allow wildcards.
10183         (dir-locals-find-file, dir-locals-collect-variables)
10184         (dir-locals-read-from-file): Update accordingly.
10185         (hack-dir-local-variables): Rename a local variable.
10187         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
10189         * lisp/help-fns.el (describe-variable): Update accordingly.
10191         * .gitignore: Add .dir-locals?.el.
10193 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10195         * lisp/emacs-lisp/map.el (map-merge-with): New function.
10197         * test/automated/map-tests.el (test-map-merge-with): New test.
10199 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
10201         Fix some recently-perturbed bookmark autoloads
10203         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
10204         (bookmark-set): Restore autoload.
10205         (bookmark-set-no-overwrite): Add autoload.
10207         Thanks to Juanma Barranquero for noticing the autoload problems
10208         introduced by my recent commit adding/changing the above functions
10209         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
10211 2016-01-30  Noah Friedman  <friedman@splode.com>
10213         (ydump-buffer): Handle case where gap is at the start of buffer.
10214         I don't recall if older versions of gdb were less strict but you
10215         cannot dump a 0-length range in gdb 7.9.1.
10217 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10218 2015-11-09  Noah Friedman  <friedman@splode.com>
10220         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
10221         the start of buffer.  I don't recall if older versions of gdb were
10222         less strict but you cannot dump a 0-length range in gdb 7.9.1.
10224 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
10226         * lisp/progmodes/project.el: Update Commentary.
10228         Merge branch 'project-next'
10230 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10232         Fold `project-ask-user' into `project-current'
10234         * lisp/progmodes/project.el (project-find-functions): Remove
10235         `project-ask-user'.
10236 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
10238         Fold `project-ask-user' into `project-current'
10240         * lisp/progmodes/project.el (project-find-functions):
10241         Remove `project-ask-user'.
10242         (project-ask-user): Remove function and the corresponding
10243         `project-roots' implementation.
10244         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
10245         user in case there's no project in the current directory.  Update
10246         all callers.
10248 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
10250         When VC detects a conflict, specify which file
10252         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
10253         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
10254         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
10255         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
10256         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
10257           to display a standard message that specifies the conflicted file.
10259         Before this change, the message VC used for indicating a conflicted
10260         file was just "There are unresolved conflicts in this file" without
10261         naming the file (and this language was duplicated in several places).
10262         After this change, it's "There are unresolved conflicts in file FOO"
10263         (and this language is now centralized in one function in vc.el).
10265         Justification: It's important for the message to name the conflicted
10266         file because the moment when VC realizes a file is conflicted does not
10267         always come interactively.  For example, some people automatically
10268         find a set of Org Mode files on startup, and may keep those .org files
10269         under version control.  If any of the files are conflicted, the user
10270         just sees some messages fly by, and might later check the "*Messages*"
10271         buffer to find out what files were conflicted.  I'm not saying this
10272         happened to me or anything; it's a purely hypothetical example.
10274 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
10276         Fix assertion violation in define-key
10278         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
10279         objects.  Reported by Drew Adams <drew.adams@oracle.com>
10280         and Juanma Barranquero <lekktu@gmail.com>.
10282 2015-11-09  Dima Kogan  <dima@secretsauce.net>
10284         Fix a memory leak in GC of font cache
10286         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
10287         entities if some of the fonts it references are marked.  This
10288         plugs a memory leak.  (Bug#21556)
10290 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10292         Use INT_ADD_WRAPV etc. to check integer overflow
10294         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
10295         * src/buffer.c (record_overlay_string, overlay_strings):
10296         * src/casefiddle.c (casify_object):
10297         * src/ccl.c (Fccl_execute_on_string):
10298         * src/character.c (char_width, c_string_width, lisp_string_width)
10299         (count_size_as_multibyte, string_escape_byte8):
10300         * src/coding.c (coding_alloc_by_realloc, produce_chars):
10301         * src/data.c (arith_driver):
10302         * src/dispnew.c (realloc_glyph_pool, init_display):
10303         * src/editfns.c (styled_format):
10304         * src/fns.c (Ffillarray):
10305         * src/ftfont.c (ftfont_shape_by_flt):
10306         * src/gnutls.c (gnutls_hex_string):
10307         * src/gtkutil.c (get_utf8_string):
10308         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
10309         * src/keymap.c (Fkey_description):
10310         * src/lisp.h (SAFE_ALLOCA_LISP):
10311         * src/term.c (encode_terminal_code):
10312         * src/tparam.c (tparam1):
10313         * src/xselect.c (x_property_data_to_lisp):
10314         * src/xsmfns.c (smc_save_yourself_CB):
10315         * src/xterm.c (x_term_init):
10316         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
10317         more-complicated code involving division and/or
10318         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
10319         subtraction and/or INT_ADD_OVERFLOW.
10320         * src/casefiddle.c (casify_object): Simplify multibyte size check.
10321         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
10322         * src/data.c (arith_driver): Also check for division overflow,
10323         as that’s now possible given that the accumulator can now contain
10324         any Emacs integer.
10325         * src/lisp.h (lisp_word_count): Remove; no longer used.
10327 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10328 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
10330         Make sure that the ignore file exists
10332         * lisp/vc/vc.el (vc-default-ignore-completion-table):
10333         Make sure that the ignore file exists.
10335 2016-01-30  Michael Sperber  <mike@xemacs.org>
10337         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
10338 2015-11-08  Michael Sperber  <mike@xemacs.org>
10340         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
10341         `gnus-summary-delete-article` in a way that also works on XEmacs.
10343 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
10345         Add support for retrieving paths to JSON elements
10347         Add support for retrieving the path to a JSON element. This can for
10348         instance be useful to retrieve paths in deeply nested JSON
10349         structures.
10351         * lisp/json.el (json-pre-element-read-function)
10352         (json-post-element-read-function): New variables to hold pre- and post
10353         read callback functions for `json-read-array' and `json-read-object'.
10354         (json--path): New variable used internally by `json-path-to-position'.
10355         (json--record-path, json--check-position): New functions used
10356         internally by `json-path-to-position'.
10357         (json-path-to-position): New function for retrieving the path to a
10358         JSON element at a given position.
10359         (json-read-object, json-read-array): Call
10360         `json-pre-element-read-function' and `json-post-element-read-function'
10361         when set.
10363         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
10364         (test-json-path-to-position-with-arrays)
10365         (test-json-path-to-position-no-match): New tests for
10366         `json-path-to-position'.
10368 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
10370         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
10372         This really should been part of my previous commit
10373         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
10375 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
10377         Offer non-overwrite bookmark setter (Bug#15746)
10379         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
10380         what `bookmark-set' used to do, but with more choices for overwrite
10381         vs push, and with minor changes to the interactive prompt format.
10382         (bookmark-set): Rewrite as wrapper around above.
10383         If overwriting, inform the user of that in the prompt.
10384         (bookmark-set-no-overwrite): New function, also done as wrapper.
10385         Bind to "M" in `ctl-x-r-map' autoloads.
10386         (bookmark-map): Similarly bind "M" here.
10388 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10390         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
10392 2015-11-08  Alan Modra  <amodra@gmail.com>
10394         ELF unexec: Don't insert a new section
10396         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
10397         don't need to mess with symbol st_shndx, or section sh_link and
10398         sh_info.
10400         This does lead to eu-elflint complaints about symbols defined in .bss
10401         with a needed version, because normally it is undefined symbols that
10402         have needed versions;  Defined symbols have version definitions.
10403         The exception is symbols defined by the linker in .dynbss for
10404         variables copied from a shared library in order to avoid text
10405         relocations, with copy relocs to copy their initial values from the
10406         shared library.  These symbols are both defined and have needed
10407         versions, and eu-elflink only expects to see them in SHT_NOBITS
10408         sections.  Of course there is no real problem with having such symbols
10409         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
10411         * src/unexelf.c: Delete outdated comments.
10412         (PATCH_INDEX): Delete.
10413         (find_section): Delete.
10414         (unexec): Don't add a new section.  Instead reuse the last bss
10415         section, extending it to cover dumped data.  Make bss sections
10416         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
10417         st_shndx.  Rename bss sections.
10419 2015-11-08  Alan Modra  <amodra@gmail.com>
10421         ELF unexec: Drive from PT_LOAD header rather than sections
10423         This rewrites bss handling in the ELF unexec code.  Finding bss
10424         sections by name results in complicated code that
10425         - does not account for all names of possible bss sections,
10426         - assumes specific ordering of bss sections,
10427         - can wrongly choose a SHT_NOBITS section not in the bss segment,
10428         - incorrectly calculates bss size (no accounting for alignment gaps),
10429         - assumes .data and .bss are in the same segment.
10431         All of these problems and more are solved by finding the bss segment
10432         in PT_LOAD headers, ie. the address range included in p_memsz but not
10433         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
10434         in that address range.
10436         * src/unexelf.c: Delete old ppc comment.
10437         (OLD_PROGRAM_H): Define.
10438         (round_up): Delete.
10439         (unexec): Don't search for bss style sections by name.  Instead,
10440         use the last PT_LOAD header address range covered by p_memsz
10441         but not p_filesz and match any SHT_NOBITS section in that
10442         address range.  Simplify initialisation of section header vars.
10443         Don't assume that section headers are above bss segment.  Move
10444         copying of bss area out of section loop.  Align .data2 section
10445         to 1, since it now covers the entire bss area.  For SHT_NOBITS
10446         sections in the bss segment, leave sh_addr and sh_addralign
10447         unchanged, but correct sh_offset.  Clear memory corresponding
10448         to SHT_NOBITS .plt section.  Delete comment and hacks for
10449         sections partly overlapping bss range now that the full range
10450         is properly calculated.  Delete now dead .sbss code.
10451         (Bug#20614)
10453 2015-11-08  Alan Modra  <amodra@gmail.com>
10455         ELF unexec: R_*_NONE relocs
10457         These should be ignored on all targets.
10459         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
10460         not just Alpha.  Comment on reloc size assumption.
10462 2015-11-08  Alan Modra  <amodra@gmail.com>
10464         ELF unexec: _OBJC_ symbols in bss sections
10466         This code assumed that there was only one bss section.  Rather than
10467         checking for a particular index, check the section type.  Also, handle
10468         the possibility that the section was SHT_NOBITS originally and is
10469         unchanged, in which case no clearing is needed (and sh_offset isn't
10470         necessarily valid, which can lead to a wild memset).
10472         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
10473         bss sections.
10475 2015-11-08  Alan Modra  <amodra@gmail.com>
10477         ELF unexec: Symbol table patching
10479         No st_shndx value larger than SHN_LORESERVE should be changed.
10480         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
10481         SHN_LORESERVE.  Error on SHN_XINDEX.
10483 2015-11-08  Alan Modra  <amodra@gmail.com>
10485         ELF unexec: Merge Alpha and MIPS COFF debug handling
10487         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
10488         Don't find .mdebug section index, find the section in the loop.
10489         Allow for unlikely possibility that .mdebug is located at sh_offset
10490         before bss segment, by calculating move from difference in
10491         sh_offset rather than just assuming new_data2_size.  Simplify
10492         cbLineOffset handling.
10494 2015-11-08  Alan Modra  <amodra@gmail.com>
10496         ELF unexec: Tidy code
10498         Separate out some of the more mechanical changes so following patches
10499         are smaller.
10501         * src/unexelf.c (unexec): Rearrange initialisation of program
10502         header vars.  Use pointer vars in loops rather than indexing
10503         section header array via macros.  Simplify _OBJC_ sym code
10504         and reloc handling code.
10506 2015-11-08  Alan Modra  <amodra@gmail.com>
10508         ELF unexec: Correct section header index
10510         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
10511         it should have been using "NEW_SECTION_H (nn)" to find the name of the
10512         section currently being processed.  Of course, before the bss
10513         sections, n and nn have the same value, so this doesn't matter except
10514         in the case of .sbss.  For .sbss this probably meant .bss (most likely
10515         the next section) was copied from memory.  A later patch removes the
10516         bogus .sbss handling anyway.
10518         * src/unexelf.c (unexec): Use correct index to look up names.
10520 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
10522         Fix Bug#21841
10524         * lisp/filenotify.el (file-notify--rm-descriptor):
10525         Use `descriptor' instead of computing its value.
10526         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
10527         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
10528         (Bug#21841)
10530 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
10532         Remove dirs in vc project roots from the the vc project library roots
10534         * lisp/progmodes/project.el (project-library-roots):
10535         Remove directories inside the project roots from the result.
10536         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
10538 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
10540         Move and rename xref-find-regexp to the project package
10542         * lisp/progmodes/project.el (project-find-regexp)
10543         (project--read-regexp)
10544         (project--find-regexp-in): New functions.
10546         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
10547         xref--show-xrefs.  Use in existing callers in place of that
10548         function.
10549         (xref--show-xrefs): Only do the "show" part.
10550         (xref-find-regexp): Rename, more or less, to
10551         project-or-libraries-find-regexp.
10553 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
10555         Abolish temporary buffer management for xref
10557         * lisp/progmodes/xref.el (xref--temporary-buffers)
10558         (xref--current)
10559         (xref--inhibit-mark-current)
10560         (xref--mark-selected): Remove.  Remove all references.
10561         (xref--show-xrefs): Do not construct the
10562         list of the temporary buffers, nor pass it along.
10564 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
10566         Rename "search path" to "library roots"
10568         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
10569         of the elements from CL-LIST1.
10571         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
10572         Update WRT to the above change.
10574         * lisp/progmodes/project.el (project-search-path-function): Rename
10575         to project-library-roots-function, update the documentation and
10576         references.
10577         (project-search-path): Likewise, to project-library-roots.
10578         (project-roots): Clarify documentation.
10579         (project-vc-search-path): Likewise, to project-vc-library-roots.
10580         (project-library-roots): In addition to the renames, thread the
10581         results through file-name-as-directory.
10582         (project-prune-directories): Accept a variable number of
10583         arguments.  Rename to project-combine-directories.
10584         (project-subtract-directories): New function.
10586         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
10587         Append project-roots and project-library-roots together.
10589         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
10591 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10593         Prefer xpalloc to doubling buffers by hand
10595         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
10596         (read1): Use it for simplicity.
10597         * src/macros.c (store_kbd_macro_char):
10598         * src/minibuf.c (read_minibuf_noninteractive):
10599         * src/term.c (encode_terminal_code):
10600         * src/xrdb.c (magic_db):
10601         Prefer xpalloc to growing buffers by hand.
10602         This doesn’t fix any bugs, but simplifies the code a bit.
10604 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10606         Merge from gnulib
10608         This incorporates:
10609         2015-11-05 timespec-sub: fix overflow bug; add tests
10610         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
10611         2015-11-03 intprops: add parentheses
10612         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
10613         Copy from gnulib.
10615 2015-11-07  David Reitter  <david.reitter@gmail.com>
10617         Provide NS notification objects where required to eliminate warnings
10619         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
10620         Call notification functions with notification objects
10621         as per delegate APIs.
10623 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
10625         Add test for bug #21824
10627         * test/automated/buffer-tests.el: New file.
10628         (overlay-modification-hooks-message-other-buf): New test.
10630 2015-11-07  Kelvin White  <kwhite@gnu.org>
10632         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
10634 2015-11-07  David Reitter  <david.reitter@gmail.com>
10636         Ignore fullscreen exit notifications on NS when frame is dead
10638         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
10639         (windowDidExitFullScreen:): Return if frame is dead.
10640         These functions may be called when a fullscreen frame
10641         is closed; they are called before, not after.
10643         May address Bug#21428.
10645 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
10647         Speed up lookup in redisplay--variables
10649         * lisp/frame.el (redisplay--variables): Make it a hash-table.
10651         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
10652         as a hash-table.  This speeds up this function by an order of
10653         magnitude: where previously a setq was slowed down by 100% by
10654         introducing the maybe_set_redisplay test, it is now only 5%
10655         slower.
10656         (syms_of_xdisp) <redisplay--variables>: Doc fix.
10658 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
10660         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
10662         The defsubst was being created as:
10663             (cl-defsubst name (args) ("DOC") ...)
10665         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
10666         Add test.
10668 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
10670         Update doc string of hexl-mode
10672         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
10674 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
10676         Fix error in copy-abbrev-table
10678         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
10679         property of the abbrev-table.  (Bug#21828)
10681         * test/automated/abbrev-tests.el: New file.
10683 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
10685         Add test to auto-revert-tests.el for Bug#21841
10687         * test/automated/auto-revert-tests.el
10688         (auto-revert-test01-auto-revert-several-files): New test.
10689         (auto-revert-test02-auto-revert-tail-mode)
10690         (auto-revert-test03-auto-revert-mode-dired): Rename them.
10692 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
10694         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
10696 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
10698         In x_consider_frame_title don't set title of tooltip frames
10700         * src/xdisp.c (x_consider_frame_title): Return immediately for
10701         tooltip frames to avoid displaying empty tooltips.
10703 2015-11-06  Anders Lindgren  <andlind@gmail.com>
10705         Fixed NextStep fullscreen problem (bug#21770).
10707         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
10708         fullscreen frames.
10710 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
10712         Ensure redisplay after evaluation
10714         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
10715         Revert last change.
10716         * lisp/frame.el (redisplay--variables): Populate the
10717         redisplay--variables list.
10718         * src/xdisp.c (maybe_set_redisplay): New function.
10719         (syms_of_xdisp) <redisplay--variables>: New variable.
10720         * src/window.h (maybe_set_redisplay): Declare prototype.
10721         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
10723 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10725         * test/automated/subr-tests.el (subr-test-when): Fix again.
10727 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
10729         Don't invoke overlay modification hooks in wrong buffer
10731         * src/buffer.c (report_overlay_modification): When called with
10732         AFTER non-zero, don't invoke overlay modification hooks if the
10733         buffer recorded in last_overlay_modification_hooks is different
10734         from the current buffer.  (Bug#21824)
10736 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
10738         * admin/notes/repo: Fix a few obsolete references to Bazaar.
10740 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10742         * test/automated/subr-tests.el (subr-test-when): Fix test.
10744 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
10746         Avoid division by zero crash observed by Yuan MEI
10748         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
10750         * src/dispnew.c (required_matrix_height, required_matrix_width):
10751         Avoid division by zero.
10752         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
10753         dpyinfo->smallest_char_width to 1.
10755 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
10757         Ensure redisplay after "C-x C-e"
10759         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
10760         redisplay happens to account for any side effects of the evaluated
10761         sexp.  (Bug#21835)
10763 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
10765         Skip some file notification tests for cygwin
10767         * test/automated/file-notify-tests.el (file-notify--test-with-events):
10768         Remove argument TIMEOUT.  Adapt all callees.
10769         (file-notify-test02-events, file-notify-test04-file-validity):
10770         Skip for cygwin.  (Bug#21804)
10772 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
10774         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
10776 2015-11-05  Daiki Ueno  <ueno@gnu.org>
10778         Suppress redundant Pinentry startup messages
10780         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
10781         * lisp/epg.el: Declare `pinentry-start'.
10782         (epg--start): Call `pinentry-start' with QUIET argument set.
10784 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
10786         * doc/emacs/ack.texi (Acknowledgments): Updates.
10788 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
10790         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
10791         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
10793 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
10795         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
10796         Add prettification support for \times.
10798 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
10800         * test/automated/process-tests.el: Skip tests when bash is unavailable.
10801         (process-test-sentinel-accept-process-output)
10802         (process-test-sentinel-sit-for): skip-unless bash executable found.
10804 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
10806         Add test for bug #21831
10808         * test/automated/process-tests.el
10809         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
10810         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
10812 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10814         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
10816         (eieio--generic-static-object-generalizer): Fix typo.
10817         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
10818         like the underlying cause of bug#17852 was fixed in the mean time.
10820 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10822         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
10824         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
10825         It breaks bootstrapping (duh).
10827 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10829         * lisp/files.el (report-errors): Obsolete.
10831         (normal-mode, hack-local-variables, dir-locals-find-file):
10832         Use `with-demoted-errors' instead.
10834 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10836         * lisp/subr.el (when): Use `macroexp-progn'.
10838         * test/automated/subr-tests.el (subr-test-when): New test.
10840 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
10842         * lisp/progmodes/xref.el: Doc fixes.
10843         (xref-make-file-location, xref-make-buffer-location, xref-make)
10844         (xref-make-bogus-location, xref-make-match): Add cross-references.
10845         (xref--insert-xrefs): Fix typo in docstring.
10847 2015-11-04  Anders Lindgren  <andlind@gmail.com>
10849         Render fringe bitmaps correctly on NextStep (bug#21301)
10851         The fringe bitmaps were inverted, the background was not transparent,
10852         the image data was horizontally mirrored, and periodic fringe bitmaps
10853         were not supported.
10855         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
10856         When both background and foreground colors are 0, set the background
10857         alpha channel to 0 (making the background transparent).  When
10858         copying the image data, do this from the most significant bit
10859         (leftmost) to the least (rightmost), to avoid mirroring.
10860         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
10861         Add support for periodic images (e.g. the empty line indicator).
10863 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
10865         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
10867 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
10869         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
10871         * admin/MAINTAINERS: Add thunk.el.
10873 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
10875         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
10877 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
10879         Fix a stupid error in gfilenotify.c
10881         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
10882         if we've got a `deleted' signal AND the file name is the watched one.
10884 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
10886         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
10888         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
10889         Use case-insensitive string compare for file names.
10890         (emacs-test-dir): Add 'downcase' to cause case differences (at
10891         least on my system).
10893 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
10895         flymake-tests.el (warning-predicate-rx-gcc): Fix check
10897         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
10898         Also check that "make" is available, not just "gcc".
10900 2015-11-02  Ken Brown  <kbrown@cornell.edu>
10902         Document behavior of collation on Cygwin
10904         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
10905         expected failure on Cygwin.
10906         * doc/lispref/strings.texi (Text Comparison): Document that
10907         punctuation and whitespace are not ignored for sorting on Cygwin.
10909 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
10911         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
10913 2015-11-01  Glenn Morris  <rgm@gnu.org>
10915         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
10916         (Bug#21794)
10917         * test/automated/f90.el (f90-test-bug21794): New test.
10919 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
10921         Fix incompatibility with TCC in test for bug#18745
10923         * test/automated/process-tests.el (process-test-quoted-batfile):
10924         Remove spaces unrelated to the bug being tested.
10926 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
10928         Improve completion in tramp-gvfs.el
10930         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
10931         Rename from `tramp-zeroconf-parse-service-device-names'.
10932         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
10933         with `tramp-zeroconf-parse-device-names'.
10934         (tramp-gvfs-parse-device-names): New defun.
10935         (top): Use it when `tramp-zeroconf-parse-device-names' is not
10936         applicable.
10938         * lisp/net/tramp.el (tramp-set-completion-function): The argument
10939         could also be a zeroconf service type.
10941 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10943         * lisp/net/ntlm.el: Change version to 2.0.0.
10945 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
10947         Fix bug#21762
10948         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
10949         `eql' instead of `=' to accommodate the case that (syntax-after (point))
10950         returns nil.
10951         * test/automated/python-tests.el (python-indent-inside-paren-7):
10952         New test.
10954 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
10956         * test/automated/python-tests.el: Avoid warnings.
10957         (python-tests-with-temp-buffer, python-tests-with-temp-file):
10958         Bind `python-indent-guess-indent-offset' to nil.
10960 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
10962         * src/alloc.c: Silence compiler warnings.
10963         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
10965 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
10967         * etc/NEWS: Fix js-jsx-mode entry punctuation.
10969 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
10971         Add JSX indentation via js-jsx-mode  (Bug#21799)
10973         * lisp/progmodes/js.el: Add JSX indentation support.
10974         (js--jsx-end-tag-re)
10975         (js--jsx-after-tag-re): New variables.
10976         (js--jsx-find-before-tag)
10977         (js--jsx-indented-element-p)
10978         (js--as-sgml)
10979         (js--expression-in-sgml-indent-line)
10980         (js-jsx-indent-line)
10981         (js-jsx-mode): New functions.
10982         * test/indent/js-jsx.js: New file.
10983         * etc/NEWS: Add information about js-jsx-mode.
10985 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
10987         Minor fix in filenotify.el
10989         * lisp/filenotify.el (file-notify--event-file-name)
10990         (file-notify--event-file1-name): Normalize result with
10991         `directory-file-name'.
10993 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
10995         Avoid errors in redisplay--pre-redisplay-functions
10997         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
10998         use 'bobp', instead compare window-point with 1.  (Bug#21730)
11000 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
11002         Merge from gnulib
11004         This incorporates:
11005         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
11006         2015-10-25 stdalign: port to Sun C 5.9
11007         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
11008         Copy from gnulib.
11010 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
11012         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
11013         (w32_compare_strings): Adjust for the correction.
11015 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
11017         * test/automated/vc-tests.el (vc-test--state)
11018         (vc-test--working-revision, vc-test--checkout-model):
11019         Add result messages.
11021 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11023         * test/automated/faces-tests.el: Add another test
11025 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11027         * lisp/faces.el (faces--attribute-at-point): Fix bug
11028         introduced by previous commit.
11030 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11032         * test/automated/faces-tests.el: New file.
11034 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11036         * lisp/faces.el: Refactor common code and fix a bug.
11037         (faces--attribute-at-point): New function.  Fix a bug when the
11038         face at point is a list of faces and the desired attribute is not
11039         on the first one.
11040         (foreground-color-at-point, background-color-at-point): Use it.
11042 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
11044         * etc/tutorials/TUTORIAL.translators: Fix PL names.
11046 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
11048         * lisp/character-fold.el: Provide `character-fold'.
11050 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
11052         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
11053         for Gnus and ivy.
11055 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
11057         Some minor fixes for tramp-gvfs.el
11059         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
11060         An attribute returned by gvfs-info might be empty.  In case of
11061         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
11062         (tramp-zeroconf-parse-service-device-names): New defun.
11063         Derived from `tramp-zeroconf-parse-workstation-device-names'.
11064         (top): Add completion functions for "afp" and "smb" methods.
11066 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11068         * test/automated/character-fold-tests.el: New file
11070 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11072         * test/automated/sort-tests.el: New file.
11073         Tests in this file are randomly generated and then tested with
11074         regular, reverse, and case-fold sorting.
11076 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
11078         Describe known problems with pinning Emacs to taskbar
11080         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
11081         on Windows 10.  For the details, see the discussion starting at
11082         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
11084 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11086         * lisp/isearch.el: Avoid an error that blocks isearch.
11087         (isearch-update): Don't error if `isearch--current-buffer' has
11088         been killed.
11090         * test/automated/isearch-tests.el (isearch--test-update):
11091         New file.
11093 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
11095         Fix documentation of 'beginning/end-of-buffer'
11097         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
11098         conditions under which the mark will be pushed at the previous
11099         position.  (Bug#21748)
11101 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
11103         Add RefTeX feature idea: editing RefTeX TOC buffers
11105         More face defs for ivy, swiper, ace-window, eshell
11107 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11109         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
11110         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
11111         just VAR.
11112         (auth-source-backend-parse): Use make-instance.
11113         (auth-source-search): Remove unused key args.
11114         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
11115         (auth-source-search-backends): Use slot names rather than their initarg.
11116         (auth-source-netrc-create):
11117         (auth-source-delete):
11118         (auth-source-secrets-create, auth-source-plstore-search)
11119         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
11120         (auth-source-plstore-create, auth-source-netrc-search)
11121         (auth-source-netrc-parse): Remove unused key args.
11122         (auth-source-forget+): Simplify the arglist.
11123         (auth-source-macos-keychain-search-items)
11124         (auth-source-token-passphrase-callback-function): Mark unused args.
11125         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
11126         (pp-escape-newlines): Declare.
11127         (auto-source--symbol-keyword): New function.
11128         (auth-source-plstore-create, auth-source-netrc-create)
11129         (auth-source-netrc-normalize): Use it.
11130         (auth-source-netrc-search): Don't pass :delete to
11131         auth-source-netrc-parse since it doesn't use it.
11132         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
11133         symbol-value to index in keyword args.
11134         (auth-source-macos-keychain-result-append): Avoid setq.
11135         (auth-source-netrc-create): Remove unused vars `file' and `add'.
11136         (auth-source-user-or-password): Remove unused var `cname'.
11138 2015-10-29  Juri Linkov  <juri@linkov.net>
11140         * lisp/dired.el (dired-unmark-all-files-query): Declare.
11141         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
11142         (Bug#21746)
11144 2015-10-29  Juri Linkov  <juri@linkov.net>
11146         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
11147         to go to the beginning of text line instead of command line.
11148         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
11150 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
11152         Fix encoding of saving *Help* buffers
11154         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
11155         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
11157 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11159         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
11160         (cl--generic-derived-specializers): New function.
11161         (cl--generic-derived-generalizer): New generalizer.
11162         (cl-generic-generalizers): New specializer (derived-mode MODE).
11163         (cl--generic-split-args): Apply the rewriter, if any.
11164         (cl-generic-define-context-rewriter): New macro.
11165         (major-mode): Use it to define a new context-rewriter, so we can write
11166         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
11168         * lisp/frame.el (window-system): New context-rewriter so we can write
11169         `(window-system VAL)' instead of (window-system (eql VAL)).
11170         (cl--generic-split-args): Apply the rewriter, if any.
11171         (frame-creation-function): Use the new syntax.
11173         * lisp/term/x-win.el (window-system-initialization)
11174         (handle-args-function, frame-creation-function)
11175         (gui-backend-set-selection, gui-backend-selection-owner-p)
11176         (gui-backend-selection-exists-p, gui-backend-get-selection):
11177         * lisp/term/w32-win.el (window-system-initialization)
11178         (handle-args-function, frame-creation-function)
11179         (gui-backend-set-selection, gui-backend-get-selection)
11180         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
11181         * lisp/term/pc-win.el (gui-backend-get-selection)
11182         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
11183         (gui-backend-set-selection, window-system-initialization)
11184         (frame-creation-function, handle-args-function):
11185         * lisp/term/ns-win.el (window-system-initialization)
11186         (handle-args-function, frame-creation-function)
11187         (gui-backend-set-selection, gui-backend-selection-exists-p)
11188         (gui-backend-get-selection):
11189         * lisp/startup.el (handle-args-function):
11190         * lisp/term/xterm.el (gui-backend-get-selection)
11191         (gui-backend-set-selection): Use the new syntax.
11193 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11195         * test/indent/css-mode.css: Add tests for url(...) syntax.
11197 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11199         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
11200         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
11201         (smie-prec2->grammar): Use `declare'.
11203 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11205         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
11206         (cl--generic-generalizer): Add `name' field.
11207         (cl-generic-make-generalizer): Add corresponding `name' argument.
11208         (cl-generic-define-generalizer): New macro.
11209         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
11210         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
11211         (cl--generic-t-generalizer): Use it.
11212         (cl-generic-ensure-function): Add `noerror' argument.
11213         (cl-generic-define): Use it so we don't follow aliases.
11214         (cl-generic-define-method): Preserve pre-existing ordering of methods.
11215         (cl--generic-arg-specializer): New function.
11216         (cl--generic-cache-miss): Use it.
11217         (cl-generic-generalizers): Only fset a temporary definition
11218         during bootstrap.
11219         (cl--generic-struct-tag, cl--generic-struct-specializers):
11220         Allow extra arguments.
11222         * lisp/emacs-lisp/eieio-compat.el
11223         (eieio--generic-static-symbol-generalizer)
11224         (eieio--generic-static-object-generalizer):
11225         Use cl-generic-define-generalizer.
11226         (eieio--generic-static-symbol-specializers): Allow extra arguments.
11228         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
11229         (eieio--generic-subclass-generalizer):
11230         Use cl-generic-define-generalizer.
11231         (eieio--generic-subclass-specializers): Allow extra arguments.
11233 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11235         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
11237 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
11239         Add "afp" method to Tramp
11241         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
11243         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
11244         (tramp-gvfs-handle-expand-file-name)
11245         (tramp-gvfs-handler-mounted-unmounted)
11246         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
11247         (tramp-gvfs-maybe-open-connection): Support also "afp".
11248         (tramp-gvfs-handle-file-attributes): Handle the case of empty
11249         "owner::user" and "owner::group" entries.
11251 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
11253         Handle negative coordinates in ‘x_calc_absolute_position’
11255         * src/w32term.c (x_calc_absolute_position): Find display origin to
11256         allow for negative coordinates.
11258 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
11260         (internal--syntax-propertize): Save match-data here (bug#21766)
11262         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
11263         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
11265 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
11267         Don't require default-directory to end with a slash
11269         * doc/lispref/files.texi (Magic File Names): Document the change
11270         in unhandled-file-name-directory.
11272         * lisp/url/url-handlers.el
11273         (url-handler-unhandled-file-name-directory): Update accordingly.
11275         * src/buffer.c (default-directory): Update the docsting.
11277         * src/fileio.c (unhandled-file-name-directory): Default to calling
11278         `file-name-as-directory'
11279         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
11281 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11283         * lisp/isearch.el: Delete some outdated comments.
11285 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
11287         Fix eshell/clear not working if the output has a small line count
11289         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
11290         number of newlines to be inserted. This fixes the issue where
11291         eshell/clear wouldn't work if the prompt was not at the bottom of the
11292         window, and the output wasn't too long.
11294 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
11296         * lisp/files.el (write-file): Use vc-refresh-state.
11298         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
11300         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
11302 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
11304         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
11305         (macroexp-unprogn): Make sure we never return an empty list.
11306         (macroexp-if): Remove unused (and unsafe) optimization.
11307         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
11308         occur occasionally.
11310 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
11312         Fix bug#21766 and add test
11313         * lisp/simple.el (delete-trailing-whitespace): Save match data when
11314         calling `skip-syntax-backward'.
11315         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
11316         New test.
11318 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11320         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
11322 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
11324         * src/dispnew.c (init_display): Simplify overflow checking.
11326 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11328         * lisp/character-fold.el (character-fold-to-regexp): Fix case
11329         where string ends in space
11331 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11333         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
11335         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
11337 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11339         * lisp/character-fold.el: Make compatible with lax-whitespace.
11340         (character-fold-to-regexp): Rework internals to play nice with
11341         lax-whitespacing.
11343         When the user types a space, we want to match the table entry for
11344         ?\s, which is generally a regexp like "[ ...]".  However, the
11345         `search-spaces-regexp' variable doesn't "see" spaces inside these
11346         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
11347         manually expose a space).
11349         Furthermore, the lax search engine acts on a bunch of spaces, not
11350         on individual spaces, so if the string contains sequential spaces
11351         like "  ", we need to keep them grouped together like this:
11352         "\\(  \\|[ ...][ ...]\\)".
11354 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11356         * lisp/isearch.el: Refactor momentary messages.
11357         (isearch--momentary-message): New function.
11358         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
11359         (isearch-toggle-invisible): Use it.
11361 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11363         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
11364         (isearch-define-mode-toggle): New macro.
11365         (isearch-toggle-invisible): Rename to
11366         `isearch-define-mode-toggle'.
11367         (isearch-toggle-case-fold, isearch-toggle-invisible)
11368         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
11369         with `isearch-define-mode-toggle'.
11371 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
11373         Avoid using `add-to-list' on a let-local var in tramp-smb.el
11375         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
11376         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
11378 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
11380         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
11381         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
11382         does not exist in XEmacs 21.4.
11384 2015-10-28  Anders Lindgren  <andlind@gmail.com>
11386         Fixed OS X startup crash
11388         Input events started to arrive before ns_term_init() was finished.
11389         Solved by blocking input.  This also seems to correct the "You
11390         can't open the application "Emacs" because it may be damaged or
11391         incomplete" error issued when double-clicking on the Emacs
11392         application.
11394         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
11395         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
11397 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11399         * src/process.c (Fget_buffer_process): Improve docstring.
11400         Document the fact that it doesn't return dead processes.
11402 2015-10-28  Anders Lindgren  <andlind@gmail.com>
11404         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
11406         * src/nsterm.h (struct ns_output): New flag, in_animation.
11407         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
11408         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
11409         in_animation flag around call to "setVisible". Set new tool bar
11410         height before call to setVisible.
11411         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
11412         andColumns:] as this fools the subsequent call to updateFrameSize
11413         from performing the real resize.
11414         (windowDidResize): Don't update anything when in_animation is
11415         non-zero.
11417         Trace output.
11419         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
11420         (EmacsToolbar):
11421         * src/nsterm.m (x_set_window_size, updateFrameSize)
11422         ([EmacsView setRows: andColumns:])
11424 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
11426         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
11428 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
11430         Prettify TeX macros not ending in a word char
11432         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
11433         Prettify macros which don't end in a word character.
11435 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
11437         Pipe Hg commit descriptions through 'tabindent'
11439         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
11440         through 'tabindent'.
11441         (vc-hg-log-view-mode): Set tab-width to 2 locally.
11442         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
11444 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11446         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
11447         (tramp-smb-handle-directory-files): Use `delete-dups'.
11449         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
11451 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11453         * lisp/international/ccl.el: Use lexical-binding.
11454         (ccl-compile-if): Remove unused var `false-ic'.
11455         (ccl-compile-write-repeat): Remove unused var `i'.
11456         (ccl-compile-map-single): Remove unused var `id'.
11457         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
11458         dynamic var `ccl-code'.
11460 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11462         * lisp/json.el (json-new-object): Optimize trivial `list' call.
11464 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11466         * lisp/help.el: Fix bug with incorrect arglist string.
11467         (help-add-fundoc-usage): Don't mistake a mis-formatted string
11468         for a list.
11470 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11472         * lisp/gnus/gnus-topic.el: Silence some warnings.
11473         (gnus-topic-prepare-topic): Remove unused var `topic'.
11474         (gnus-topic-remove-topic): Mark unused arg `hide'.
11475         (gnus-tmp-header): Declare.
11476         (gnus-topic-goto-missing-group): Remove unused var `entry'.
11477         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
11478         (gnus-topic-copy-matching): Mark unused arg `copyp'.
11479         Move initialization of `topic' into its declaration.
11481 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
11483         Minor CEDET fixes
11485         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
11486         Handle warnings from gtags about invalid options.
11487         (cedet-gnu-global-create/update-database): Do incremental update
11488         properly.
11490         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
11491         Get monotone root right.
11493 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
11495         Fall back to polling in autorevert when needed
11497         * lisp/autorevert.el (auto-revert-notify-handler): When a
11498         `stopped' event arrives from file notification, fall back to polling.
11500         * test/automated/file-notify-tests.el
11501         (file-notify-test03-autorevert): Extend test for polling when file
11502         notification ceases to work.
11504 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
11506         Show full commit messages in 'hg log' when appropriate
11508         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
11509         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
11510         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
11512 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
11514         Use a plain SVG file for the icon
11516         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
11517           format instead of the Inkscape SVG format.
11519 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
11521         Fix subtle bug in auto-revert-tests.el
11523         * test/automated/auto-revert-tests.el
11524         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
11525         buffer where it belongs to.  (Bug#21668)
11527 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
11529         * lisp/emacs-lisp/map.el: Better docstrings.
11531         * lisp/emacs-lisp/seq.el: Better docstrings.
11533         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
11535 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
11537         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
11539 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
11541         Clarify that load-path contents should be directory file names
11543         * doc/lispref/files.texi (Directory Names): Define and use "directory
11544         file name".  Recommend `expand-file-name'.
11546         * src/lread.c (load-path): Fix doc string; elements are directory file
11547         names.
11549 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
11551         Fix simple-test.el test
11553         * test/automated/simple-test.el (simple-test--dummy-buffer):
11554         Make sure indentation doesn't use TABs, otherwise the 6th test
11555         might fail.
11557 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
11559         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
11560         `substring' does not account for full width characters.
11562 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
11564         Further work on `stopped' events in filenotify.el
11566         * doc/lispref/os.texi (File Notifications): Rework examples.
11568         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
11569         (file-notify--rm-descriptor, file-notify-callback): Improve check
11570         for sending `stopped' event.
11571         (file-notify-add-watch): Check for more events for `inotify'.
11573         * test/automated/file-notify-tests.el
11574         (file-notify--test-expected-events): New defvar.
11575         (file-notify--test-with-events): Use it.
11576         (file-notify--test-cleanup): Make it more robust when deleting
11577         directories.
11578         (file-notify--test-event-test): Check also for watched directories.
11579         (file-notify--test-event-handler): Suppress temporary .#files.
11580         (file-notify-test02-events, file-notify-test04-file-validity):
11581         Rework `stopped' events.
11582         (file-notify-test05-dir-validity): Wait for events when appropriate.
11584 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
11586         * src/keyboard.c (post-command-hook): Shorten docstring.
11588 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
11590         Fix infinite loop in sh-script's SMIE code
11592         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
11593         loop (bug#21747).
11595 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11597         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
11598         Character-fold search _still_ doesn't play well with
11599         lax-whitespace.  So disable it by default (again) for now.
11601 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11603         * lisp/isearch.el: No visual feedback for default search mode.
11604         During an isearch where character-folding is the default, we don't
11605         want to take up minibuffer space just to tell the user that
11606         "Char-fold " is on.  The same goes for other modes, if the user
11607         changes the default.  In contrast, if the user toggles OFF the
11608         default mode, they should see "Literal", to distinguish it from
11609         the default mode.
11610         (isearch--describe-regexp-mode): Return "" if describing the
11611         default mode, and return "literal " if describing a plain search
11612         and it is not default.
11614 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11616         * test/automated/simple-test.el: New file.
11617         Define tests for `newline' and `open-line'.
11619 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11621         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
11622         Also run `post-self-insert-hook' when called interactively.
11624 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11626         * lisp/simple.el (open-line): Fix docstring.
11627         Also explain apparently redundant line.
11629 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11630             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
11632         Sync with soap-client repository, version 3.0.1
11634         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
11635         Bump version to 3.0.1.
11637         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
11639 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
11641         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
11643 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11645         * src/keyboard.c (post-command-hook): Extend the docstring.
11646         Mainly, explain how to use it without hanging Emacs, or giving the
11647         impression that it is hanging.  Also mention `pre-command-hook'.
11648         (pre-command-hook): Mention `post-command-hook'.
11650 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11652         * lisp/custom.el (custom-declare-variable): Shorten code again.
11653         Without using pcase this time.  We can't use pcase because it is
11654         loaded after custom in loadup.el.  Also add a comment explaining
11655         this to future dummies like me.
11657 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
11659         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
11661 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
11663         Introduce `stopped' event in file notification
11665         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
11666         (file-notify-rm-watch): Use it.
11667         (file-notify-callback): Implement `stopped' event.
11668         (file-notify-add-watch): Mention `stopped' in the docstring.
11669         Check, that upper directory exists.
11671         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
11672         Add two test cases.
11673         (file-notify-test02-events): Handle also `stopped' event.
11674         (file-notify-test04-file-validity): Add another test case.
11676 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11678         Revert commit that broke 'make bootstrap'
11680         * lisp/custom.el (custom-declare-variable): Revert commit
11681         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
11682         even when pcase has not been defined yet, when doing bootstrapping.
11684 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11686         Port recent inline functions fix to Standard C
11688         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
11689         All uses rewritten to define the function directly rather than to
11690         use a macro to define the function.  This conforms to Standard C,
11691         which does not allow stray semicolons at the top level.  I hope it
11692         also avoids the problems with TAGS.  Those macros, though clever,
11693         were pretty confusing anyway, and it wasn’t clear they were worth
11694         the aggravation even without the TAGS problem.
11696 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11698         * lisp/isearch.el: Make character-fold search the default again.
11700 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11702         * lisp/character-fold.el: Many improvements.
11703         (character-fold-search-forward, character-fold-search-backward):
11704         New command.
11705         (character-fold-to-regexp): Remove lax-whitespace hack.
11706         (character-fold-search): Remove variable.  Only isearch and
11707         query-replace use char-folding, and they both have their own
11708         variables to configure that.
11710 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11712         * lisp/isearch.el: Generalize definition of regexp-function toggles.
11713         (isearch-specify-regexp-function): New macro for specifying
11714         possible values of `isearch-regexp-function'.
11715         (isearch-toggle-character-fold, isearch-toggle-symbol)
11716         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
11718 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11720         * lisp/isearch.el (search-default-regexp-mode): New variable.
11721         (isearch-mode): Use it.
11723 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11725         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
11726         (search-slow-speed, search-upper-case)
11727         (search-nonincremental-instead, search-whitespace-regexp)
11728         (search-invisible, isearch-hide-immediately)
11729         (isearch-resume-in-command-history, search-ring-max)
11730         (regexp-search-ring-max, search-ring-update, search-highlight)
11731         (isearch-fail): Delete :group entries.
11733 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11735         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
11737 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11739         addpm.c: Silence some warnings.
11741         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
11742         to LPBYTE.
11743         (add_registry): Pass NULL to optional lpClass argument of
11744         RegCreateKeyEx, not an empty string.
11746 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11748         addpm.c: Do not add obsolete GTK libraries to the path.
11750         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
11751         (add_registry): Remove variables `size' and `gtk_key'.
11752         Do not add the GTK DLL directory to the library search path; it is
11753         confusing behavior (in particular, the same Emacs version with and
11754         without invoking addpm will use a different path), and the GTK image
11755         libraries are obsolete anyway.
11757 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11759         addpm.c: Replace existing registry entries, but do not create new ones
11761         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
11762         existing values from previous versions, but do not add new ones; the
11763         key could exist for other reasons unrelated to old Emacsen, like X-style
11764         resources, or to set some environment variables like HOME or LANG, and
11765         in that case we don't want to populate it with obsolete values.
11767 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11769         * nt/addpm.c (add_registry): Do not compute unused return value.
11771 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11773         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
11775         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
11776         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
11777         current behavior because REG_OPTION_NON_VOLATILE is defined to
11778         be 0L anyway, but that option is actually documented only for
11779         RegCreateKeyEx.
11781 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11783         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
11785 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
11787         Update frame title when redisplay scrolls selected window
11789         * src/xdisp.c (redisplay_window): Reconsider the frame's title
11790         when the mode-line of the frame's selected window needs to be
11791         updated.
11793 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
11795         Update frame title when scrolling the selected window
11797         * src/window.c (wset_update_mode_line): New function, sets either
11798         the window's update_mode_line flag or the global update_mode_lines
11799         variable.
11800         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
11801         (window_scroll_line_based): Call it instead of only setting the
11802         window's update_mode_line flag.
11804 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
11806         An even better fix for bug#21739
11808         * src/window.c (set_window_buffer): If the window is the frame's
11809         selected window, set update_mode_lines, not the window's
11810         update_mode_line flag.
11811         * src/buffer.c (Fkill_buffer): Undo last change.
11812         (set_update_modelines_for_buf): Function deleted.
11814 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11815             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
11817         Sync with soap-client repository, version 3.0.0
11819         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
11820         Bump version to 3.0.0.
11822         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
11824         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
11826         * lisp/net/soap-inspect.el: Shorten first line description.
11828         * lisp/net/soap-client.el: Make a small whitespace fix.
11830         * lisp/net/soap-inspect.el: Update copyright years.
11832         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
11833         first use in soap-encode-xs-element.
11835         * lisp/net/soap-client.el (soap-type-is-array?): new defun
11836         (soap-encode-xs-element): handle array elements in this function
11837         (soap-encode-xs-complex-type): flag error if asked to encode an
11838         array type, this is handled in `soap-encode-xs-element'
11840         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
11841         Do not print type for attribute group.
11843         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
11844         New function.
11845         (soap-inspect-xs-attribute-group): Likewise.
11847         * lisp/net/soap-inspect.el
11848         (soap-resolve-references-for-xs-attribute-group): Resolve
11849         references of attributes in an attribute group.
11851         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
11852         type directly, not through soap-wsdl-get.
11854         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
11855         nil if reference attribute is nil.
11857         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
11858         Convert XML schema attributes to xsd:string.
11860         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
11861         New function.
11862         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
11863         (soap-sample-value-for-xs-complex-type): Likewise.
11864         (soap-inspect-xs-attribute): New function.
11865         (soap-inspect-xs-simple-type): Print attributes.
11866         (soap-inspect-xs-complex-type): Likewise.
11868         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
11869         Resolve references for attributes.
11870         (soap-resolve-references-for-xs-complex-type): Likewise.
11872         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
11873         Rename from soap-xml-node-first-child.
11874         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
11875         (soap-xs-parse-simple-type): Likewise.
11877         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
11879         * lisp/net/soap-client.el (soap-invoke-internal): New function.
11880         (soap-invoke-async): Call soap-invoke-internal.
11881         (soap-invoke): Likewise.
11883         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
11884         url-retrieve callback is killed.
11886         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
11887         Rename function.
11888         (soap-parse-wsdl-phase-fetch-imports): Likewise.
11889         (soap-parse-wsdl-phase-parse-schema): Likewise.
11890         (soap-parse-wsdl-phase-fetch-schema): Likewise.
11891         (soap-parse-wsdl-phase-finish-parsing): Likewise.
11892         (soap-parse-wsdl): Update calls.
11894         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
11896         * lisp/net/soap-client.el (soap-invoke-async): New function.
11897         (soap-invoke): Reimplement using soap-invoke-async.
11899         * lisp/net/soap-client.el (soap-parse-server-response):
11900         Improve docstring.
11901         (soap-invoke): Inline call to soap-parse-server-response.
11903         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
11904         Prevent incorrect warning.
11906         * lisp/net/soap-client.el (soap-parse-server-response):
11907         Rename soap-process-url-response.  Destroy the mime part.
11908         (soap-invoke): Call soap-parse-server-response.
11910         * lisp/net/soap-client.el: Update copyright date.
11912         * lisp/net/soap-client.el: Fix checkdoc issues.
11914         * lisp/net/soap-client.el: Fix indentation and long lines.
11916         * lisp/net/soap-client.el (soap-time-format): Remove variable.
11917         (soap-encode-xs-basic-type): Simplify date-time format detection.
11918         (soap-decode-xs-basic-type): Remove soap-time-format support.
11920         * lisp/net/soap-client.el (soap-process-url-response): New function.
11921         (soap-fetch-xml-from-url): Call soap-process-url-response.
11922         (soap-parse-wsdl-phase-1): New function.
11923         (soap-parse-wsdl-phase-2): Likewise.
11924         (soap-parse-wsdl-phase-3): Likewise.
11925         (soap-parse-wsdl-phase-4): Likewise.
11926         (soap-parse-wsdl-phase-5): Likewise.
11927         (soap-parse-wsdl): Call phase functions.
11929         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
11930         Remove one-argument and call.
11932         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
11934         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
11935         (soap-parse-schema): Add wsdl argument.  Look up XML schema
11936         imports from wsdl.
11937         (soap-load-wsdl): Do not set soap-xmlschema-imports.
11938         (soap-parse-wsdl): Get XML schema imports from wsdl.
11940         * lisp/net/soap-client.el (soap-current-file): Remove variable.
11941         (soap-wsdl): Add current-file slot.
11942         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
11943         file from wsdl.
11944         (soap-fetch-xml-from-file): Likewise.
11945         (soap-fetch-xml): Likewise.
11946         (soap-load-wsdl): Always create wsdl object first.
11947         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
11949         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
11950         (soap-xs-parse-element): Set is-group slot.
11951         (soap-resolve-references-for-xs-element): Skip is-group elements.
11952         (soap-xs-complex-type): Add is-group slot.
11953         (soap-xs-parse-complex-type): Set is-group slot.
11954         (soap-xs-parse-sequence): Parse xsd:group elements.
11955         (soap-resolve-references-for-xs-complex-type): Inline elements
11956         from referenced xsd:group nodes.
11957         (soap-parse-schema): Parse xsd:group nodes.
11959         * lisp/net/soap-client.el (soap-invoke):
11960         Don't set url-http-version to 1.0.
11962         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
11963         Allow choice nodes to accept multiple values.
11965         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
11966         for extra header values.
11968         * lisp/net/soap-client.el (soap-well-known-xmlns):
11969         Add wsa and wsaw tags.
11970         (soap-operation): Add input-action and output-action slots.
11971         (soap-parse-operation): Parse wsaw:Action nodes.
11972         (soap-encode-body): Encode service-url for WS-Addressing.
11973         (soap-create-envelope): Likewise.
11974         (soap-invoke): Update soap-create-envelope call to provide
11975         service-url argument.
11977         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
11978         Support xsi:type override attribute.
11979         (soap-decode-array): Likewise.
11981         * lisp/net/soap-client.el (soap-parse-schema):
11982         Handle location attribute.
11984         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
11985         matched validation regexp.
11987         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
11988         Encode xsd:list nodes.
11989         (soap-decode-xs-simple-type): Decode xsd:list nodes.
11991         * lisp/net/soap-client.el (soap-get-candidate-elements):
11992         Fix reference handling.
11994         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
11995         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
11996         (soap-xs-add-list): New function.
11998         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
11999         expected, interpret nil as "false".
12001         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
12002         gYear, gMonthDay, gDay and gMonth.
12004         * lisp/net/soap-client.el (soap-time-format): New variable.
12005         (soap-encode-xs-basic-type): Handle dateTime, time, date,
12006         gYearMonth, gYear, gMonthDay, gDay and gMonth.
12007         (soap-decode-date-time): New function.
12008         (soap-decode-xs-basic-type): Use soap-decode-date-time.
12010         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
12011         after encoding.
12012         (soap-decode-xs-basic-type): Validate value before decoding.
12014         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
12015         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
12017         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
12018         instead of overwriting it.
12019         (soap-validate-xs-simple-type): Add union support.
12021         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
12022         to Emacs regexp using xsdre-translate.
12023         (soap-validate-xs-simple-type): Validate value against pattern.
12025         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
12026         inline simpleType nodes.
12027         (soap-decode-type): Handle union types.
12029         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
12030         attributes.
12032         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
12033         from soap-xs-attribute-group-consolidate, all callers updated
12034         (soap-get-xs-attributes): Rename from
12035         soap-xs-attributes-consolidate, all callers updated
12037         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
12038         (soap-xs-attribute-group): New type.
12039         (soap-xs-parse-attribute-group): New function.
12040         (soap-resolve-references-for-xs-attribute-group): Likewise.
12041         (soap-xs-add-extension): Handle attribute groups.
12042         (soap-resolve-references-for-xs-simple-type): Likewise.
12043         (soap-xs-parse-complex-type): Likewise.
12044         (soap-xs-parse-extension-or-restriction): Likewise.
12045         (soap-resolve-references-for-xs-complex-type): Likewise.
12046         (soap-xs-attribute-group-consolidate): New function.
12047         (soap-xs-attributes-consolidate): Handle attribute groups.
12048         (soap-parse-schema): Likewise.
12050         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
12051         Fix boolean encoding.
12053         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
12054         element names in warnings.
12056         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
12058         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
12059         Eliminate invalid warnings for choice types.
12061         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
12062         Also encode base type attributes.
12064         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
12065         warning.  Print e-name in warnings, or element if e-name is nil.
12067         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
12068         (soap-xs-parse-element): Set substitution-group.
12069         (soap-resolve-references-for-xs-element): Populate alternatives slot.
12070         (soap-get-candidate-elements): New function.
12071         (soap-encode-xs-complex-type): Iterate through all candidate elements.
12072         Handle types with nil type indicator.  Fix warning logic.
12074         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
12075         earlier in the file to prevent compiler warning.
12077         * lisp/net/soap-client.el (soap-node-optional): New function.
12078         (soap-node-multiple): Likewise.
12079         (soap-xs-parse-element): Call soap-node-optional and
12080         soap-node-multiple.
12081         (soap-xs-complex-type): Add optional? and multiple? slots.
12082         (soap-xml-get-children-fq): New function.
12083         (soap-xs-element-get-fq-name): Likewise.
12084         (soap-xs-complex-type-optional-p): Likewise.
12085         (soap-xs-complex-type-multiple-p): Likewise.
12086         (soap-xs-attributes-consolidate): Likewise.
12087         (soap-decode-xs-attributes): Likewise.
12088         (soap-decode-xs-complex-type): Decode types with nil type indicator.
12089         Support children that use local namespaces.  Decode attributes.
12090         Add type considerations to optional? and multiple? warnings.
12092         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
12093         Store parsed attributes.
12094         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
12096         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
12097         Don't add the xsi:type attribute (Exchange refuses requests which have
12098         this attribute).
12100         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
12101         correct compiler warnings about unused function arguments and
12102         local variables.
12104         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
12105         type indicator.
12106         (soap-parse-envelope): Handle response headers.
12107         (soap-parse-response): Likewise.  Only return non-nil decoded values.
12109         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
12110         Return validated value.
12112         * lisp/net/soap-client.el (soap-xs-parse-element)
12113         (soap-xs-parse-simple-type)
12114         (soap-xs-parse-complex-type)
12115         (soap-parse-message)
12116         (soap-parse-operation): Add the current namespace to the element
12117         being created.
12118         (soap-resolve-references-for-xs-element)
12119         (soap-resolve-references-for-xs-simple-type)
12120         (soap-resolve-references-for-xs-complex-type)
12121         (soap-resolve-references-for-operation): Resolve the namespace to
12122         the namespace tag.
12123         (soap-make-wsdl): specify a namespace tag when creating the xsd
12124         and soapenc namespaces
12125         (soap-wsdl-resolve-references): don't update namespace tags in
12126         elements here
12127         (soap-parse-port-type): bind the urn: to soap-target-xmlns
12128         (soap-encode-body): don't add nil namespace tags to
12129         soap-encoded-namespaces
12131         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
12132         for registering the soap-inspect method.  Make debbugs tests pass.
12133         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
12134         type name, also skip string only nodes when decoding a structure.
12135         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
12136         types too.
12137         (soap-encode-body): Grab the header value from the param table.
12139         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
12140         New function.
12141         (soap-encode-xs-element): Don't encode nil value unless needed.
12143         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
12144         (soap-parse-binding): Parse the message parts required in the body.
12145         (soap-encode-body): Encode only the parts that are declared to be
12146         part of the body.
12148         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
12149         when writing out the tag.
12150         (soap-encode-body): Remove hack that inserts the xmlns in the
12151         element attributes list.
12153         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
12154         (soap-xs-parse-attribute): Default slot is set from the XML
12155         "fixed" attribute.
12156         (soap-encode-xs-complex-type-attributes): Encode any attributes
12157         that have a default value.  Also, don't put the xsi:nil attribute
12158         when the complex type has no content anyway.
12160         * lisp/net/soap-client.el (soap-well-known-xmlns):
12161         Add the xml namespace.
12162         (soap-local-xmlns): Start with the xml namespace.
12163         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
12164         (soap-make-xs-basic-types): More xsd types added.
12165         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
12166         Handle "language", "time", "date", "nonNegativeInteger".
12167         (soap-resolve-references-for-xs-element): Don't signal an error if
12168         the element does not have a type.
12169         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
12170         added stum for xsd:list.
12171         (soap-xs-add-union): Call soap-l2fq on all union members.
12172         (soap-xs-add-extension): Call soap-l2fq on the base member.
12173         (soap-resolve-references-for-xs-simple-type): Don't signal an
12174         error if the simple type has no base.
12175         (soap-resolve-references-for-xs-simple-type): Bugfix, call
12176         soap-wsdl-get on each type of the base.
12178         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
12179         Referenced type can be eiher a simple type or a basic type.
12180         (soap-xs-add-restriction)
12181         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
12182         (soap-make-xs-basic-types)
12183         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
12184         Add support for more XMLSchema basic types.
12185         (soap-current-file, soap-xmlschema-imports): New defvars.
12186         (soap-parse-schema): Add locations from xsd:import tags to
12187         `soap-xmlschema-imports'.
12188         (soap-wsdl): Make destructor private.
12189         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
12190         (soap-wsdl-add-alias): Check if we try to replace aliases.
12191         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
12192         (soap-fetch-xml): New defuns.
12193         (soap-load-wsdl): Update to load the WSDL from either a file or
12194         an url.
12195         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
12196         (soap-parse-wsdl): Process wsdl:import tags and imports from
12197         `soap-xmlschema-imports'.
12198         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
12199         symbol-name.
12200         (soap-l2fq): Make the name part always a string.
12201         (soap-name-p): New defun, used for name tests.
12203         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
12204         Supply sample values for choice types with a special tag.
12205         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
12206         Handle anonymous elements correctly.
12207         (soap-encode-value): Accept nodes that have no namespace tag.
12209         * lisp/net/soap-client.el (soap-invoke): Encode the string for
12210         `url-request-data' as UTF-8.  Fixes issue 16.
12212 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
12214         Update the new icon
12216         Move the E slightly to the right in the circle.
12218         * etc/images/icons/hicolor/128x128/apps/emacs.png:
12219         * etc/images/icons/hicolor/16x16/apps/emacs.png:
12220         * etc/images/icons/hicolor/24x24/apps/emacs.png:
12221         * etc/images/icons/hicolor/32x32/apps/emacs.png:
12222         * etc/images/icons/hicolor/48x48/apps/emacs.png:
12223         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
12224         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
12225         * nt/icons/emacs.ico: New icom update.
12227 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
12229         Avoid missing inline functions from lisp.h in TAGS
12231         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
12232         need to end each invocation with a semi-colon.
12233         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
12234         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
12235         inline functions defined immediately after each invocation, and
12236         also avoid tagging every invocation of these macros.
12238 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
12240         A better fix for bug#21739
12242         * src/buffer.c (set_update_modelines_for_buf): New function.
12243         (Fkill_buffer): Use it to set the global variable
12244         update_mode_lines if the killed buffer was displayed in some
12245         window.  Don't set windows_or_buffers_changed.  This is a better
12246         fix for bug#21739 than the previous fix, since it will cause only
12247         redisplay of mode lines, not of entire windows, but will still
12248         catch attention of x_consider_frame_title in xdisp.c, which
12249         redraws the frame title.
12251 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
12253         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
12254         tar.bz2 and tar.xz archives.
12256 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
12258         Fix infloop in redisplay introduced by a recent change
12260         * src/xdisp.c (redisplay_internal): Avoid inflooping when
12261         redisplaying the selected window sets the selected frame's
12262         redisplay flag.  (Bug#21745)
12264 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12266         * lisp/emacs-lisp/thunk.el: Better documentation.
12268 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12270         Replace the old icon for Windows and Mac OSX
12272         * nt/icons/emacs.ico:
12273         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
12274         Use the new icons.
12276 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
12278         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
12279         `load-path' should contain only directory names.
12281 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12283         New library thunk.el
12285         thunk.el is extracted from stream.el in ELPA, with additional tests.
12287         * lisp/emacs-lisp/thunk.el: New file.
12288         * test/automated/thunk-tests.el: New file.
12289         * etc/NEWS: Add information about thunk.el
12291 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
12293         Fix bug#21669
12295         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
12296         calling low-level functions.
12298         * test/automated/file-notify-tests.el (file-notify--test-timeout):
12299         Decrase to 6 seconds for remote directories.
12300         (file-notify-test02-events): Expect different number of
12301         `attribute-changed' events for the local and remote cases.  Apply
12302         short delays between the operations, in order to receive all
12303         events in the remote case.  Combine `attribute-change' tests.
12304         (Bug#21669)
12306 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
12308         Decode the HTML source when displaying it in EWW
12310         * lisp/net/eww.el (eww-view-source): Decode the HTML source
12311         according to its headers.
12313 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12315         New default icon
12317         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
12318         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
12319         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
12320         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
12321         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
12322         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
12323         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
12324         Move the old logo files to emacs23.*.
12325         * etc/images/icons/hicolor/128x128/apps/emacs.png:
12326         * etc/images/icons/hicolor/16x16/apps/emacs.png:
12327         * etc/images/icons/hicolor/24x24/apps/emacs.png:
12328         * etc/images/icons/hicolor/32x32/apps/emacs.png:
12329         * etc/images/icons/hicolor/48x48/apps/emacs.png:
12330         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
12331         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
12332         New files.
12333         * etc/images/icons/README: Update the copyright information.
12335 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
12337         Fix redisplay of frame title when current buffer is killed
12339         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
12340         non-zero value, to redisplay more than just the affected windows.
12341         (Bug#21739)
12343 2015-10-23  Anders Lindgren  <andlind@gmail.com>
12345         NextStep maximization and NSTRACE rewrite
12347         Full-height, full-width, and maximized windows now cover the
12348         entire screen (except the menu bar), including the part where the
12349         system dock is placed.  The system zoom animation is no longer
12350         used.
12352         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
12353         original size.
12355         * src/nsterm.m (ns_menu_bar_height): New function, return height of
12356         the menu bar, or 0 when it's hidden.
12357         (constrain_frame_rect): New function for constraining a frame.
12358         (ns_constrain_all_frames): Set frame size explicitly rather than
12359         relying on the system doing it for us by writing back the current
12360         frame size.
12361         (windowWillUseStandardFrame): Register non-maximized width or
12362         height as new user size.  When entering full width or height,
12363         the other size component is taken from the user size.
12364         (fullscreenState): New method for accessing the fullscreen state.
12365         (constrainFrameRect): Restrict frame to be placed under the menu bar,
12366         if present.  The old version, sometimes, restricted the height of a
12367         frame to the screen, this version never does this.
12368         (zoom): Perform zoom by setting the frame to the full size of the
12369         screen (minus the menu bar).  The default system function, with the
12370         zoom animation, is no longer used, as the final frame size doesn't
12371         cover the entire screen.
12373         Rework how to constrain resizing to the character grid.  The old
12374         system used "resizeIncrements" in NSWindows.  However, once a frame
12375         was resized so that it was not aligned to the text grid, it
12376         remained unaligned even after a resize.  In addition, it conflicted
12377         when resizing a fullheight window.
12379         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
12380         unless when pixelwise frame resizing is enabled.
12381         (updateFrameSize, initFrameFromEmacs)
12382         (toggleFullScreen, handleFS): Don't set resizeIncrements.
12384         Redesign the NS trace system.  The call structure is represented
12385         using indentations and vertical lines.  The NSTRACE macro accepts
12386         printf-style arguments.  New macros for printing various
12387         information.
12389         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
12390         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
12391         block (typically a function), accept printf-style arguments.
12392         (NSTRACE_MSG): Macro for extra information, accepts
12393         printf-style arguments.
12394         (NSTRACE_what): Macros for printing various types.
12395         (NSTRACE_FMT_what): Macro with printf format string snippets.
12396         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
12397         corresponds to NSTRACE_FMT_what.
12398         (NSTRACE_RETURN): Macro to print return value, accept
12399         printf-style arguments.
12400         (NSTRACE_RETURN_what): Macros to print return value for
12401         various types.
12403         * src/nsterm.m: Remove old NSTRACE macro
12404         * src/nsterm.m (nstrace_num): Trace counter.
12405         (nstrace_depth): Current call depth.
12406         (nstrace_leave): NSTRACE support function, called when the
12407         local variable "nstrace_enabled" goes out of scope using the
12408         "cleanup" extension.
12409         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
12410         (constrain_frame_rect, ns_constrain_all_frames)
12411         (ns_update_auto_hide_menu_bar, ns_update_begin)
12412         (ns_update_window_begin, update_window_end, ns_update_end)
12413         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
12414         (ns_frame_rehighlight, x_make_frame_visible)
12415         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
12416         (x_destroy_window, x_set_offset, x_set_window_size)
12417         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
12418         (ns_defined_color, frame_set_mouse_pixel_position)
12419         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
12420         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
12421         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
12422         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
12423         (dumpcursor, ns_draw_vertical_window_border)
12424         (ns_draw_window_divider, ns_draw_relief)
12425         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
12426         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
12427         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
12428         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
12429         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
12430         (ns_create_terminal, ns_term_init, sendEvent)
12431         (applicationDidFinishLaunching, applicationDidBecomeActive)
12432         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
12433         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
12434         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
12435         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
12436         (mouse_autoselect_window, in_window, mouseDragged)
12437         (rightMouseDragged, otherMouseDragged, windowShouldClose)
12438         (updateFrameSize, windowWillResize, windowDidResize)
12439         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
12440         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
12441         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
12442         (windowDidEnterFullScreen, windowWillExitFullScreen)
12443         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
12444         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
12445         (draggingEntered, performDragOperation, validRequestorForSendType)
12446         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
12447         (EmacsScroller_initFrame, EmacsScroller_setFrame)
12448         (EmacsScroller_dealloc, condemn, reprieve, judge)
12449         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
12450         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
12452         * src/nsfns.m: Remove old NSTRACE macro
12453         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
12454         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
12455         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
12457         * src/nsimage.m: Remove old NSTRACE macro
12458         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
12459         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
12461         * src/nsmenu.m: Remove old NSTRACE macro
12462         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
12463         Use new trace system.
12465 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
12467         No need to use eval-and-compile
12469         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
12470         autoload epg functions.
12472 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
12474         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
12476         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
12477         epg-context-set-passphrase-callback, epg-decrypt-string, and
12478         epg-encrypt-string; require epg when compiling for the setf-method
12479         for epg-context-armor. (bug#21724)
12481 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
12483         Include file cleanup for w32 files in src directory
12485         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
12486         fontset.h, blockinput.h.
12487         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
12488         charset.h, fontset.h.
12489         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
12490         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
12491         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
12492         in an ifdef-ed away block.
12493         Include fcntl.h for CYGWIN.
12494         (set_frame_param): Remove unused function.
12495         * src/w32select.c: Don't include charset.h and composite.h.
12496         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
12497         due to pointer signedness mismatches.
12498         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
12499         due to pointer signedness mismatches.
12500         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
12501         process.h, dispextern.h.
12502         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
12503         (Fw32_application_type): Avoid compiler warnings due to pointer
12504         signedness mismatches.
12505         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
12506         character.h, charset.h, dispextern.h.
12507         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
12508         to pointer signedness mismatches.
12509         * src/w32inevt.c: Don't include dispextern.h, window.h,
12510         termhooks.h, w32heap.h.
12511         * src/w32font.c: Don't include dispextern.h, character.h,
12512         charset.h, fontset.h, font.h.
12513         (intern_font_name, add_font_entity_to_list)
12514         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
12515         (list_all_matching_fonts): Avoid compiler warnings due to pointer
12516         signedness mismatches.
12517         * src/w32fns.c: Don't include character.h, intervals.h,
12518         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
12519         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
12520         (w32_color_map_lookup, add_system_logical_colors_to_map)
12521         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
12522         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
12523         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
12524         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
12525         compiler warnings, mainly due to pointer signedness mismatches.
12526         (unwind_create_frame_1): Remove unused function.
12527         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
12528         window.h, termhooks.h, dispextern.h.
12529         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
12530         signedness mismatch.
12531         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
12532         w32heap.h.
12534 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
12536         Improve doc-view wrt. auto-revert-mode
12538         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
12539         is corrupted (bug#21729).
12540         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
12542 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
12544         Describe dired-do-compress-to in the manual
12546         * etc/NEWS: Update.
12548         * lisp/dired-aux.el: Fix typo.
12550         * doc/emacs/dired.texi: Add entry.
12552 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
12554         Further fix for proper locale handling in tramp-gvfs.el
12556         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
12557         Just suppress LC_MESSAGES locale category settings.
12559 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12561         New lispref section “Security Considerations”
12563         This attempts to document some of the issues recently discussed
12564         on emacs-devel, and to indicate other such issues.  The section
12565         could be a lot longer.
12566         * doc/lispref/os.texi (Security Considerations):
12567         New node.
12568         * doc/lispref/elisp.texi (Top):
12569         * doc/lispref/processes.texi (Shell Arguments):
12570         * lisp/subr.el (shell-quote-argument):
12571         * src/callproc.c (syms_of_callproc):
12572         Reference it.
12574 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12576         Merge from gnulib
12578         This incorporates:
12579         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
12580         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
12581         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
12582         Copy from gnulib.
12584 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
12586         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
12587         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
12589 2015-10-21  Ken Brown  <kbrown@cornell.edu>
12591         Further include-file cleanup
12593         * src/sheap.c: Include stdlib.h.
12594         * src/unexcw.c: Include string.h.
12596 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
12598         Fix logic in 'server-kill-emacs-query-function'
12600         * lisp/server.el (server-kill-emacs-query-function): Correct the
12601         logic that controls whether the user is asked for confirmation.
12602         (Bug#21723)
12604 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12606         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
12607         (isearch--lax-regexp-function-p): New function.
12609 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12611         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
12612         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
12613         around `isearch-regexp-function'.
12615 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12617         * lisp/isearch.el: Rename word search to regexp-function search.
12618         `isearch-word' went well beyond its original purpose, and the name
12619         no longer makes sense.  It is now called
12620         `isearch-regexp-function', and its value should always be a function
12621         that converts a string to a regexp (though setting it to t is still
12622         supported for now).
12623         (isearch-word): Make obsolete.
12624         (isearch-regexp-function): New variable.
12625         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
12626         (with-isearch-suspended, isearch-toggle-regexp)
12627         (isearch-toggle-word, isearch-toggle-symbol)
12628         (isearch-toggle-character-fold, isearch-query-replace)
12629         (isearch-occur, isearch-highlight-regexp)
12630         (isearch-search-and-update, isearch-message-prefix)
12631         (isearch-search-fun-default, isearch-search)
12632         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
12633         Use it.
12634         (isearch-lazy-highlight-regexp-function): New var.
12635         (isearch-lazy-highlight-word): Make obsolete.
12636         (isearch--describe-regexp-mode): New function.
12637         (isearch--describe-word-mode): Make obsolete.
12639         * lisp/info.el (Info-isearch-search):
12640         * lisp/replace.el (replace-search, replace-highlight):
12641         * lisp/obsolete/longlines.el (longlines-search-function):
12642         * lisp/hexl.el (hexl-isearch-search-function):
12643         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
12644         Use the new var.
12646 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
12648         Add dired-do-compress-to command bound to "c"
12650         * lisp/dired-aux.el (dired-shell-command): Use the caller's
12651           `default-directory', return the result of `process-file'.
12652         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
12653         used by default.
12654         (dired-compress-files-alist): New defvar.
12655         (dired-do-compress-to): New command.
12657         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
12658         (dired-do-compress-to): Add an autoload entry.
12660         * etc/NEWS: Add two entries.
12662 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
12664         Make RefTeX work with LaTeX subfiles package
12666         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
12667         document class argument as master file for referencing purposes.
12669 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
12671         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
12673 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
12675         Include-file cleanup for src directory
12677         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
12678         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
12679         but does not include it directly.  As a general rule, a source
12680         file should include foo.h if it needs the interfaces that foo.h
12681         defines.
12682         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
12683         systime.h.
12684         * src/atimer.c: Don’t include blockinput.h.
12685         * src/buffer.c: Include coding.h, systime.h.  Don’t include
12686         keyboard.h, coding.h.
12687         * src/callint.c: Don’t include commands.h, keymap.h.
12688         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
12689         systty.h, termhooks.h.
12690         * src/casetab.c: Don’t include character.h.
12691         * src/category.c: Don’t include charset.h, keymap.h.
12692         * src/ccl.h: Don’t include character.h.
12693         * src/character.c: Don’t include charset.h.
12694         * src/charset.c: Don’t include disptab.h.
12695         * src/chartab.c: Don’t include ccl.h.
12696         * src/cm.c: Don’t include frame.h, termhooks.h.
12697         * src/cmds.c: Don’t include window.h, dispextern.h.
12698         * src/coding.c: Don’t include window.h, frame.h.
12699         * src/composite.c: Include composite.h.  Don’t include window.h,
12700         font.h.
12701         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
12702         * src/dbusbind.c: Don’t include frame.h.
12703         * src/decompress.c: Don’t include character.h.
12704         * src/dired.c: Don’t include character.h, commands.h, charset.h.
12705         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
12706         process.h, timespec.h.  Include systime.h.
12707         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
12708         * src/editfns.c: Include composite.h.  Don’t include frame.h.
12709         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
12710         commands.h, systty.h..
12711         * src/fileio.c: Don’t include intervals.h, dispextern.h.
12712         Include composite.h.
12713         * src/filelock.c: Don’t include character.h, systime.h.
12714         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
12715         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
12716         * src/font.c: Include termhooks.h.
12717         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
12718         struct composition_it, struct face, struct glyph_string.
12719         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
12720         intervals.h, window.h, termhooks.h.
12721         * src/frame.c: Don’t include character.h, commands.h, font.h.
12722         * src/frame.h: Don’t include dispextern.h.
12723         * src/fringe.c: Don’t include character.h.
12724         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
12725         character.h, charset.h, fontset.h.
12726         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
12727         fontset.h.
12728         * src/ftxfont.c: Don’t include dispextern.h, character.h,
12729         charset.h, fontset.h.
12730         * src/gfilenotify.c: Don’t include frame.h, process.h.
12731         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
12732         Don’t include syssignal.h, buffer.h, charset.h, font.h.
12733         * src/gtkutil.h: Don’t include frame.h.
12734         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
12735         Don’t include character.h.
12736         * src/indent.c: Don’t include keyboard.h, termchar.h.
12737         * src/inotify.c: Don’t include character.h, frame.h.
12738         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
12739         * src/intervals.c: Don’t include character.h, keyboard.h.
12740         * src/intervals.h: Don’t include dispextern.h, composite.h.
12741         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
12742         Include coding.h.
12743         * src/keyboard.h: Don’t incldue systime.h.
12744         * src/keymap.c: Don’t include charset.h, frame.h.
12745         * src/lread.c: Include dispextern.h and systime.h.
12746         Don’t include frame.h.  Include systime.h.
12747         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
12748         * src/menu.c: Include character.h, coding.h.  Don’t include
12749         dispextern.h.
12750         * src/menu.h: Don’t include systime.h.
12751         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
12752         intervals.h, termhooks.h.
12753         * src/print.c: Include coding.h.  Don’t include keyboard.h,
12754         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
12755         Add forward decl of struct terminal.
12756         * src/process.c: Don’t include termhooks.h, commands.h,
12757         dispextern.h, composite.h.
12758         * src/region-cache.c: Don’t include character.h.
12759         * src/scroll.c: Don’t include keyboard.h, window.h.
12760         * src/search.c: Don’t include category.h, commands.h.
12761         * src/sound.c: Don’t include dispextern.h.
12762         * src/syntax.c: Don’t include command.h, keymap.h.
12763         * src/sysdep.c: Don’t include window.h, dispextern.h.
12764         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
12765         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
12766         * src/terminal.c: Include character.h.
12767         Don’t include charset.h, coding.h.
12768         * src/textprop.c: Don’t include character.h.
12769         * src/undo.c: Don’t include character.h, commands.h, window.h.
12770         * src/unexsol.c: Don’t include character.h, charset.h.
12771         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
12772         window.h, dispextern.h, blockinput.h, character.h, font.h.
12773         * src/widgetprv.h: Don’t include widget.h.
12774         * src/window.c: Don’t include character.h, menu.h, intervals.h.
12775         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
12776         macros.h, process.h.
12777         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
12778         intervals.h.
12779         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
12780         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
12781         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
12782         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
12783         * src/xgselect.c: Don’t include timespec.h, frame.h.
12784         Include systime.h.
12785         * src/xgselect.h: Don’t include time.h.
12786         Use a forward decl to struct timespec instead.
12787         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
12788         dispextern.h.  Include systime.h.
12789         * src/xml.c: Don’t include character.h.
12790         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
12791         * src/xselect.c: Don’t include dispextern.h, character.h,
12792         buffer.h, process.h.
12793         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
12794         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
12795         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
12797 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
12799         (/ N) now returns the reciprocal of N
12801         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
12802         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
12803         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
12804         (color-xyz-to-srgb, color-xyz-to-lab):
12805         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
12806         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
12807         (shr-color-hsl-to-rgb-fractions):
12808         Exploit the change to simplify the code a bit.
12809         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
12810         Don’t complain about single-argument calls to ‘/’.
12811         * src/data.c (arith_driver, float_arith_driver):
12812         Implement the change.
12814 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
12816         Call vc-dir-refresh after stash operations
12818         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
12819         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
12821         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
12822         since it can be abbreviated (as returned by vc-find-root).
12824 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
12826         * lisp/vc/vc-svn.el:
12827         * lisp/vc/vc-mtn.el:
12828         * lisp/vc/vc-hg.el:
12829         * lisp/vc/vc-cvs.el:
12830         * lisp/vc/vc-git.el:
12831         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
12832         Its usages have been replaced with vc-run-delayed.
12834 2015-10-20  Dima Kogan  <dima@secretsauce.net>
12836         Fix memory leak in fontset handling
12838         * src/font.c (copy_font_spec): Make a deep copy of the input
12839         argument FONT.  (Bug#21651)
12841 2015-10-20  Michael Sperber  <mike@xemacs.org>
12843         * lisp/gnus/mailcap.el (mailcap-mime-data):
12844         Conditonalize `doc-view-mode', which does not exist on XEmacs.
12846 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
12848         Update the way directories are compressed
12850         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
12851         for *.tar.gz decompression to use a pipe.
12852         Add an entry for the default directory compression (to *.tar.g).
12853         (dired-compress-file): Update.
12855         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
12857 2015-10-20  Michael Sperber  <mike@xemacs.org>
12859         Unbreak `group' option for `mail-sources'
12861         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
12862         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
12863         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
12865 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
12867         New function seq-position
12869         * lisp/emacs-lisp/seq.el (seq-position): New function.
12870         * test/automated/seq-tests.el: New tests for seq-position.
12871         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
12873 2015-10-19  Ken Brown  <kbrown@cornell.edu>
12875         Enable --with-wide-int build on 32-bit Cygwin
12877         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
12878         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
12880 2015-10-19  Glenn Morris  <rgm@gnu.org>
12882         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
12884 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
12886         Resurrect image loading under auto-image-file-mode
12888         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
12889         'openp' specially.  This special case was lost in the changes on
12890         2015-08-18.  (Bug#21685)
12892 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
12894         Fix return value of 'set-file-extended-attributes'
12896         * lisp/files.el (set-file-extended-attributes): Return non-nil
12897         when setting either ACLs or SELinux context succeeds.  Document
12898         the return value.  (Bug#21699)
12900         * doc/lispref/files.texi (Changing Files): Document the return
12901         value of set-file-extended-attributes.
12903 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
12905         Improve documentation of functions that change files
12907         * doc/lispref/files.texi (Changing Files): Document that these
12908         functions signal an error on failure.
12910 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
12912         Fix doc string of 'shell-quote-argument'
12914         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
12916 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
12918         Some minor Tramp changes
12920         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
12922         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
12923         Expand `tramp-auto-save-directory'.
12925 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
12927         Minor edits in Tramp
12929         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
12930         Declare it.
12932         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
12933         Remove declaration.
12935 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
12937         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
12939 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
12941         Avoid crashes when redisplayng a window changes faces or fonts
12943         * src/xdisp.c (redisplay_internal): If redisplaying the selected
12944         window or one of the frames turns on the frame's 'redisplay' flag,
12945         redisplay again.  (Bug#21428)
12947         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
12949 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
12951         Solve timimg issues in file-notify-tests.el
12953         * test/automated/file-notify-tests.el (file-notify-test02-events):
12954         Rectify `attribute-change' tests.  There are timing issues with
12955         gfilenotify.  (Bug#21669)
12957 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12959         Fix quoting of data within htmlfontify doc
12961         * doc/misc/htmlfontify.texi (Data Structures, Customization):
12962         Fix quoting of data structures.  A Lisp quote is needed only
12963         when data appears within Lisp code.
12965 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12967         * lisp/emacs-lisp/package.el: Reload archive-contents if
12968         priorities change.
12969         (package--old-archive-priorities): New variable.
12970         (package-read-all-archive-contents, package-menu--refresh): Use it
12971         to decide when the `package-archive-contents' needs to be read
12972         again.
12974 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12976         Make src headers idempotent and standalone
12978         Redo src/*.h so that each include file is idempotent (that is, can
12979         be included multiple times with the latter inclusions having no
12980         effect) and standalone (that is, can be included by itself,
12981         with no include file other than config.h needed as a prerequisite).
12982         This is standard practice in GNU programs nowadays.
12983         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
12984         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
12985         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
12986         * src/regex.h [emacs]:
12987         * src/syntax.h, src/systty.h, src/termhooks.h:
12988         Include lisp.h, for Lisp_Object.
12989         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
12990         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
12991         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
12992         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
12993         * src/termopts.h, src/tparam.h, src/unexec.h:
12994         Protect against multiple inclusion.
12995         * src/buffer.h: Include character.h, for STRING_CHAR.
12996         * src/emacsgtkfixed.h (struct frame):
12997         * src/fontset.h (struct face):
12998         * src/region-cache.h (struct buffer):
12999         * src/termhooks.h (struct glyph):
13000         * src/xsettings.h (struct x_display_info):
13001         Add possibly-forward decl.
13002         * src/syntax.h: Include buffer.h, for BVAR.
13003         * src/sysselect.h: Include lisp.h, for eassume.
13004         * src/termchar.h: Include <stdio.h>, for FILE.
13005         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
13006         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
13008 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
13010         Handle symlink targets containing spaces in tramp-gvfs.el
13012         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
13013         Handle symlink targets containing spaces.
13015 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
13017         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
13019         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
13020         same reason that `load-path' shouldn't.  Setting it via the customize
13021         interface is a trap for the user.
13023         Installed themes commonly add themselves to this variable, which means
13024         its value is not fit for being saved (it will permanently remember dirs
13025         that don't exist anymore).
13027         This is aggravated by the fact that Emacs always applies the `user'
13028         theme on top of any theme that's loaded, since this will apply the old
13029         variable value and remove any new directories that had been recently
13030         added by themes themselves.
13032         Not to mention, we already have `custom-theme-directory', which is safe
13033         to customize.
13035 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13037         * lisp/mpc.el: Rename the new toggling commands.
13038         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
13039         (mpc-toggle-shuffle): Add "-toggle" in the name.
13041 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13043         Improve the doc string of 'completion-boundaries'
13045         * lisp/minibuffer.el (completion-boundaries): Rename the argument
13046         TABLE to COLLECTION, for consistency with other high-level
13047         completion functions.  Document how COLLECTION is called if it
13048         is a function.  (Bug#21644)
13050 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
13052         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
13054 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
13056         Make dired-do-compress work for *.zip files
13058         * lisp/dired-aux.el (dired-check-process): Transform the top-level
13059           comment into a docstring.
13060         (dired-shell-command): New command.  This mirrors
13061         `dired-check-process', but is more user-friendly for passing
13062         arguments.
13063         (dired-compress-file-suffixes): Allow to specify the command switches
13064         along with input (%i) and output (%o) inside the PROGRAM part.
13065         Add an entry for *.zip files, and update the entry for *.tar.gz files
13066         to the new style.  Update the docstring.
13067         (dired-compress-file): When PROGRAM matches %i or %o, use the new
13068         logic.
13069         (dired-update-file-line): Avoid an error when at end of buffer.
13071         Fixes bug#21637.
13073 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13075         Minor improvement in documentation of internals
13077         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
13079 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13081         Improve documentation of COLLECTION in completion functions
13083         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
13084         cross-reference to "Programmed Completion".
13086         * src/minibuf.c (Fcompleting_read): Improve the doc string.
13087         (Bug#21644)
13089 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13091         Add more release info to etc/HISTORY
13093         * etc/HISTORY: Add more release information about 19.x and 20.x
13094         versions.
13096 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
13098         New file etc/HISTORY
13100         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
13101         * etc/HISTORY: New file.
13102         * etc/NEWS: Mention it.
13104 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
13106         js-mode: Don't misindent generator methods
13108         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
13109         generator methods from multiplication operator
13110         (https://github.com/mooz/js2-mode/issues/275).
13112 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
13114         Fix animation timeout delay calculation
13116         * lisp/image.el (image-animate-timeout):
13117         Don’t assume speed is floating-point.
13119 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
13121         Add commands for controlling MPD modes
13123         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
13124         (mpc-cmd-single): New functions.
13125         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
13126         (mpc-mode-menu): Add new commands as menu items.
13128 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
13130         Refer to `(elisp)Basic Completion' in completing-read docstring
13132         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
13133         Completion' in the docstring (bug#21644).
13135 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
13137         * lisp/mpc.el (mpc-format): Always push form to pred
13139 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13141         Spelling fixes
13143         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
13144         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
13145         Fix misspelling of nonexistent file name.
13147 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
13149         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
13151 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
13153         Some editing fixes in Tramp
13155         * lisp/net/tramp-gvfs.el:
13156         * doc/misc/tramp.texi: "customer option" -> "custom option".
13158         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
13160 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
13162         Use proper localization in tramp-gvfs.el
13164         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
13165         Suppress localized settings in order to proper parse gfvs output.
13167 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
13169         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
13170         Quote argument in proper order.  (Bug#21562)
13172 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
13174         Fix typos in docstrings
13176         * lisp/emacs-lisp/map.el:
13177         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
13178           macros.
13180 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
13182         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
13184 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
13186         Make dired-jump work with tar-subfile-mode
13188         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
13189           emitting an error, switch to `tar-superior-buffer'.
13191 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
13193         * .gitignore: Add build-aux/ar-lib.
13195 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
13197         Better docstrings in seq.el and map.el
13199         * lisp/emacs-lisp/map.el:
13200         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
13202 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13204         Merge from gnulib
13206         This incorporates:
13207         2015-10-13 binary-io, u64, unistd: port to strict C
13208         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
13209         2015-09-25 c-ctype: port better to z/OS EBCDIC
13210         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
13211         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
13212         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
13213         Copy from gnulib.
13215 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13217         Take XPNTR private
13219         * src/alloc.c (PURE_POINTER_P): Remove.
13220         All uses replaced with PURE_P.
13221         (XPNTR_OR_SYMBOL_OFFSET): New function.
13222         (XPNTR): Move here from lisp.h.
13223         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
13224         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
13225         Remove unnecessary cast.
13226         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
13227         to avoid an unnecessary runtime test for symbols.
13228         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
13229         Only alloc.c needs XPNTR now.
13231 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13233         Add MPC play/pause command
13235         * lisp/mpc.el (mpc-toggle-play): New command.
13236         (mpc-mode-map): Bind it to "s".
13237         (mpc-mode-menu): Add corresponding menu item.
13239 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13241         Add bindings and menu items for prev and next tracks
13243         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
13244         "<" to mpc-prev.
13245         (mpc-mode-menu): Add corresponding menu items
13247 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
13249         Reduce face-related consing during frame creation.
13251         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
13252         attribute list once.
13253         (face-spec-reset-face): Use it instead of building the list.
13255 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
13257         Do process ConfigureNotify events indicating size changes.
13259         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
13260         events don't have the same size, process each one.
13262 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13264         Derive mpc-mode from special-mode
13266         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
13267         (mpc-mode): Derive from special mode.
13268         (mpc-songs-mode-map): Don't set parent keymap.
13270 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13272         Fix error messages for when covers are not found.
13274         The last change to mpc-format let the binding to file call
13275         mpc-file-local-copy with nil argument.  Instead, employ if-let here
13276         so nil bindings don't result in needless computation and errors.
13277         * lisp/mpc.el: Require 'subr-x at compile time.
13278         * lisp/mpc.el (mpc-format): Use if-let.
13280 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
13282         Make dired-do-compress work for *.tar.gz files
13284         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
13285           "tar -zxvf" to *.tar.gz; update docstring.
13287         (dired-compress-file): Allow to specify switches after the command in
13288         `dired-compress-file-suffixes'.
13290 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
13292         Make dired-do-compress work for directories
13294         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
13295           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
13296         Also convert the top comment into a docstring.
13298 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13300         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
13302         ... since it might come straight from the memoizing table.
13304 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
13306         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
13308 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13310         Use special-mode in eww list modes
13312         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
13313         (eww-buffers-mode): Derive from special-mode and remove redundant
13314         setting of buffer-read-only.
13315         (eww-mode-map): Remove redundant keymap parent setting.
13316         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
13317         Remove redundant keymap suppressions and mappings.
13319 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
13321         Allow setting frame pixel sizes from frame parameters (Bug#21415)
13323         Also fix some misfeatures in frame (re-)sizing code, add more
13324         debugging information and remove some dead code.
13326         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
13327         parameter names when setting `frame-size-history'.
13328         (frame--size-history): New function.
13330         * src/frame.c (frame_inhibit_resize): If frame has not been made
13331         yet, return t if inhibit_horizontal_resize or
13332         inhibit_vertical_resize bit have been set.
13333         (adjust_frame_size): Simplify.
13334         (make_frame): Initialize inhibit_horizontal_resize,
13335         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
13336         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
13337         inhibit_vertical_resize slots.
13338         (x_set_frame_parameters): Handle `text-pixels' specification for
13339         width and height parameters.  Don't consider new_height or
13340         new_width changes.  Call adjust_frame_size instead of
13341         Fset_frame_size.
13342         (x_figure_window_size): Two new arguments x_width and y_width
13343         returning frame's figures width and height.  Calculate tool bar
13344         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
13345         Handle `text-pixels' specification for width and height
13346         parameters.
13347         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
13348         (Qx_set_window_size_1, Qx_set_window_size_2)
13349         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
13350         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
13351         (Qfree_frame_menubar_2): New symbols.
13352         * src/frame.h (structure frame): New booleans
13353         tool_bar_redisplayed, tool_bar_resized,
13354         inhibit_horizontal_resize, inhibit_vertical_resize.
13355         (x_figure_window_size): Update external declaration.
13356         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
13357         calling gtk_window_resize.
13358         (update_frame_tool_bar): Make inhibiting of frame resizing more
13359         discriminative.  Set tool_bar_resized bit.
13360         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
13361         resizing more discriminative.  Call adjust_frame_size instead of
13362         x_set_window_size.
13363         (Fx_create_frame): Handle x_width and x_height if
13364         set by x_figure_window_size.
13365         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
13366         subtract 3 from tool bar height.
13367         (x_set_window_size): Add frame_size_history_add call.
13368         (x_new_font): Call adjust_frame_size instead of
13369         x_set_window_size.
13370         * src/w32fns.c (x_change_tool_bar_height): Reset
13371         tool_bar_redisplayed and tool_bar_resized bits when adding tool
13372         bar.  Make inhibiting of frame resizing more discriminative.
13373         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
13374         (Fx_create_frame): Handle x_width and x_height if set by
13375         x_figure_window_size.  Set size hints before adjusting frame size.
13376         (x_create_tip_frame): Adjust x_figure_window_size call.
13377         * src/w32term.c (x_set_window_size): Add frame_size_history_add
13378         call.
13379         * src/widget.c (set_frame_size): Remove dead code.  Add
13380         frame_size_history_add call.  When frame_resize_pixelwise is t
13381         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
13382         pixel_width and pixel_height.
13383         (update_various_frame_slots): Remove dead code.
13384         (EmacsFrameResize): Add more information in
13385         frame_size_history_add call.
13386         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
13387         is not set.
13388         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
13389         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
13390         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
13391         tool_bar_resized bits when adding tool bar.  Make inhibiting of
13392         frame resizing more discriminative.
13393         (Fx_create_frame): Handle x_width and x_height if set by
13394         x_figure_window_size.  Set size hints before adjusting frame size.
13395         (x_create_tip_frame): Adjust x_figure_window_size call.
13396         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
13397         (set_frame_menubar): On Lucid never add core-border-width to
13398         avoid that adding XtNinternalBorderWidth adds it again.
13399         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
13400         * src/xterm.c (x_new_font): In non-toolkit case handle size
13401         change of menu bar.
13402         (x_set_window_size_1): Fix calls to frame_size_history_add.
13403         (x_wm_set_size_hint): Remove dead code.  Set
13404         size_hints.min_width and size_hints.min_height to base_width and
13405         base_height.
13407 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
13409         * test/automated/file-notify-tests.el (file-notify--test-timeout):
13410         Add docstring.  Increase to 10 seconds for remote
13411         directories.  (Bug#21669)
13413 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
13415         Unmacroize ebrowse.c and etags.c a bit
13417         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
13418         (streq, filename_eq, set_flag, has_flag): Now inline functions.
13419         (set_flag): First arg is now an address, not an lvalue.
13420         All callers changed.
13421         (filename_eq, set_flag, has_flag):
13422         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
13423         All callers changed.
13424         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
13425         Now inline functions.  Remove asserts that are unnecessary these
13426         days (and in some cases were too-generous anyway).
13428 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
13430         Use highlight for current items
13432         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
13433         Apply highlight face instead of region face.
13435 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
13437         Search for more cover image names in MPC
13439         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
13440         case insensitively
13442 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
13444         Remove or comment out unused variables
13446         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
13447         nontext_cursor, mode_cursor, hand_cursor and count.
13448         (x_change_tool_bar_height): Remove variable old_text_height.
13449         (deliver_wm_chars): Remove variable strip_Alt.
13450         (Fw32_shell_execute): Remove variable document_a.
13451         (Fw32_frame_geometry): Remove variable fullboth.
13452         * src/w32term.c (w32_setup_relief_color): Comment out variable
13453         w32_display_info.
13454         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
13455         (w32_read_socket): Comment out variables rows, columns.
13456         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
13458 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
13460         * src/w32proc.c (sys_select): Fix bitwise test.
13462 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
13464         Minor typo corrections in doc strings
13466         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
13467         Doc fixes.
13469 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
13471         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
13473 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
13475         Attempt to avoid crashes in plist-member
13477         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
13478         and a call to XCDR.  (Bug#21655)
13480 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
13482         * lisp/select.el (gui-get-primary-selection): In
13483         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
13485 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
13487         Support RTF in doc-view
13489         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
13491 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
13493         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
13495 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
13497         Replace the usage of an obsolete function in auth-source.el
13499         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
13500         Replace an usage of `epg-context-set-armor' with `setf'.
13502 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
13504         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
13506 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
13508         Have calc-yank recognize numbers in different bases.
13510         * lisp/calc/calc-yank.el (math-number-regexp): New function.
13511         (calc-yank): Use `math-number-regexp' to recognize numbers.
13513 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13515         Handle an opaque-move X11 window manager operation more efficiently
13517         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
13518         followed by more ConfigureNotify events for the same window, process
13519         only the last one.
13521 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13523         Fix cursor setting for tip frame; re-enable cursor generation
13525         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
13526         attributes sent when creating the new X window.  Don't skip setting
13527         the pointerColor parameter.
13529 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13531         Rewrite x_set_mouse_color to sync less
13533         We can track serial numbers of X requests and correlate error events
13534         with the associated requests.  This way we can identify errors for
13535         specific calls without having to use XSync after every one.
13537         * src/xfns.c (enum mouse_cursor): New type.
13538         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
13539         (mouse_cursor_types): New array listing the Lisp variables and default
13540         cursor appearances for each cursor type.
13541         (x_set_mouse_color_handler): New function; checks error event serial
13542         number against submitted requests.
13543         (x_set_mouse_color): Updated to use the new error handler callback,
13544         and to be more table-driven, to simplify repetitious code.
13546 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13548         Add x_catch_errors_with_handler
13550         * src/xterm.c (struct x_error_message_stack): Add new fields for a
13551         callback function and associated data pointer.
13552         (x_error_catcher): If the callback function is set, call it after
13553         saving the error message string.
13554         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
13555         accepts a callback function and data pointer.
13556         (x_catch_errors): Now a wrapper function.
13557         * src/xterm.h (x_special_error_handler): New typedef.
13558         (x_catch_errors_with_handler): Declare.
13560 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13562         Introduce x_uncatch_errors_after_check to reduce XSync calls
13564         Both x_had_errors_p and x_check_errors call XSync, so if they're
13565         immediately followed by x_uncatch_errors, its XSync call will be
13566         redundant, resulting in a wasted round trip to the X server.
13568         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
13569         x_uncatch_errors without the XSync call.
13570         (XTmouse_position, x_wm_supports):
13571         * src/xfns.c (x_set_mouse_color):
13572         * src/xmenu.c (Fx_menu_bar_open_internal):
13573         * src/xselect.c (x_own_selection, x_get_foreign_selection):
13574         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
13575         * src/xterm.h (x_uncatch_errors_after_check): Declare.
13577 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
13579         Document the optional prefix to `calc-yank'
13581         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
13582         prefix to `calc-yank'.
13583         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
13584         the Calc buffer are yanked back unchanged.
13586 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
13588         * lisp/calendar/calendar.el: Display buffer before executing body.
13590         In each use of this macro, the modeline is derived from a window width
13591         calculation, which will be wrong if (display-buffer) splits the window
13592         horizontally.
13594 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13596         Use ‘echo’ safely with ‘\’ or leading ‘-’
13598         POSIX says that ‘echo FOO’ produces implementation-defined output
13599         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
13600         behavior in that case.
13601         * Makefile.in (removenullpaths): Remove.
13602         (epaths-force): Rewrite to avoid the need for ‘echo’.
13603         (install-etc): Be clearer about escaping the shell metacharacters
13604         ‘\’ and ‘$’.
13605         * Makefile.in (install-arch-indep, install-etcdoc):
13606         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
13607         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
13608         * configure.ac, lib-src/rcs2log, make-dist:
13609         * src/Makefile.in (lisp.mk):
13610         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
13611         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
13612         if $foo can contain arbitrary characters.
13613         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
13614         * doc/lispref/two-volume.make (vol1.pdf):
13615         * test/etags/make-src/Makefile (web ftp publish):
13616         Use ‘printf’ rather than ‘echo -e’.
13618 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
13620         Allow numbers with different radixes to be yanked.
13622         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
13623         default base 10.
13625 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13627         Improve CHECK_IMPURE and PURE_P speedup
13629         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
13631 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
13633         Use events instead of chars to keep track of steps.
13635         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
13636         to keep track of steps.
13638 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13640         Fix --enable-gcc-warnings problem with older GCC
13642         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
13643         This is for building with --enable-gcc-warnings with
13644         GCC 4.6 through 5.0.
13646 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
13648         Fix vertical-motion in truncated lines that end in a stretch
13650         * src/indent.c (Fvertical_motion): Expect overshoot when point is
13651         beyond window margin and lines are truncated, even if we have a
13652         stretch at point.  (Bug#21468)
13654 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
13656         Avoid link-time errors due to inline functions
13658         * src/emacs.c: Include puresize.h, to avoid link-time errors in
13659         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
13660         inline functions.
13662 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
13664         * src/data.c (Faset): Fix last change.
13666 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13668         CHECK_IMPURE and PURE_P speedup
13670         * src/intervals.c (create_root_interval):
13671         Do CHECK_IMPURE only for strings; not needed for buffers.
13672         Prefer ! STRINGP to BUFFERP, for a tad more speed.
13673         * src/puresize.h (CHECK_IMPURE, PURE_P):
13674         Now inline functions instead of macros.
13675         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
13676         All callers changed.
13677         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
13678         All callers changed.
13680 2015-10-09  Noah Friedman  <friedman@splode.com>
13682         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
13684 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13686         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
13688         our after-change-function, rather than re-adding it if it was removed.
13690 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13692         * lisp/cedet/ede: Silence some compiler warnings
13694         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
13695         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
13696         (ede-apply-object-keymap, ede-reset-all-buffers)
13697         (ede-auto-add-to-target): Use dolist.
13698         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
13699         Use field names rather than initarg names in `oref'.
13700         (ede-load-project-file): Remove unused var `file'.
13701         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
13702         (ede-set): Remove unused var `a'.
13704         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
13705         (ede-project-autoload): Avoid the old-style "name" argument.
13706         (ede-emacs-find-matching-target): Use field names rather than initarg
13707         names in `oref'.
13709         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
13710         (ede-linux-load, ede-project-autoload): Avoid the old-style
13711         "name" argument.
13712         (ede-linux-find-matching-target): Use field names rather than initarg
13713         names in `oref'.
13715 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13717         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
13719 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13721         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
13722         indenting too far after ":-".
13724 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
13726         Update case-table and categories of recently added characters
13728         * lisp/international/characters.el: Update information about Latin
13729         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
13730         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
13731         blocks.  (Byug#21654)
13733 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
13735         * src/frame.c (adjust_frame_size): In minibuffer-only windows
13736         don't count minibuffer height twice.  (Bug#21643)
13738 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
13740         Avoid inflooping in font-lock
13742         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
13743         inhibit-field-text-motion around the call to
13744         line-beginning-position, to avoid inflooping.  (Bug#21615)
13746 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
13748         Refactor duplicated code; ensure default is in completions
13750         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
13751         New function.
13752         (reftex-extract-bib-entries): Use it.
13753         (reftex-extract-bib-entries-from-thebibliography): Use it.
13755 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
13757         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
13758         in the example.
13760 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
13762         * lisp/calc/calc.el: Silence byte-compiler warnings.
13763         (calc-scan-for-dels): Use ignore-errors.
13764         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
13765         (calc-read-key-sequence): Remove unused var `prompt2'.
13766         (calc-kill-stack-buffer): Remove unused var `buflist'.
13767         (calc): Remove unused var `oldbuf'.
13768         (calc-refresh): Use inhibit-read-only.
13769         (calc-can-abbrev-vectors): Declare.
13770         (calc-record): Remove unused var `mainbuf'.
13771         (math-sub-bignum): Remove unused var `sum'.
13772         (math-svo-c, math-svo-wid, math-svo-off): Declare.
13774 2015-10-08  Daiki Ueno  <ueno@gnu.org>
13776         Use g_clear_error instead of g_error_free
13778         * src/image.c: Define g_clear_error instead of g_error_free.
13779         (init_svg_functions): Resolve symbol g_clear_error instead of
13780         g_error_free.
13781         (svg_load_image): Use g_clear_error instead of g_error_free, to
13782         suppress GLib warnings when ERR is not set.  See bug#21641.
13784 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13786         * src/image.c (image_size_error): Simplify.
13788 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13790         Fix problems caught with --enable-gcc-warnings
13792         * src/image.c (lookup_rgb_color):
13793         * src/xfns.c (x_defined_color):
13794         * src/xterm.c (x_parse_color):
13795         Remove unused locals.
13797 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
13799         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
13801 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
13803         Format initial input uniformly
13805         * lisp/calc/calc.el (calc-digit-start-entry): New function.
13806         * lisp/calc/calc.el (calcDigit-start):
13807         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
13808         Use `calc-digit-start-entry' to format input.
13810 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13812         Disable non-working pointerColor setting for X tooltip frame
13814         It generates a bunch of server traffic, but there's some bug wherein
13815         the new mouse cursor settings don't seem to get used.  In most
13816         situations the cursor isn't likely to be seen anyway, so it's not
13817         urgent to fix.
13819         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
13821 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13823         Reduce some unnecessary X calls
13825         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
13826         call.  If border width is wanted, get it from the XGetGeometry call
13827         instead of calling XGetWindowAttributes on the same window.  Skip some
13828         X calls if we've already detected an error from the X server.
13829         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
13830         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
13832 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13834         Reduce color allocation/query traffic in the TrueColor case
13836         When working with an X visual with TrueColor class, pixel values can
13837         be generated from the RGB values according to mask value provided by
13838         the server on connection.  Some of the image-handling code was already
13839         doing this.
13841         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
13842         lookup_rgb_color.
13843         (x_mutable_colormap): New function.
13844         * src/image.c (lookup_rgb_color): Move pixel composition code to
13845         x_make_truecolor_pixel.
13846         (x_kill_gs_process): Call x_mutable_colormap.
13847         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
13848         x_mutable_colormap.
13849         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
13850         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
13851         pixel value into RGB values directly, and don't send a request to the
13852         server.
13853         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
13854         value with x_make_truecolor_pixel.
13855         (x_copy_color): For an immutable color map, just return the provided
13856         pixel value.
13858 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13860         Cache XParseColor results in the X display info structure
13862         With repeated lookups of foreground and background colors for multiple
13863         faces per frame, we issue a lot of redundant color name lookups to the
13864         X server, waiting every time for the response.  On a remote network
13865         with, say, 30ms round-trip time, this can add nearly a full second to
13866         creation of a new frame.
13868         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
13869         * src/image.c (get_spec_bg_or_alpha_as_argb):
13870         (xpm_init_color_cache, xpm_lookup_color):
13871         * src/xfns.c (x_defined_color):
13872         * src/xterm.c (x_parse_color): New function; caches color names not
13873         starting with "#" in the display-info structure.
13874         (x_delete_display): Delete the cache content.
13875         * src/xterm.h (struct color_name_cache_entry): New type.
13876         (x_parse_color): Declare.
13877         (struct x_display_info): Add a new field for the cache.
13879 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
13881         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
13883 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
13885         Fix segfault in image_size_error
13887         * src/image.c (image_size_error): Pass a Lisp string to
13888         image_error, not a C string.  (Bug#21641)
13890 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
13892         Highlight CSS variable definitions
13894         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
13895         CSS variables.  (Bug#21638)
13897 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13899         * test/automated/tabulated-list-test.el: New file.
13900         Test bug#21639 and some basic functionality.
13902 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13904         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
13905         Check if column can be sorted before trying.  (Bug#21639)
13907 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
13909         Add test for `self-insert-command' (bug#21633)
13911         * test/automated/cmds-tests.el: New file.
13913 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
13915         * src/window.c (resize_frame_windows): Don't set root window's
13916         top position when resizing horizontally.
13918 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13920         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
13921         Document more possible values.
13923 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13925         * lisp/textmodes/tex-mode.el: Use lexical-binding.
13927 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13929         * lisp/indent.el (indent--default-inside-comment): New function.
13930         (indent-for-tab-command): Use it for `noindent' indentation.
13932 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
13934         Fix bug in GC_CHECK_MARKED_OBJECTS check
13936         * src/alloc.c (mark_object): Fix bug in checking code.
13937         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
13938         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
13939         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
13940         bucket.  The bug did not affect behavior either in the normal case
13941         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
13942         not have an internal error that a properly-written
13943         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
13945 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
13947         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
13948         Add prettified version for \\Bbb{Q}.
13950 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
13952         * test/automated/package-test.el (package-test-install-single):
13953         Add a test for bug#21625.
13955 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
13957         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
13958           not a package-desc object.  Also clarify documentation.  (Bug#21625)
13960 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
13962         Fix display of characters adjacent to ZWJ and ZWNJ
13964         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
13965         characters the same as directional formatting controls.
13966         (bidi_level_of_next_char): Include all Bn characters in rule L1,
13967         as mandated by the UBA.
13969 2015-10-06  Andreas Schwab  <schwab@suse.de>
13971         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
13972         number.  (Bug#21633)
13974 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
13976         * doc/lispref/objects.texi (Window Type): Add a cross reference.
13978         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
13980 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
13982         * lisp/language/misc-lang.el (composition-function-table):
13983         Fix entries for Arabic and Syriac.
13985 2015-10-05  Damien Cassou  <damien@cassou.me>
13987         Add first unit tests for auth-source.el
13989         * test/automated/auth-source-tests.el: New file.
13991 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
13993         Remove redundant redisplay code
13995         * src/xdisp.c (redisplay_internal, try_cursor_movement)
13996         (try_window_reusing_current_matrix, try_window_id): Remove
13997         redundant restrictions on redisplay optimizations based on the
13998         frame's 'redisplay' flag.  See
13999         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
14000         discussions.
14002 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14004         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
14006 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
14008         Update tutorials/TUTORIAL.cn
14010         * etc/tutorials/TUTORIAL.cn: Improve translation.
14012 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14014         * src/macfont.m (macfont_encode_char, syms_of_macfont):
14015         Remove unused vars.
14017 2015-10-04  Stefan Merten  <stefan@merten-home.de>
14019         Pull in version numbers from rst.el upstream release.
14021         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
14022         (rst-svn-timestamp, rst-official-version)
14023         (rst-official-cvs-rev, rst-package-emacs-version-alist):
14024         Update version numbers.
14026 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
14028         * test/automated/coding-tests.el: New file.
14030 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
14032         Improve XEmacs compatibility of Tramp
14034         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
14035         Declare if it doesn't exist.
14036         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
14037         (redisplay): Make it an alias if it doesn't exist.
14039         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
14040         `file-remote-p' (due to XEmacs compatibility).
14042         * lisp/net/trampver.el (locate-dominating-file)
14043         (tramp-compat-replace-regexp-in-string): Autoload.
14044         (tramp-repository-get-version): Do not dupe byte-compiler.
14046 2015-09-02  K. Handa  <handa@gnu.org>
14048         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
14050         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
14051         Adjusted for the change of type of elements in the array
14052         MFLTGlyphString.glyphs.
14054 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
14055             Michael Heerdegen  <michael_heerdegen@web.de>
14057         shr: fix too long lines in rendered buffers (Bug#21012)
14059         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
14060         Correct calculation of available width.
14061         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
14062         is nil.
14064 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14066         Restore blank line before next section, erroneously erased
14067         in my previous commit
14069         * etc/compilation.txt (symbol ant): Add an additional trailing blank
14070         line to this section, so that there are two of them immediately before
14071         the next section.
14073 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14075         Support MSW filename style for ant compilation error regexp
14077         * etc/compilation.txt (symbol ant):
14078         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
14079         Support MSW filename style.
14081 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
14083         * nt/INSTALL: Minor spelling and quote fixes.
14085         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
14087 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
14089         Maintain ordering of JSON object keys by default
14091         * lisp/json.el (json-object-type): Mention order handling in doc-string.
14092         (json--plist-reverse): New utility function.
14093         (json-read-object): Maintain ordering for alists and plists.
14094         (json-pretty-print): Ensure that ordering is maintained.
14096         * test/automated/json-tests.el (test-json-plist-reverse): New test for
14097         `json--plist-reverse'.
14098         (json-read-simple-alist): Update test to accommodate for changes in
14099         `json-read-object'.
14101         * etc/NEWS: Document the new behavior of the pretty printing functions.
14103 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
14105         * src/coding.c (complement_process_encoding_system): Revert last change.
14107 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
14109         * admin/MAINTAINERS: Add entry for Ulf Jasper.
14111 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
14113         Doc fix for `defmacro'
14115         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
14117 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
14119         More validatation of coding systems
14121         * src/fileio.c (Finsert_file_contents): Remove redundant
14122         coding-system check.
14123         (choose_write_coding_system): Likewise.
14124         * src/coding.c (complement_process_encoding_system): Check argument
14125         for valid coding system.
14127 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
14129         Avoid crashes in coding_inherit_eol_type
14131         * src/coding.c (coding_inherit_eol_type): Check the validity of
14132         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
14133         (Bug#21602)
14135 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
14137         More validatation of coding system in 'write-region'
14139         * src/coding.c (choose_write_coding_system): More validation of
14140         coding-system from various sources.  Suggested by Andreas Schwab
14141         <schwab@linux-m68k.org>.  (Bug#21602)
14143 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
14145         Avoid crashes due to invalid coding-system
14147         * src/fileio.c (choose_write_coding_system)
14148         (Finsert_file_contents): Check validity of coding-system-for-write
14149         and coding-system-for-read bound by the caller.  (Bug#21602)
14151 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
14153         Adapt to new prettify-symbols-unprettify-at-point default
14155         * etc/NEWS: Mention that unprettication of symbol at point is off
14156         by default.
14158 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
14160         Revert my two recent process.c changes
14162         Revert "Improve last commit to process.c" and "Remove callback-handled
14163         channels from Available set" because they did not fix bug#21313.
14165         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
14166         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
14168 2015-10-02  Markus Triska  <triska@metalevel.at>
14170         * lisp/progmodes/prolog.el: Update and extend operator table.
14171         (prolog-smie-grammar): Add multifile, public etc.
14173 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
14175         Allow autogen even when Git is not installed
14177         * autogen.sh: Test ‘git status’ before trying to use Git.
14179 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
14181         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
14182         Adjust lto/lfrom when we have uncommitted changes.
14184 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
14186         Fix problems found by clang 3.5.0
14188         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
14189         * src/font.c (font_parse_family_registry):
14190         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
14192 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
14194         * nt/INSTALL: Update instructions for running autogen.sh.
14196         * nt/INSTALL: Point to ezwinports for libXpm binaries.
14198 2015-10-02  Daniel Colascione  <dancol@dancol.org>
14200         Fix winner in cl-lib not loaded case
14202         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
14203         without requiring CL
14205 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
14207         Fix a few problems with directed quotes
14209         This is in response to a problem report by Kaushal Modi in:
14210         http://bugs.gnu.org/21588#25
14211         * lisp/cedet/mode-local.el (describe-mode-local-overload):
14212         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
14213         * lisp/info-xref.el (info-xref-check-all-custom):
14214         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
14215         Prefer directed to undirected single quotes in diagnostics.
14217 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14219         Revert "Attempt to fix slow redisplay caused by last changes"
14221         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
14222         (try_cursor_movement): Don't relax requirements for redisplay
14223         optimizations for the selected frame.  (Bug#21597)
14225         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
14227 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14229         Fix slow redisplay when daemon frame exists
14231         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
14232         when looking for frames that need to be redisplayed.  (Bug#21597)
14234 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14236         Attempt to fix slow redisplay caused by last changes
14238         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
14239         (try_cursor_movement): Relax requirements for redisplay
14240         optimizations for the selected frame.  (Bug#21597)
14242 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
14244         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
14245         Improve doc string.
14247 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
14249         * lisp/minibuffer.el (minibuffer-completion-help):
14250         Set default base-size, in case completion table does not set it.
14252 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14254         Fix GUD display of GDB output with non-ASCII text
14256         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
14257         (gdb-mi-decode): New function.
14258         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
14259         decode octal escapes in GDB output.  (Bug#21572)
14261 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14263         * nt/INSTALL: Document where to find XPM support files.
14265 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
14267         Un- and re-prettification are not exclusive
14269         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
14270         Re-apply prettification to previous symbol also when unprettifying
14271         next one.
14273 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
14275         Don't unprettify symbol at point by default
14277         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
14278         Default to disabled (nil).
14280 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14282         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
14283         Support unprettifying when point is after a symbol.
14285         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
14287 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
14289         Avoid assertion violations in push_prefix_prop
14291         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
14292         a line that has a line-prefix defined starts with an image.  (Bug#21428)
14294 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
14296         Disable some display optimizations when frames need redisplay
14298         These optimizations were previously disabled by the
14299         windows_or_buffers_changed flag, which now is not set
14300         when only some frames need to be redrawn.
14301         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
14302         'redisplay' flag is set.
14303         (try_window_reusing_current_matrix, try_window_id)
14304         (try_cursor_movement): Disable these optimizations when the
14305         frame's 'redisplay' flag is set.
14307 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
14309         Don't modify buffer by unprettification
14311         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
14312         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
14313         modify buffer when setting/removing custom prettify-symbols-start/end
14314         text properties.  Add them to font-lock-extra-managed-props, too.
14316 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14318         Try to avoid redisplaying all frames when creating a new one
14320         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
14321         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
14322         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
14323         * src/frame.c (x_set_screen_gamma): Set the specific frame's
14324         `redisplay' bit rather than windows_or_buffers_changed.
14326         * src/window.c (apply_window_adjustment): Remove redundant setting of
14327         windows_or_buffers_changed.
14329         * src/xdisp.c (redisplay_internal): Set the specific frame's
14330         `redisplay' bit rather than update_mode_lines in response to
14331         cursor_type_changed.
14332         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
14333         (AINC): Adjust accordingly.
14335 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
14337         Implement unprettification of symbol at point
14339         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
14340         symbol at point.
14341         (prettify-symbols--current-symbol-bounds): New variable.
14342         (prettify-symbols--post-command-hook): New function.
14343         (prettify-symbols-unprettify-at-point): New defcustom.
14344         (prettify-symbols-mode): Use it.
14345         (prettify-symbols--compose-symbol): Use them.
14347 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14349         * src/macfont.m (mac_font_descriptor_supports_languages):
14350         Regard "zh" as synonym of "zh-Hans".
14352 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14354         Work around crash when displaying etc/HELLO on OS X 10.11
14356         * src/macfont.m (mac_font_get_weight)
14357         (mac_font_descriptor_get_adjusted_weight): New functions.
14358         (macfont_store_descriptor_attributes): Adjust weight.
14360 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14362         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
14364 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
14366         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
14367         of the columns.
14369 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
14371         Use unar and lsar to handle RAR archives in arc-mode
14373         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
14374         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
14376 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
14378         Clarify :create in auth-source's docs
14380         * lisp/gnus/auth-source.el (auth-source-search):
14381         Clarify :create's meaning.
14383 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
14385         Avoid empty -path arguments in rgrep
14387         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
14388         the list produced according to grep-find-ignored-directories,
14389         before passing it to Find/Grep invocation.  (Bug#21548)
14391 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
14393         Clarify documentation of pos-visible-in-window-p
14395         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
14396         t for POS.  See
14397         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
14398         for the original report.
14400         * doc/lispref/windows.texi (Window Start and End): Clarify the
14401         meaning of t for the POSITION argument of pos-visible-in-window-p.
14403 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14405         * lisp/progmodes/prolog.el: Fix various indentation cases.
14406         (prolog-operator-chars): New const (add \\).
14407         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
14408         (prolog-smie-rules): Add rules according to bug#21526.
14410 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14412         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
14413         (sh-indent-after-continuation): Add new value `always' (bug#17620)
14414         (sh-smie-sh-rules): Remove old handling of continued lines.
14415         (sh-smie--indent-continuation): New function.
14416         (sh-set-shell): Use it.
14418 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14420         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
14421         Remove redundant :group keyword args.
14422         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
14423         Remove variables.
14424         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
14425         turn them into compile-time variables.
14426         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
14427         Add rules for break, continue, return, global, and persistent.
14428         Refine the rule for "until".
14429         (octave-smie--funcall-p, octave-smie--end-index-p)
14430         (octave-smie--in-parens-p): New functions.
14431         (octave-smie-backward-token, octave-smie-forward-token): Use them to
14432         distinguish the "enumeration" function and the "end" index from
14433         their corresponding keywords.
14434         (octave--block-offset-keywords): New constant.
14435         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
14436         parsing.
14437         (octave-reserved-words): Redefine using octave-smie-grammar.
14438         (octave-font-lock-keywords): Use octave-smie--funcall-p and
14439         octave-smie--end-index-p.
14441 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14443         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
14445 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
14447         * nt/INSTALL: Remove references to GTK site.
14448         That site no longer offers Windows downloads.
14450 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
14452         * nt/INSTALL: Add instructions for installing Git.
14454 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
14456         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
14457         use colors.  Suggested by Eli Zaretskii.
14459 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
14461         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
14462         not supporting 256 above colors (bug#21557).
14464 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
14466         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
14468         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
14470 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
14472         Add documentation for seq.el
14474         * doc/lispref/sequences.texi: Add documentation regarding extending
14475         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
14476         seq-do and seq-map.
14478 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
14480         Better documentation for seq-some
14482         * doc/lispref/sequences.texi:
14483         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
14484         guarantee that the returned value is the first non-nil value that
14485         resulted from applying the predicate.
14487 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
14489         * lisp/arc-mode.el: Sharp-quote function arguments.
14491 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
14493         Avoid redisplay error in ediff-regions-wordwise
14495         * lisp/vc/ediff-util.el
14496         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
14497         set before activating it.  (Bug#21567)
14499 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
14501         Another attempt to fix crashes due to prematurely freed faces
14503         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
14504         faces for as long as we might have desired matrices that reference
14505         those faces.  (Bug#21428)
14507 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
14509         Add auctex development list email address
14511 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
14513         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
14515 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
14517         Improve wrapfig package support and caption parsing
14519         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
14520         Correct description string and add wraptable environment.
14521         (reftex-default-context-regexps): Improve caption regexp.
14523 2015-09-28  Anders Lindgren  <andlind@gmail.com>
14525         Respect value of frame_resize_pixelwise when handling fullscreen state
14527         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
14528         setting size increments.
14530 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
14532         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
14534 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
14536         Add prettify-symbols-alist for js-mode
14538         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
14539         (js-mode): Use it.
14541 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
14543         * nt/subdirs.el: File deleted (no longer used).
14545 2015-09-26  Alan Mackenzie  <acm@muc.de>
14547         Fix follow-scroll-up/down, making them replacements for scroll-up/down
14549         1. Allow point to move between follow windows in scroll operations.
14550         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
14551         when EOB was isolated in the last follow window.
14553         * lisp/follow.el (follow-fixed-window): New variable.
14554         (follow-get-scrolled-point): New function.
14555         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
14556         Reformulate the code.  Put `scroll-command' properties on the functions.
14557         Correct minor errors in ...-down's doc string and code.
14558         (follow-calc-win-end): Amend incomplete doc string.  Use
14559         `pos-visible-in-window-p' to check whether EOB is in the window.
14560         (follow-estimate-first-window-start): Correct an off-by-1 error.
14561         (follow-adjust-window): Add handling for explicit scrolling operations.
14563 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
14565         * admin/MAINTAINERS: Add self, plus list some more files
14566         sans maintaners.
14568 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
14570         New DWIM commands for changing letter-case
14572         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
14573         New functions.  (Bug#21501)
14575 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
14577         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
14579 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
14581         Make face realization be more frame-specific
14583         * src/frame.h (struct f): New flag face_change.
14584         * src/xfaces.c (Finternal_make_lisp_face)
14585         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
14586         (update_face_from_frame_parameter): Set the face_change flag only
14587         for the frame whose faces are affected.
14588         * src/xdisp.c (init_iterator): If a frame's face_change flag is
14589         set, free faces only on that frame.
14590         (redisplay_internal): Disable "display optimization 1" if the
14591         frame's face_change flag is set.
14592         (redisplay_window): Don't allow skipping a window's redisplay if
14593         its frame's face_change flag is set.
14594         * src/frame.c (x_set_screen_gamma): Instead of calling
14595         Fclear_face_cache, call clear_face_cache and set
14596         windows_or_buffers_changed to a non-zero value.  This avoids
14597         setting the global face_change flag that triggers face realization
14598         on all frames and thorough redisplay of all of them.
14600         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
14601         clear face cache if the selected frame is a GUI frame.
14603 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
14605         Remove font-latex specific check
14607         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
14608         Use syntax-ppss data to identify verbatim contents.
14610 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
14612         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
14613         Fix some false negatives.
14615 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14617         Reorder Windows version in Emacs manifests
14619         * nt/emacs-x64.manifest:
14620         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
14621         highest.
14623 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14625         Update Emacs manifest files for Windows 10
14627         * nt/emacs-x86.manifest:
14628         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
14630 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14632         Avoid non-ASCII decoding errors in C src files
14634         * src/nsterm.m:
14635         * src/lisp.h:
14636         * src/editfns.c:
14637         * src/doprnt.c: Add 'coding' cookies -- these files include
14638         Unicode characters and should be decoded as UTF-8.
14640 2015-09-25  Alan Mackenzie  <acm@muc.de>
14642         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
14644         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
14645         amend to match current modes and functions.
14646         (edebug-set-initial-mode): Uncomment and change from setting a defun's
14647         `edebug-initial-mode''s property to setting the variable
14648         `edebug-initial-mode'.
14649         (top level): Create new binding C-x C-a C-m for
14650         `edebug-set-initial-mode'.
14652         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
14653         `edebug-set-initial-mode' and its new key binding.
14654         (Edebug Options): Mention the new command in the pertinent place.
14656         * etc/NEWS: Write entry for this change.
14658 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14660         Avoid non-ASCII decoding errors in Texinfo files
14662         * doc/misc/tramp.texi:
14663         * doc/lispref/strings.texi:
14664         * doc/lispref/positions.texi:
14665         * doc/lispref/help.texi:
14666         * doc/lispref/functions.texi:
14667         * doc/lispintro/emacs-lisp-intro.texi:
14668         * doc/emacs/text.texi:
14669         * doc/emacs/modes.texi:
14670         * doc/emacs/mini.texi:
14671         * doc/emacs/display.texi:
14672         * doc/emacs/custom.texi:
14673         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
14674         Unicode characters and should be decoded as UTF-8.
14675         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
14676         apostrophe unnecessarily.
14678 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
14680         Merge from gnulib
14682         This incorporates:
14683         2015-09-25 c-ctype: rewrite to use inline functions
14684         2015-09-24 maint: add coding cookies to non-ASCII sources
14685         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
14686         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
14687         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
14688         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
14689         * lib/set-permissions.c:
14690         Copy from gnulib.
14692 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
14694         Update publicsuffix.txt from upstream
14696         * etc/publicsuffix.txt: Update from
14697         https://publicsuffix.org/list/effective_tld_names.dat
14698         dated 2015-09-24 17:29:21 UTC.
14700 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
14702         Prevent timers from messing up TTY menus
14704         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
14705         the TTY menu is open.  (Bug#21530)
14707 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
14709         No need to mention K&R C in c-mode intro
14711 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
14713         Fix recent bootstrap problems
14715         * src/syntax.c (parse_sexp_propertize): Fix last fix.
14716         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
14717         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
14719 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
14721         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
14723 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
14725         Properly quote nested xml comments (Bug#6267) (Bug#20001)
14727         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
14728         (nxml-mode): Set comment-quote-nested-function.
14730 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
14732         Allow major-modes full control over quoting nested comments
14734         * lisp/newcomment.el (comment-quote-nested-function): New variable.
14735         (comment-quote-nested-default): New function.
14736         (comment-quote-nested): Use `comment-quote-nested-function'.
14738 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
14740         Prefer CALLN in a few more places
14742         * src/macfont.m (macfont_set_family_cache):
14743         * src/nsterm.m (append2):
14744         * src/xterm.c (x_cr_export_frames):
14745         Prefer CALLN to allocating the arg arrays by hand.
14747 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
14749         Adapt file-notify-test02-events test case
14751         * test/automated/file-notify-tests.el (file-notify-test02-events):
14752         Create a new watch for every test.
14754 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
14756         Continue gfilenotify.c implementation of missing parts
14758         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
14759         `gfile-add-watch' call.
14760         (file-notify-rm-watch): Modify `file-notify-descriptors' only
14761         after calling the low level functions.
14763         * src/gfilenotify.c (dir_monitor_callback): Check, whether
14764         event_type is expected.
14765         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
14766         (Fgfile_rm_watch): Fix typo.
14767         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
14769 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14771         * src/syntax.c (parse_sexp_propertize): Handle spurious
14772         e_property_truncated flag.
14773         (update_syntax_table_forward): Remove invalid assertion.
14775 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
14777         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
14778         space display spec on text-mode terminals, by calling
14779         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
14780         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
14781         test for a GUI frame.
14783 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
14785         Move let-when-compile to lisp-mode.el
14787         This fixes the bootstrapping problem of `let-when-compile' using
14788         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
14790 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14792         * lisp/url/url-http.el (url-http-parse-headers): Do not
14793         automatically include Authorization header in redirect.
14794         (Bug#21350)
14796 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
14798         Clarify documentation of ':relative-width'
14800         * doc/lispref/display.texi (Specified Space): Document that
14801         ':relative-width' is only supported on GUI frames.
14803 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
14805         Fix 'current-column' in presence of :relative-width
14807         * src/indent.c (check_display_width): Support ':relative-width'
14808         in a display spec that specifies a stretch glyph.  (Bug#21533)
14810 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
14812         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
14814         ... to conform better to CONTRIBUTE guidelines.
14816 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
14818         * lisp/progmodes/prolog.el: Fix indentation of empty line
14820         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
14821         `empty-line-token' element.
14822         (smie-indent-empty-line): New function.
14823         (smie-indent-functions): Add it.
14825         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
14826         behavior and use the new `empty-line-token' element (bug#21526).
14827         (prolog-mode-variables): Fix comment-start-skip setting to match
14828         comment-start.
14830         * test/indent/prolog.prolog: Add nested indentation tests.
14832         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
14833         comment-start-skip not to misuse submatch 1.
14835 2015-09-22  Alan Mackenzie  <acm@muc.de>
14837         Make description of `edebug-initial-mode' user friendly
14839         Fixes bug#21365.
14841         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
14842         description of `edebug-initial-mode' from that of its implementation
14843         to that of its visual effect and use.  Move the paragraph higher up.
14845 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
14847         lisp/progmodes/gud.el (gud-format-command): Fix last commit
14849         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
14850         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
14852 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
14854         Improve last commit to process.c
14856 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
14858         Implement gfile-valid-p
14860         * lisp/filenotify.el (file-notify-callback): Fix typo.
14861         (gfile-valid-p): Remove defalias.
14863         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
14864         the file or directory to be watched is deleted.
14865         (Fgfile_add_watch): Make watch_object a triple.
14866         (Fgfile_rm_watch): Check, whether watch is cancelled already.
14867         (Fgfile_valid_p): New defun.
14868         (syms_of_gfilenotify): Declare Sgfile_valid_p.
14870 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
14872         Remove callback-handled channels from Available set
14874         * src/process.c (wait_reading_process_output): Remove channel from
14875         Available set if it is handled by a callback, e.g., dbus or
14876         inotify (bug#21313).
14878 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
14880         Use lunate epsilon for TeX \epsilon
14882         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
14883         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
14884         \epsilon to use GREEK LUNATE EPSILON SYMBOL
14886 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
14888         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
14890         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
14891         rather than outermost paren (bug#21526).
14893 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
14895         Improve git diff hunk headers for .el, .texi
14897         Problem reported by Alan Mackenzie in:
14898         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
14899         * .gitattributes (*.el, *.texi): New patterns.
14900         * autogen.sh: Configure diff.elisp.xfuncname and
14901         diff.texinfo.xfuncname if using Git.
14903 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
14905         Don't rely on defaults in decoding UTF-8 encoded Lisp files
14907         * lisp/replace.el:
14908         * lisp/textmodes/rst.el:
14909         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
14911 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
14913         Clarify or replace a few \u escapes
14915         * doc/lispref/nonascii.texi (Character Properties)
14916         More-detailed commentary for \u escapes.
14917         * lisp/progmodes/python.el (python--prettify-symbols-alist):
14918         * lisp/replace.el (query-replace-from-to-separator):
14919         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
14920         (rst-mode-syntax-table):
14921         * lisp/whitespace.el (whitespace-display-mappings):
14922         Prefer actual character to \u escape when this makes the code
14923         easier to follow in the usual case where Unicode chars can be
14924         displayed.
14926 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
14928         Pacify GCC -Wmaybe-uninitialized in xdisp.c
14930         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
14931         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
14932         charpos.  The loop should always execute at least once anyway.
14934 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
14936         Signal error on invalid regexp
14938         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
14939         Signal an error when the user tries searching with a regexp
14940         matching the empty string.
14942 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
14944         Another fix of file-notify-tests for w32notify
14946         * test/automated/file-notify-tests.el (file-notify-test02-events):
14947         Further adaptation for w32notify: reduce the number of expected
14948         'changed' events.  (Bug#21435)
14950 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
14952         Adapt tests and manual for w32notify
14954         * doc/lispref/os.texi (File Notifications): w32notify does not
14955         send `attribute-changed' events.
14957         * test/automated/file-notify-tests.el (file-notify--test-with-events):
14958         Simplify parameters.  Adapt all callees.
14959         (file-notify-test02-events): w32notify does not send
14960         `attribute-changed' events.
14961         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
14962         Do not skip in case of w32notify.  Simply ignore this part of the test.
14964 2015-09-21  Dima Kogan  <dima@secretsauce.net>
14966         Fix setting breakpoints when remote-debugging
14968         * lisp/progmodes/gud.el (gud-format-command): Send localized file
14969         names to the debugger running on the remote.  (Bug#13304)
14971 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
14973         Better docstring and parameter name for seq-find
14975         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
14976         the parameter `sentinel' to `default'.
14978         * doc/lispref/sequences.texi (Sequence Functions): Update the
14979           documentation for `seq-find' accordingly.
14981 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
14983         Avoid infinite recursion while displaying box face
14985         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
14986         the previous string/buffer character position under bidi
14987         iteration.  (Bug#21428)
14989 2015-09-21  Anders Lindgren  <andlind@gmail.com>
14991         Keep upper edge unchanged when changing size of NS frame
14993         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
14994         (Bug#21415).
14996 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
14998         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
14999         (prolog-smie-rules): Accommodate standard if/then/else special
15000         indentation.
15001         (prolog-mode): Add . to electric-indent-chars.
15002         (prolog-electric--if-then-else): Re-indent the line before adding space
15003         after the new char (bug#21526).
15005 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
15007         Add prettify symbols to python-mode
15009         * lisp/progmodes/python.el (python-prettify-symbols-alist):
15010         New variable.
15011         (python-mode): Use it
15013 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15015         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
15017 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
15019         (compilation-error-regexp-alist-alist): Tone down guile-file
15021         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
15022         Make guile-file a bit less enthusiastic (bug#21496).
15024 2015-09-20  Drew Csillag  <drew@thecsillags.com>
15026         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
15027         Fix m4_* highlighting.
15029         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
15030         of commands when they have a "m4_" prefix.
15032 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
15034         '.' -> `.' in doc string
15036         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
15037         individual chars with grave quotes instead of straight quotes, as
15038         this works better when they are translated to curved quotes.
15040 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
15042         Improve file notifications, especially for Tramp
15044         * doc/lispref/files.texi (Magic File Names):
15045         Mention `file-notify-valid-p'.
15047         * doc/lispref/os.texi (File Notifications):
15048         Describe `file-notify-valid-p'.
15050         * etc/NEWS: Add `file-notify-valid-p'.
15052         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
15053         Improve implementation.
15054         (tramp-gvfs-monitor-file-process-filter): Rename from
15055         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
15056         process if appropriate.
15058         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
15059         Improve implementation.
15060         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
15061         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
15062         if appropriate.
15063         (tramp-sh-inotifywait-process-filter): Rename from
15064         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
15065         appropriate.
15067         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
15068         Use `delete-process'.
15069         (tramp-handle-file-notify-valid-p): Check also, that file or
15070         directory to be watched still exists.
15072         * test/automated/file-notify-tests.el (file-notify--test-timeout):
15073         New defun.  Use it at all places a timeout is needed.
15074         (file-notify--test-cleanup): Delete directories recursively.
15075         Cleanup also Tramp connections.
15076         (file-notify-test02-events): Add tests for `attribute-change'.
15077         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
15078         Add tests for `file-notify-rm-watch'.
15080 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
15082         Use %s to format strings instead of splicing them
15084         If FOO might contain quotes that are part of a file or variable
15085         name, the quotes should not be translated when showing FOO’s name
15086         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
15087         is not quite right, as it would translate FOO’s quotes.
15088         Change it to (message "%s: bar" FOO) instead.
15089         * lisp/allout.el (allout-process-exposed):
15090         * lisp/calc/calc-ext.el (calc-do-prefix-help):
15091         * lisp/calc/calc-store.el (calc-store-into):
15092         * lisp/calendar/todo-mode.el (todo-category-completions):
15093         * lisp/cedet/semantic/complete.el (semantic-completion-message):
15094         * lisp/org/ob-latex.el (convert-pdf):
15095         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
15096         * lisp/org/ox-latex.el (org-latex-compile):
15097         * lisp/org/ox-man.el (org-man-compile):
15098         * lisp/org/ox-odt.el (org-odt--export-wrap):
15099         * lisp/org/ox-texinfo.el (org-texinfo-compile):
15100         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
15101         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
15102         (verilog-signals-combine-bus, verilog-read-defines)
15103         (verilog-getopt-file, verilog-expand-dirnames)
15104         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
15105         * lisp/term/ns-win.el (ns-spi-service-call):
15106         Use %s to avoid translating quotes of file names etc. in diagnostics.
15108 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15110         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
15111         (js-mode): Don't set syntax-begin-function.
15113 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15115         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
15116         syntax-begin-function is a symbol.
15118 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
15120         Improve documentation of 'run-at-time'
15121         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
15122         In particular, don't refer to 'diary-entry-time', because it is
15123         unavailable until diary-lib is loaded.  Also, refer to
15124         'timer-duration-words', not 'timer-duration', as the latter's doc
15125         string says nothing about the accepted strings.
15127 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
15129         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
15131 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
15133         Repair pdbtrack remote file tracking
15134         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
15135         Rectify pdbtrack so it follows transitions from one remote source
15136         file to the next.
15138 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
15140         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
15142 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
15144         Adapt vc-src to the old-new vc-checkin API
15145         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
15146         additional optional parameter.
15148 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
15150         Add overflow module to CSS property list
15151         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
15152         from CSS Overflow Module Level 3.
15154 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
15156         Fix documentation of "C-u C-x v v"
15157         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
15158         documentation of "C-u C-x v v" match what the code does.
15160         Resurrect the ability to specify a revision in vc-next-action
15161         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
15162         * lisp/vc/vc-dav.el (vc-dav-checkin):
15163         * lisp/vc/vc-git.el (vc-git-checkin):
15164         * lisp/vc/vc-hg.el (vc-hg-checkin):
15165         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
15166         an additional optional argument, the revision to checkin.
15167         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
15168         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
15169         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
15170         a revision to checkin.
15171         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
15172         revision when checking in files.
15173         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
15174         for the details.
15176 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
15178         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
15179         (verilog-decls-princ, verilog-modport-princ)
15180         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
15182 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
15184         Fix the routine for help on Calc's prefixes
15185         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
15186         (calc-do-prefix-help): Use `read-char' to determine the next Calc
15187         command.
15189 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
15191         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
15192         (font-lock-fontify-block): Don't let-bind it.
15193         (font-lock-compile-keywords): Don't use it.
15194         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
15195         start one slot earlier, instead.
15196         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
15197         Don't declare.
15198         (syntax-ppss): Don't use it either.
15199         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
15200         from docstring.
15201         * doc/emacs/display.texi (Font Lock): Don't mention
15202         font-lock-beginning-of-syntax-function.
15203         * doc/lispref/modes.texi (Font Lock Basics): Update description of
15204         font-lock-defaults.
15205         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
15206         * lisp/loadhist.el (unload-feature-special-hooks):
15207         Remove font-lock-beginning-of-syntax-function.
15208         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
15209         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
15210         font-lock-beginning-of-syntax-function.
15212 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
15214         Backslash cleanup in Elisp source files
15215         This patch should not change behavior.  It typically omits backslashes
15216         where they are redundant (e.g., in the string literal "^\$").
15217         In a few places, insert backslashes where they make regular
15218         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
15219         "^\\*", which has the same effect as a regular expression.
15220         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
15221         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
15222         RCS IDs, as that makes it clearer that the backslash is intended.
15224         Some more minor backslash fixes
15225         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
15226         * test/automated/info-xref.el (info-xref-test-write-file):
15227         Double backslashes in strings.
15229         Fix several backslash typos in Elisp strings
15230         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
15231         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
15232         (todo-reset-done-string, todo-reset-comment-string)
15233         (todo-reset-highlight-item):
15234         * lisp/erc/erc-networks.el (erc-networks-alist):
15235         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
15236         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
15237         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
15238         (nntp-telnet-shell-prompt):
15239         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
15240         * lisp/image-dired.el (image-dired-rotate-original):
15241         (image-dired-get-exif-file-name):
15242         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
15243         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
15244         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
15245         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
15246         * lisp/net/shr-color.el (shr-color->hexadecimal):
15247         * lisp/org/org-bibtex.el (org-bibtex-fields):
15248         * lisp/org/org-docview.el (org-docview-export):
15249         * lisp/org/org-entities.el (org-entities):
15250         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
15251         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
15252         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
15253         (ebnf-style-database):
15254         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
15255         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
15256         * lisp/progmodes/sql.el (sql-product-alist):
15257         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
15258         (verilog-error-font-lock-keywords)
15259         (verilog-assignment-operator-re):
15260         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
15261         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
15262         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
15263         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
15264         For example, to get the regular expression ‘\.’ use the string
15265         literal "\\.", not "\." (which is equivalent to ".").
15266         * lisp/emulation/viper-util.el (viper-glob-unix-files):
15267         Remove stray ‘\j’ from string.
15268         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
15269         (nntp-telnet-shell-prompt):
15270         Treat > like $ when matching a shell prompt.
15271         * lisp/progmodes/make-mode.el (makefile-browse):
15272         Properly quote a diagnostic.
15274         Fix minor quoting problems in diagnostics
15275         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
15276         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
15277         Follow text-quoting-style in diagnostic, and quote a file name.
15279 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
15281         * doc/lispref/frames.texi (Cursor Parameters):
15282         Document 'x-stretch-cursor'.
15284 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
15286         Omit unnecessary \ before paren in C docstrings
15287         Although \( is needed in docstrings in Elisp code, it is not needed in
15288         docstrings in C code, since C function definitiions do not start with
15289         a parenthesis.  The backslashes made the docstrings a bit harder to
15290         read and to format in columns.  Also, some C docstrings had ( in
15291         column 1 and this did not appear to be causing any problems.  So,
15292         simplify C docstrings by replacing \( with ( and \) with ).
15294         A few more minor quoting fixes in a script and a text file
15296         Minor quoting fixes in scripts and doc
15297         Prefer straight quotes in random script files, as they are not
15298         converted.  Prefer grave quotes in a couple of places in the manual
15299         that were missed earlier, as these quotes are converted.
15301         Minor backslash fixes in manuals and scripts
15302         * Makefile.in (install-arch-indep):
15303         * admin/charsets/compact.awk:
15304         * admin/charsets/gb180302.awk (gb_to_index):
15305         * admin/charsets/gb180304.awk (gb_to_index):
15306         Avoid undefined behavior in Awk regular expression backslashes.
15307         * doc/misc/efaq.texi (Matching parentheses):
15308         Omit unnecessary backslashes.
15309         * doc/misc/gnus-faq.texi (FAQ 5-8):
15310         Avoid undefined behavior in suggested sed backslash usage.
15312         Add -Wswitch to --enable-gcc-warnings
15313         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
15314         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
15315         * lib-src/etags.c (main, consider_token, C_entries):
15316         * src/coding.c (encode_invocation_designation):
15317         * src/data.c (Ftype_of):
15318         * src/eval.c (Fdefvaralias, default_toplevel_binding)
15319         (Fbacktrace__locals, mark_specpdl):
15320         * src/lisp.h (record_xmalloc):
15321         * src/syntax.c (scan_lists, scan_sexps_forward):
15322         * src/window.c (window_relative_x_coord):
15323         * src/xdisp.c (push_it, pop_it):
15324         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
15325         Error out or do nothing (as appropriate) if a switch statement
15326         with an enum value does not cover all of the enum.
15327         * src/dispextern.h (struct iterator_stack_entry.u.comp):
15328         Remove unused member discovered by using -Wswitch.
15329         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
15330         * src/vm-limit.c (check_memory_limits):
15331         Simplify warning-diagnostic computation by using a table.
15333         etags ‘fatal’ function is now printf-like
15334         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
15335         Also, now static; not clear why it needed to be extern.
15336         (verror): New function, with most of the old contents of ‘error’.
15337         (fatal, error): Use it.
15339 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
15341         More adaptations in file-notify-tests.el
15342         * test/automated/file-notify-tests.el
15343         (file-notify-test05-dir-validity): Skip for w32notify in
15344         batch-mode.  (Bug#21432)
15346 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
15348         Adapt test in file-notify-tests.el
15349         * test/automated/file-notify-tests.el
15350         (file-notify-test04-file-validity): Skip for w32notify in
15351         batch-mode.  Add test lost last commit.
15353 2015-09-16  Dima Kogan  <dima@secretsauce.net>
15355         winner no longer holds on to dead frames
15356         * lisp/winner.el (winner-change-fun): Cull dead frames.
15357         This prevents a potentially massive memory leak.  See:
15358         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
15360 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
15362         Use common report_file_notify_error function
15363         * src/fileio.c (report_file_notify_error): New function.
15364         * src/inotify.c (report_inotify_error): Remove function.
15365         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
15366         (Finotify_rm_watch): Use report_file_notify_error.
15367         * src/lisp.h (report_file_notify_error): Declare external function.
15368         * src/w32notify.c (report_w32notify_error): Remove function.
15369         (Fw32notify_add_watch, Fw32notify_rm_watch):
15370         Use report_file_notify_error.
15372 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
15374         Fix documentation.
15375         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
15376         the documentation of the root mean square.
15378 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
15380         Remove tool_bar_redisplayed_once and associated code.
15381         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
15382         * src/frame.c (make_frame, x_set_font): Remove initialization of
15383         f->tool_bar_redisplayed_once.
15384         * src/w32fns.c (x_change_tool_bar_height):
15385         * src/xfns.c (x_change_tool_bar_height): Don't check for
15386         f->tool_bar_redisplayed_once.
15387         * src/xdisp.c (redisplay_internal): Remove handling of
15388         f->tool_bar_redisplayed_once.
15390 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
15392         Restore some of the quoting in the manuals
15393         * doc/lispref/windows.texi (Coordinates and Windows)
15394         (Coordinates and Windows):
15395         * doc/lispref/variables.texi (Lexical Binding)
15396         (File Local Variables):
15397         * doc/lispref/text.texi (Format Properties):
15398         * doc/lispref/symbols.texi (Symbol Components):
15399         * doc/lispref/strings.texi (Creating Strings):
15400         * doc/lispref/sequences.texi (Sequence Functions):
15401         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
15402         (Search and Replace):
15403         * doc/lispref/processes.texi (Bindat Spec):
15404         * doc/lispref/os.texi (Idle Timers):
15405         * doc/lispref/objects.texi (Basic Char Syntax):
15406         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
15407         * doc/lispref/nonascii.texi (Character Properties):
15408         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
15409         (Mode Line Variables):
15410         * doc/lispref/minibuf.texi (Text from Minibuffer):
15411         * doc/lispref/loading.texi (Autoload):
15412         * doc/lispref/keymaps.texi (Controlling Active Maps):
15413         * doc/lispref/frames.texi (Frame Layout, Size and Position)
15414         (Size Parameters, Implied Frame Resizing):
15415         * doc/lispref/files.texi (Changing Files, Magic File Names):
15416         * doc/lispref/eval.texi (Self-Evaluating Forms):
15417         * doc/lispref/display.texi (Progress, Abstract Display)
15418         (Abstract Display Example, Bidirectional Display):
15419         * doc/lispref/commands.texi (Event Mod):
15420         * doc/emacs/windows.texi (Displaying Buffers):
15421         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
15422         * doc/emacs/text.texi (Enriched Text):
15423         * doc/emacs/programs.texi (MixedCase Words):
15424         * doc/emacs/picture-xtra.texi (Insert in Picture)
15425         (Tabs in Picture):
15426         * doc/emacs/misc.texi (Emacs Server, Printing):
15427         * doc/emacs/mini.texi (Minibuffer History):
15428         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
15429         (Pulling / Pushing):
15430         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
15431         * doc/emacs/help.texi (Help, Help Echo):
15432         * doc/emacs/glossary.texi (Glossary):
15433         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
15434         (Frame Commands):
15435         * doc/emacs/files.texi (Reverting, Saving, Directories):
15436         * doc/emacs/entering.texi (Exiting):
15437         * doc/emacs/emacs.texi (Top):
15438         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
15439         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
15440         appropriate or replace quoting with @dfn.
15441         * doc/misc/ediff.texi (Window and Frame Configuration):
15442         * doc/lispref/processes.texi (Network Feature Testing):
15443         * doc/lispref/display.texi (Display Margins): Quote the phrase
15444         after "a.k.a." where appropriate.
15446 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
15448         Clarify reftex-extra-bindings docs
15449         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
15450         * doc/misc/reftex.texi (Key Bindings): Document that the variable
15451         only has an effect at load-time.
15453 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
15455         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
15456         search argument.  (Bug#21492) (Bug#21493)
15458 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
15460         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15461         Add pretty symbols for \qquad and \varrho.
15463 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
15465         Add new functions for the root mean square of a (Calc) vector
15466         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
15467         New functions.
15468         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
15469         `calc-vector-rms', add autoloads for `calc-vector-rms' and
15470         `calcFunc-rms'.
15471         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
15472         `calcFunc-rms'.
15473         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
15474         `calc-vector-rms'.
15475         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
15476         command.
15478 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
15480         Add monotone EDE generic project
15481         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
15482         Add monotone generic project.
15484         Revert premature commit
15485         * doc/lispref/files.texi: Revert premature commit of change to
15486         file-name-all-completions.
15488         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
15489         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
15490         with cl-generic defaults.
15491         (elisp--xref-find-references): Add doc string.
15492         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
15493         tests to find bug.
15495         Fix bugs in eieio-oref-default related to class symbols
15496         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
15497         (eieio-oref-default): Handle class properly.
15499 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15501         Quote “fullboth” when defining it
15502         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
15503         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
15505 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
15507         Minor doc fix in emacs/ack.texi
15508         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
15509         first argument.
15511 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
15513         Adapt tests in auto-revert-tests.el
15514         * test/automated/auto-revert-tests.el (auto-revert--timeout):
15515         Make it a defconst.
15516         (auto-revert--wait-for-revert): New defun.
15517         (auto-revert-test00-auto-revert-mode)
15518         (auto-revert-test01-auto-revert-tail-mode)
15519         (auto-revert-test02-auto-revert-mode-dired): Use it.
15521 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15523         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
15524         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
15525         (cl-lib-fdefs): Add defgeneric.
15526         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
15527         (eieio-kw, cl-lib-kw, el-kw): Remove.
15529 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15531         Quote less in manuals
15532         The manuals often used quotes ``...'' when it is better to use @dfn or
15533         @code or capitalized words or no quoting at all.  For example, there is
15534         no need for the `` and '' in “if a variable has one effect for
15535         @code{nil} values and another effect for ``non-@code{nil}'' values”.
15536         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
15537         unnecessary quoting like this, and to use @dfn etc. instead when called
15538         for (Bug#21472).
15540 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
15542         * lisp/custom.el (load-theme): Only compute hash when needed.
15544 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15546         Pacify --enable-gcc-warnings
15547         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
15549 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
15551         Improve error reports in inotify.c
15552         * src/inotify.c (report_inotify_error): New function.  Clone of
15553         report_w32notify_error.
15554         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
15555         (Finotify_rm_watch): Use it.
15557 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
15559         Fix the file-notify tests for watch validation on w32
15560         * test/automated/file-notify-tests.el
15561         (file-notify-test04-file-validity): Move the directory deletion
15562         out of the file-notify--test-with-events macro.
15563         (file-notify-test04-file-validity)
15564         (file-notify-test05-dir-validity): Enlarge the timeout of
15565         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
15567 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
15569         Use OPEN BOX instead of space for \quad.
15570         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
15571         character for \quad instead of a space.
15573 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
15575         Add missing *.pbm images
15576         * etc/images/connect.pbm: New file.
15577         * etc/images/custom/down-pushed.pbm: New file.
15578         * etc/images/custom/down.pbm: New file.
15579         * etc/images/custom/right-pushed.pbm: New file.
15580         * etc/images/custom/right.pbm: New file.
15581         * etc/images/describe.pbm: New file.
15582         * etc/images/disconnect.pbm: New file.
15583         * etc/images/ezimage/bits.pbm: New file.
15584         * etc/images/ezimage/bitsbang.pbm: New file.
15585         * etc/images/ezimage/box-minus.pbm: New file.
15586         * etc/images/ezimage/box-plus.pbm: New file.
15587         * etc/images/ezimage/box.pbm: New file.
15588         * etc/images/ezimage/checkmark.pbm: New file.
15589         * etc/images/ezimage/dir-minus.pbm: New file.
15590         * etc/images/ezimage/dir-plus.pbm: New file.
15591         * etc/images/ezimage/dir.pbm: New file.
15592         * etc/images/ezimage/doc-minus.pbm: New file.
15593         * etc/images/ezimage/doc-plus.pbm: New file.
15594         * etc/images/ezimage/doc.pbm: New file.
15595         * etc/images/ezimage/info.pbm: New file.
15596         * etc/images/ezimage/key.pbm: New file.
15597         * etc/images/ezimage/label.pbm: New file.
15598         * etc/images/ezimage/lock.pbm: New file.
15599         * etc/images/ezimage/mail.pbm: New file.
15600         * etc/images/ezimage/page-minus.pbm: New file.
15601         * etc/images/ezimage/page-plus.pbm: New file.
15602         * etc/images/ezimage/page.pbm: New file.
15603         * etc/images/ezimage/tag-gt.pbm: New file.
15604         * etc/images/ezimage/tag-minus.pbm: New file.
15605         * etc/images/ezimage/tag-plus.pbm: New file.
15606         * etc/images/ezimage/tag-type.pbm: New file.
15607         * etc/images/ezimage/tag-v.pbm: New file.
15608         * etc/images/ezimage/tag.pbm: New file.
15609         * etc/images/ezimage/unlock.pbm: New file.
15610         * etc/images/gnus/important.pbm: New file.
15611         * etc/images/gnus/mail-send.pbm: New file.
15612         * etc/images/gnus/receipt.pbm: New file.
15613         * etc/images/gnus/toggle-subscription.pbm: New file.
15614         * etc/images/gnus/unimportant.pbm: New file.
15615         * etc/images/gud/all.pbm: New file.
15616         * etc/images/gud/rcont.pbm: New file.
15617         * etc/images/gud/recstart.pbm: New file.
15618         * etc/images/gud/recstop.pbm: New file.
15619         * etc/images/gud/rfinish.pbm: New file.
15620         * etc/images/gud/rnext.pbm: New file.
15621         * etc/images/gud/rnexti.pbm: New file.
15622         * etc/images/gud/rstep.pbm: New file.
15623         * etc/images/gud/rstepi.pbm: New file.
15624         * etc/images/gud/thread.pbm: New file.
15625         * etc/images/lock-broken.pbm: New file.
15626         * etc/images/lock-ok.pbm: New file.
15627         * etc/images/lock.pbm: New file.
15628         * etc/images/mail/copy.pbm: New file.
15629         * etc/images/mail/forward.pbm: New file.
15630         * etc/images/mail/not-spam.pbm: New file.
15631         * etc/images/mail/outbox.pbm: New file.
15632         * etc/images/mail/preview.pbm: New file.
15633         * etc/images/mail/save-draft.pbm: New file.
15634         * etc/images/mh-logo.pbm: New file.
15635         * etc/images/mpc/add.pbm: New file.
15636         * etc/images/mpc/ffwd.pbm: New file.
15637         * etc/images/mpc/next.pbm: New file.
15638         * etc/images/mpc/pause.pbm: New file.
15639         * etc/images/mpc/play.pbm: New file.
15640         * etc/images/mpc/prev.pbm: New file.
15641         * etc/images/mpc/rewind.pbm: New file.
15642         * etc/images/mpc/stop.pbm: New file.
15643         * etc/images/redo.pbm: New file.
15644         * etc/images/smilies/braindamaged.pbm: New file.
15645         * etc/images/smilies/cry.pbm: New file.
15646         * etc/images/smilies/dead.pbm: New file.
15647         * etc/images/smilies/evil.pbm: New file.
15648         * etc/images/smilies/forced.pbm: New file.
15649         * etc/images/smilies/grin.pbm: New file.
15650         * etc/images/smilies/indifferent.pbm: New file.
15651         * etc/images/sort-ascending.pbm: New file.
15652         * etc/images/sort-column-ascending.pbm: New file.
15653         * etc/images/sort-criteria.pbm: New file.
15654         * etc/images/sort-descending.pbm: New file.
15655         * etc/images/sort-row-ascending.pbm: New file.
15656         * etc/images/unchecked.pbm: New file.
15657         * etc/images/zoom-in.pbm: New file.
15658         * etc/images/README: Update instructions for PBM files.
15660         Add separator.pbm tool-bar image
15661         * etc/images/separator.pbm: New file.  Having it avoids the side
15662         effect of changing the tool-bar height when the default font's size
15663         changes and XPM image support is not available, due to the SPC
15664         characters that are left in the Lisp string used to display the tool
15665         bar, because there are no images to display instead of those SPC
15666         characters.
15668         Make show-paren-match face visible on mono-color displays
15669         * lisp/faces.el (show-paren-match): Use the underline face for
15670         mono-color displays.  (Bug#21481)
15672 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
15674         Don’t double-encode non-ASCII mail clipboard
15675         * lisp/mail/mailclient.el (mailclient-send-it):
15676         Also fix the case when mailclient-place-body-on-clipboard-flag
15677         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
15679 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
15681         Adapt file-notify-tests.el test cases
15682         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
15683         * src/inotify.c (Finotify_valid_p): Adapt docstring.
15684         * test/automated/file-notify-tests.el
15685         (file-notify-test03-autorevert)
15686         (file-notify-test04-file-validity)
15687         (file-notify-test04-file-validity-remote)
15688         (file-notify-test05-dir-validity)
15689         (file-notify-test05-dir-validity-remote): Adapt docstring.
15690         (file-notify-test04-file-validity): Let events arrive before
15691         calling final `file-notify-valid-p'.  Do not ignore errors.
15692         (file-notify-test05-dir-validity): Do not manipulate
15693         `temporary-file-directory', it isn't necessary.  Let events arrive
15694         before calling final `file-notify-valid-p'.  Do not ignore errors.
15696 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
15698         Don’t double-encode non-ASCII for mail client
15699         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
15700         Use RFC 6068’s list of unreserved characters.
15701         (mailclient-send-it): When encoding the body as a URL,
15702         first decode it as per Content-Type: and Content-Transfer-Encoding:,
15703         as URLs must use percent-encoded UTF-8 (Bug#21471).
15704         * doc/misc/url.texi (mailto): Update RFC number.
15706 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
15708         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
15710 2015-09-14  Alan Mackenzie  <acm@muc.de>
15712         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
15713         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
15714         `cadr/car'.
15716 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
15718         Clarify documentation of char-table extra slots
15719         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
15720         slot numbers are zero-based.  (Bug#21467)
15722 2015-09-14  Alan Mackenzie  <acm@muc.de>
15724         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
15725         Fixes bug#21449.
15726         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
15727         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
15728         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
15729         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
15730         Insert "\\|\\\\." into regexps which match symbols.
15732 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
15734         Improve the doc string of w32notify-valid-p
15735         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
15736         that removing a watch makes its object invalid.
15738 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
15740         Fix tests for file-notify-valid-p
15741         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
15742         Use delete-directory to delete file-notify--test-tmpfile if it is
15743         a directory.  Likewise for file-notify--test-tmpfile1.
15744         (file-notify-test04-file-validity)
15745         (file-notify-test05-dir-validity): Delete the parent directory of
15746         the test.  Ignore errors when cleaning up after the test.
15748 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
15750         Report file-notify-error in w32notify.c
15751         * src/w32notify.c (report_w32notify_error): New function.
15752         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
15753         errors, instead of calling report_file_error.  (Bug#21432)
15755         Implement w32notify-valid-p
15756         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
15757         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
15758         'identity'.
15760 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
15762         Test file-notify-valid-p
15763         * test/automated/file-notify-tests.el
15764         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
15765         New tests.
15767 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
15769         Fix markup in ELisp manual
15770         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
15771         of the 'alpha' parameter value.  (Bug#21470)
15773 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
15775         Introduce `file-notify-valid-p'
15776         * lisp/filenotify.el (file-notify-valid-p): New defun.
15777         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
15778         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
15779         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
15780         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
15781         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
15782         <file-notify-valid-p>: Add handler.
15783         * lisp/net/tramp.el (tramp-file-name-for-operation):
15784         Add `file-notify-valid-p'.
15785         (tramp-handle-file-notify-valid-p): New defun.
15786         * src/inotify.c (Finotify_valid_p): New defun.
15787         (syms_of_inotify): Declare Sinotify_valid_p.
15789 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
15791         Port Unicode char detection to FreeBSD+svgalib
15792         Problem reported by Ashish SHUKLA in:
15793         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
15794         * configure.ac: Check for struct unipair.unicode instead of for
15795         <linux/kd.h>, since that’s more specific to what the code
15796         actually needs.
15797         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
15799         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
15801 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
15803         Fix vertical cursor motion across overlay strings with newlines
15804         * src/indent.c (Fvertical_motion): Don't leave point in the middle
15805         of an overlay string with newlines, as that will position the
15806         cursor after the string at whatever column is there.  (Bug#21468)
15808 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
15810         Fix tests in file-notify-tests.el
15811         * test/automated/file-notify-tests.el: Remove Tramp declarations.
15812         (file-notify-test00-availability): Print remote command w/o Tramp
15813         internal functions.
15814         (file-notify-test02-events, file-notify-test02-events-remote):
15815         Adapt docstring.
15816         (file-notify-test03-autorevert): Use `format-message' when
15817         inspecting *Messages* buffer.
15819 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
15821         Bind inhibit-modification-hooks rather than a/b-c-f
15822         * lisp/wid-edit.el (widget-editable-list-insert-before)
15823         (widget-editable-list-delete-at):
15824         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
15825         (cperl-font-lock-unfontify-region-function):
15826         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
15827         * lisp/obsolete/longlines.el (longlines-mode):
15828         * lisp/obsolete/fast-lock.el (save-buffer-state):
15829         * lisp/mouse.el (mouse-save-then-kill-delete-region):
15830         * lisp/gnus/message.el (message-hide-headers):
15831         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
15832         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
15833         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
15834         than after/before-change-functions to nil.
15836 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
15838         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
15839         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
15840         the buffers, even if the forced redisplay is interrupted.
15842         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
15844         Merge syntax-propertize--done and parse-sexp-propertize-done
15845         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
15846         (syntax-propertize): Set syntax-propertize--done even if
15847         syntax-propertize-function is nil.  Avoid recursive invocations.
15848         (syntax-propertize-chunks): New var.
15849         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
15850         Simplify.
15851         (parse-sexp-propertize-function): Don't set any more.
15852         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
15853         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
15854         Call Qinternal__syntax_propertize instead of
15855         Vparse_sexp_propertize_function.  Truncate e_property if needed.
15856         (update_syntax_table_forward): Streamline.
15857         (syms_of_syntax): Define Qinternal__syntax_propertize.
15858         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
15860 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
15862         Prefer straight quoting in some text files
15863         Mostly this just changes ` to ' in static text.  Some exceptions:
15864         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
15865         typically does that now.
15866         * admin/quick-install-emacs (TRY, top level):
15867         Use straight quoting in diagnostics.
15868         * src/README: Fix working-directory confusion.
15870         * CONTRIBUTE: Move send-email here from git-workflow.
15872 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
15874         Improve file notifications in Tramp
15875         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
15876         Set proper events to watch for.
15877         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
15878         watched events.
15880 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
15882         Fix NS build with --enable-checking='glyphs'
15883         * src/nsfns.m (unwind_create_frame): Make the preprocessor
15884         conditionals for referencing 'dpyinfo' consistent throughout the
15885         function.  (Bug#21426)
15887 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
15889         Add seq-find
15890         This function is similar to `seq-some' but returns the found element.
15891         In the cases where nil can be the found element, a sentinel optional
15892         argument can be provided to avoid ambiguities.
15893         * lisp/emacs-lisp/seq.el (seq-find): New function.
15894         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
15895         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
15896         seq-find.
15898 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
15900         Document file-notify--test-with-events.
15901         * test/automated/file-notify-tests.el (file-notify--test-with-events):
15902         Add docstring.
15904 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
15906         Report used native library in file-notify-tests.el
15907         * test/automated/file-notify-tests.el
15908         (tramp-get-remote-gvfs-monitor-dir)
15909         (tramp-get-remote-inotifywait): Declare them.
15910         (file-notify-test00-availability): Print used native library.
15912 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
15914         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
15915         (mpc-file-local-copy): Check for absolute path.  Check more config
15916         locations.
15918 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
15920         Improve documentation of categories
15921         * doc/lispref/syntax.texi (Categories): Clarify the example of
15922         using define-category and modify-category-entry.  (Bug#21448)
15924 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
15926         Revert some stray curved quotes I missed earlier
15927         Problem reported by David Kastrup in:
15928         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
15929         * lisp/international/mule-cmds.el (leim-list-header):
15930         Use format-message with an ASCII-only format.
15932         Prefer NUMBERP to spelling it out
15933         * src/editfns.c (styled_format):
15934         * src/frame.h (NUMVAL):
15935         * src/image.c (parse_image_spec):
15936         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
15937         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
15938         * src/process.c (Fsignal_process):
15939         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
15940         * src/xfaces.c (check_lface_attrs):
15941         * src/xselect.c (x_fill_property_data, x_send_client_event):
15942         Use NUMBERP rather than INTEGERP || FLOATP.
15944 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
15946         Improve file-notify-tests
15947         * test/automated/file-notify-tests.el: Use lexical-binding.
15948         (file-notify--test-cleanup): New function.
15949         (file-notify-test00-availability, file-notify-test01-add-watch)
15950         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
15951         (file-notify--test-with-events): New macro.
15952         (file-notify-test02-events): Use it.
15954 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
15956         Add patch-sending instructions to git-workflow
15957         From a suggestion by Mitchel Humpherys in:
15958         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
15959         * admin/notes/git-workflow (Sending patches): New section.
15961         Port to GIFLIB 5.0.6 and later
15962         Problem reported by Mitchel Humpherys in:
15963         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
15964         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
15965         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
15966         (gif_load) [HAVE_GIF]: Use it.
15968 2015-09-10  Glenn Morris  <rgm@gnu.org>
15970         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
15972 2015-09-09  Glenn Morris  <rgm@gnu.org>
15974         * test/automated/file-notify-tests.el (file-notify-test02-events):
15975         Fix recent change.
15977 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
15979         Refix movemail GCC pacification
15980         Problem reported by Ken Brown in:
15981         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
15982         * lib-src/movemail.c (main): Fix previous change.
15984 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
15986         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
15987         Mark unused vars with underscore.
15989         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
15990         (parse_sexp_propertize): ...from here.
15992         * lisp/filenotify.el: Use lexical-binding
15993         (file-notify-add-watch): Avoid add-to-list.
15995 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
15997         Start checking event types in file-notify tests
15998         * test/automated/file-notify-tests.el (file-notify--test-events):
15999         New variable.
16000         (file-notify--test-event-handler): Append received event to
16001         file-notify--test-events for later analysis.
16002         (file-notify-test02-events): Assert that the expected notifications have
16003         arrived in the expected order.
16005 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16007         Merge from gnulib and texinfo
16008         This incorporates:
16009         2015-08-03 Improve port of stdalign to C++11
16010         * lib/stdalign.in.h: Copy from gnulib.
16011         * doc/misc/texinfo.tex: Copy from texinfo.
16013 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16015         Make syntax.c call syntax-propertize on demand
16016         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
16017         (parse-sexp-propertize-function): Use it.
16018         (syntax-propertize): Disable parse-sexp-propertize-function.
16019         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
16020         New functions.
16021         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
16022         `parse-sexp-propertize-function'.
16023         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
16024         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
16025         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
16026         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
16027         Don't assume `point' is set.
16029 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
16031         Fix indentation of an @example in ELisp manual
16032         * doc/lispref/syntax.texi (Categories): Untabify the example.
16033         (Bug#21448)
16035 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16037         Define internal-char-font even if --without-x
16038         The function is used now even in non-graphical environments.
16039         Problem reported by Glenn Morris in:
16040         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
16041         * src/font.c (Finternal_char_font): Move here ...
16042         * src/fontset.c (Finternal_char_font): ... from here.
16044 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16046         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
16047         Remove warning.
16049 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
16051         Fix display of complex local data types in GDB-MI
16052         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
16053         variable has no value, display "<complex data type>" as a
16054         placeholder, instead of a confusing "nil".  (Bug#21438)
16056 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
16058         Remove redundant redefinition of seq-drop-while from seq.el
16059         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
16061 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
16063         * lisp/emacs-lisp/package.el (package--ensure-init-file):
16064         More robust check for `package-initialize' calls in init file.
16065         This function accepts an optional argument, but calls passing
16066         an argument would not have been detected.
16068 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16070         Port movemail to RHEL 6 with --enable-gcc-warnings
16071         * lib-src/movemail.c (main): Declare local only if needed.
16073         Port recent Linux console changes to RHEL 6
16074         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
16076         Improvements for curved quotes on Linux consule
16077         This should help Emacs work better out-of-the-box on Linux consoles,
16078         which have only limited support for displaying Unicode characters.
16079         Also, undo the recent change that caused text-quoting-style to
16080         affect quote display on terminals, so that the two features are
16081         independent.  See Alan Mackenzie in:
16082         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
16083         Finally, add a style parameter to startup--setup-quote-display,
16084         so that this function can also be invoked after startup, with
16085         different styles depending on user preference at the time.
16086         * configure.ac: Check for linux/kd.h header.
16087         * doc/emacs/display.texi (Text Display): Document quote display.
16088         * doc/lispref/display.texi (Active Display Table):
16089         * etc/NEWS:
16090         * lisp/startup.el (startup--setup-quote-display, command-line):
16091         text-quoting-style no longer affects quote display.
16092         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
16093         * lisp/international/mule-util.el (char-displayable-p):
16094         * lisp/startup.el (startup--setup-quote-display):
16095         On a text terminal supporting glyph codes, use the reported
16096         glyph codes instead of the terminal coding system, as this
16097         is more accurate on the Linux console.
16098         * lisp/startup.el (startup--setup-quote-display):
16099         New optional arg STYLE.
16100         * src/fontset.c (Finternal_char_font):
16101         Report glyph codes for a text terminal, if they are available.
16102         Currently this is supported only for the Linux console.
16103         * src/termhooks.h (struct terminal): New member glyph-code-table.
16104         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
16105         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
16106         (terminal_glyph_code): New function.
16108 2015-09-08  Juri Linkov  <juri@linkov.net>
16110         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
16111         underline.  (Bug#21433)
16113 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16115         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
16117 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
16119         Fix double-reporting of rename events with inotify
16120         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
16121         of rename events with inotify (bug#21435).
16123 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
16125         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
16126         (tetris-mode-map): Use it.
16128 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16130         Remove a few simple cases of global redisplay
16131         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
16132         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
16133         rather than returning a "resized_p" boolean.
16134         (redisplay_internal): Adjust call accordingly.
16135         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
16136         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
16137         tracking of this undesirable situation.
16139         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
16140         * src/process.c (status_notify): Only set the update_mode_line on the
16141         relevant buffers rather than setting it globally.
16143 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
16145         * lisp/electric.el (electric-quote-post-self-insert-function):
16146         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
16147         (electric-quote-mode): Activate everywhere in message-mode.
16149 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
16151         Go back to grave quoting in source-code docstrings etc.
16152         This reverts almost all my recent changes to use curved quotes
16153         in docstrings and/or strings used for error diagnostics.
16154         There are a few exceptions, e.g., Bahá’í proper names.
16155         * admin/unidata/unidata-gen.el (unidata-gen-table):
16156         * lisp/abbrev.el (expand-region-abbrevs):
16157         * lisp/align.el (align-region):
16158         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
16159         (outlineify-sticky):
16160         * lisp/apropos.el (apropos-library):
16161         * lisp/bookmark.el (bookmark-default-annotation-text):
16162         * lisp/button.el (button-category-symbol, button-put)
16163         (make-text-button):
16164         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
16165         * lisp/calc/calc-embed.el (calc-do-embedded):
16166         * lisp/calc/calc-ext.el (calc-user-function-list):
16167         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
16168         * lisp/calc/calc-help.el (calc-describe-key)
16169         (calc-describe-thing, calc-full-help):
16170         * lisp/calc/calc-lang.el (calc-c-language)
16171         (math-parse-fortran-vector-end, math-parse-tex-sum)
16172         (math-parse-eqn-matrix, math-parse-eqn-prime)
16173         (calc-yacas-language, calc-maxima-language, calc-giac-language)
16174         (math-read-giac-subscr, math-read-math-subscr)
16175         (math-read-big-rec, math-read-big-balance):
16176         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
16177         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
16178         (calc-auto-recompute):
16179         * lisp/calc/calc-prog.el (calc-fix-token-name)
16180         (calc-read-parse-table-part, calc-user-define-invocation)
16181         (math-do-arg-check):
16182         * lisp/calc/calc-store.el (calc-edit-variable):
16183         * lisp/calc/calc-units.el (math-build-units-table-buffer):
16184         * lisp/calc/calc-vec.el (math-read-brackets):
16185         * lisp/calc/calc-yank.el (calc-edit-mode):
16186         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
16187         * lisp/calendar/appt.el (appt-display-message):
16188         * lisp/calendar/diary-lib.el (diary-check-diary-file)
16189         (diary-mail-entries, diary-from-outlook):
16190         * lisp/calendar/icalendar.el (icalendar-export-region)
16191         (icalendar--convert-float-to-ical)
16192         (icalendar--convert-date-to-ical)
16193         (icalendar--convert-ical-to-diary)
16194         (icalendar--convert-recurring-to-diary)
16195         (icalendar--add-diary-entry):
16196         * lisp/calendar/time-date.el (format-seconds):
16197         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
16198         (timeclock-make-hours-explicit, timeclock-log-data):
16199         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
16200         (todo-item-mark, todo-check-format)
16201         (todo-insert-item--next-param, todo-edit-item--next-key)
16202         (todo-mode):
16203         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
16204         * lisp/cedet/mode-local.el (describe-mode-local-overload)
16205         (mode-local-print-binding, mode-local-describe-bindings-2):
16206         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
16207         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
16208         * lisp/cus-start.el (standard):
16209         * lisp/cus-theme.el (describe-theme-1):
16210         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
16211         (custom--sort-vars-1, load-theme):
16212         * lisp/descr-text.el (describe-text-properties-1, describe-char):
16213         * lisp/dired-x.el (dired-do-run-mail):
16214         * lisp/dired.el (dired-log):
16215         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
16216         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
16217         (ad-disable-advice, ad-remove-advice, ad-set-argument)
16218         (ad-set-arguments, ad--defalias-fset, ad-activate)
16219         (ad-deactivate):
16220         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
16221         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
16222         (byte-optimize-while, byte-optimize-apply):
16223         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
16224         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
16225         (byte-compile-log-file, byte-compile-format-warn)
16226         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
16227         (byte-compile-cl-warn)
16228         (byte-compile-warn-about-unresolved-functions)
16229         (byte-compile-file, byte-compile--declare-var)
16230         (byte-compile-file-form-defmumble, byte-compile-form)
16231         (byte-compile-normal-call, byte-compile-check-variable)
16232         (byte-compile-variable-ref, byte-compile-variable-set)
16233         (byte-compile-subr-wrong-args, byte-compile-setq-default)
16234         (byte-compile-negation-optimizer)
16235         (byte-compile-condition-case--old)
16236         (byte-compile-condition-case--new, byte-compile-save-excursion)
16237         (byte-compile-defvar, byte-compile-autoload)
16238         (byte-compile-lambda-form)
16239         (byte-compile-make-variable-buffer-local, display-call-tree)
16240         (batch-byte-compile):
16241         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
16242         * lisp/emacs-lisp/chart.el (chart-space-usage):
16243         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
16244         (check-declare-warn, check-declare-file)
16245         (check-declare-directory):
16246         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
16247         (checkdoc-message-text-engine):
16248         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
16249         (cl--describe-class):
16250         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
16251         (cl--generic-describe, cl-generic-generalizers):
16252         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
16253         (cl-symbol-macrolet):
16254         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
16255         * lisp/emacs-lisp/copyright.el (copyright)
16256         (copyright-update-directory):
16257         * lisp/emacs-lisp/edebug.el (edebug-read-list):
16258         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
16259         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
16260         (eieio-oref):
16261         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
16262         * lisp/emacs-lisp/eieio-speedbar.el:
16263         (eieio-speedbar-child-make-tag-lines)
16264         (eieio-speedbar-child-description):
16265         * lisp/emacs-lisp/eieio.el (defclass, change-class):
16266         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
16267         (elint-init-form, elint-check-defalias-form)
16268         (elint-check-let-form):
16269         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
16270         (ert-results-pop-to-backtrace-for-test-at-point)
16271         (ert-results-pop-to-messages-for-test-at-point)
16272         (ert-results-pop-to-should-forms-for-test-at-point)
16273         (ert-describe-test):
16274         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
16275         (find-function-library):
16276         * lisp/emacs-lisp/generator.el (iter-yield):
16277         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
16278         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
16279         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
16280         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
16281         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
16282         (advice--make, define-advice):
16283         * lisp/emacs-lisp/package-x.el (package-upload-file):
16284         * lisp/emacs-lisp/package.el (package-version-join)
16285         (package-disabled-p, package-activate-1, package-activate)
16286         (package--download-one-archive)
16287         (package--download-and-read-archives)
16288         (package-compute-transaction, package-install-from-archive)
16289         (package-install, package-install-selected-packages)
16290         (package-delete, package-autoremove, describe-package-1)
16291         (package-install-button-action, package-delete-button-action)
16292         (package-menu-hide-package, package-menu--list-to-prompt)
16293         (package-menu--perform-transaction)
16294         (package-menu--find-and-notify-upgrades):
16295         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
16296         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
16297         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
16298         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
16299         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
16300         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
16301         (rx-form):
16302         * lisp/emacs-lisp/smie.el (smie-config-save):
16303         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
16304         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
16305         * lisp/emacs-lisp/testcover.el (testcover-1value):
16306         * lisp/emacs-lisp/timer.el (timer-event-handler):
16307         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
16308         (viper-toggle-search-style, viper-kill-buffer)
16309         (viper-brac-function):
16310         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
16311         * lisp/env.el (setenv):
16312         * lisp/erc/erc-button.el (erc-nick-popup):
16313         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
16314         * lisp/eshell/em-dirs.el (eshell/cd):
16315         * lisp/eshell/em-glob.el (eshell-glob-regexp)
16316         (eshell-glob-entries):
16317         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
16318         * lisp/eshell/esh-opt.el (eshell-show-usage):
16319         * lisp/facemenu.el (facemenu-add-new-face)
16320         (facemenu-add-new-color):
16321         * lisp/faces.el (read-face-name, read-face-font, describe-face)
16322         (x-resolve-font-name):
16323         * lisp/files-x.el (modify-file-local-variable):
16324         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
16325         (set-auto-mode, hack-one-local-variable--obsolete)
16326         (dir-locals-set-directory-class, write-file, basic-save-buffer)
16327         (delete-directory, copy-directory, recover-session)
16328         (recover-session-finish, insert-directory)
16329         (file-modes-char-to-who, file-modes-symbolic-to-number)
16330         (move-file-to-trash):
16331         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
16332         * lisp/find-cmd.el (find-generic, find-to-string):
16333         * lisp/finder.el (finder-commentary):
16334         * lisp/font-lock.el (font-lock-fontify-buffer):
16335         * lisp/format.el (format-write-file, format-find-file)
16336         (format-insert-file):
16337         * lisp/frame.el (get-device-terminal, select-frame-by-name):
16338         * lisp/fringe.el (fringe--check-style):
16339         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
16340         * lisp/help-fns.el (help-fns--key-bindings)
16341         (help-fns--compiler-macro, help-fns--parent-mode)
16342         (help-fns--obsolete, help-fns--interactive-only)
16343         (describe-function-1, describe-variable):
16344         * lisp/help.el (describe-mode)
16345         (describe-minor-mode-from-indicator):
16346         * lisp/image.el (image-type):
16347         * lisp/international/ccl.el (ccl-dump):
16348         * lisp/international/fontset.el (x-must-resolve-font-name):
16349         * lisp/international/mule-cmds.el (prefer-coding-system)
16350         (select-safe-coding-system-interactively)
16351         (select-safe-coding-system, activate-input-method)
16352         (toggle-input-method, describe-current-input-method)
16353         (describe-language-environment):
16354         * lisp/international/mule-conf.el (code-offset):
16355         * lisp/international/mule-diag.el (describe-character-set)
16356         (list-input-methods-1):
16357         * lisp/mail/feedmail.el (feedmail-run-the-queue):
16358         * lisp/mouse.el (minor-mode-menu-from-indicator):
16359         * lisp/mpc.el (mpc-playlist-rename):
16360         * lisp/msb.el (msb--choose-menu):
16361         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
16362         * lisp/net/imap.el (imap-interactive-login):
16363         * lisp/net/mairix.el (mairix-widget-create-query):
16364         * lisp/net/newst-backend.el (newsticker--sentinel-work):
16365         * lisp/net/newst-treeview.el (newsticker--treeview-load):
16366         * lisp/net/rlogin.el (rlogin):
16367         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
16368         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
16369         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
16370         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
16371         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
16372         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
16373         (org-babel-goto-named-result):
16374         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
16375         * lisp/org/ob-ref.el (org-babel-ref-resolve):
16376         * lisp/org/org-agenda.el (org-agenda-prepare):
16377         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
16378         (org-clock-resolve):
16379         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
16380         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
16381         * lisp/org/org-habit.el (org-habit-parse-todo):
16382         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
16383         (org-mouse-context-menu):
16384         * lisp/org/org-table.el (org-table-edit-formulas):
16385         * lisp/org/ox.el (org-export-async-start):
16386         * lisp/proced.el (proced-log):
16387         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
16388         (ada-check-matching-start, ada-goto-matching-start):
16389         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
16390         * lisp/progmodes/ada-xref.el (ada-find-executable):
16391         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
16392         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
16393         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
16394         (flymake-start-syntax-check-process):
16395         * lisp/progmodes/python.el (python-shell-get-process-or-error)
16396         (python-define-auxiliary-skeleton):
16397         * lisp/progmodes/sql.el (sql-comint):
16398         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
16399         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
16400         * lisp/recentf.el (recentf-open-files):
16401         * lisp/replace.el (query-replace-read-from)
16402         (occur-after-change-function, occur-1):
16403         * lisp/scroll-bar.el (scroll-bar-columns):
16404         * lisp/server.el (server-get-auth-key):
16405         * lisp/simple.el (execute-extended-command)
16406         (undo-outer-limit-truncate, list-processes--refresh)
16407         (compose-mail, set-variable, choose-completion-string)
16408         (define-alternatives):
16409         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
16410         (command-line-1):
16411         * lisp/subr.el (noreturn, define-error, add-to-list)
16412         (read-char-choice, version-to-list):
16413         * lisp/term/common-win.el (x-handle-xrm-switch)
16414         (x-handle-name-switch, x-handle-args):
16415         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
16416         * lisp/textmodes/reftex-ref.el (reftex-label):
16417         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
16418         * lisp/textmodes/two-column.el (2C-split):
16419         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
16420         (tutorial--find-changed-keys):
16421         * lisp/type-break.el (type-break-noninteractive-query):
16422         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
16423         (wdired-do-perm-changes):
16424         * lisp/whitespace.el (whitespace-report-region):
16425         Prefer grave quoting in source-code strings used to generate help
16426         and diagnostics.
16427         * lisp/faces.el (face-documentation):
16428         No need to convert quotes, since the result is a docstring.
16429         * lisp/info.el (Info-virtual-index-find-node)
16430         (Info-virtual-index, info-apropos):
16431         Simplify by generating only curved quotes, since info files are
16432         typically that ways nowadays anyway.
16433         * lisp/international/mule-diag.el (list-input-methods):
16434         Don’t assume text quoting style is curved.
16435         * lisp/org/org-bibtex.el (org-bibtex-fields):
16436         Revert my recent changes, going back to the old quoting style.
16438 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16440         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
16441         (package--autoloads-file-name)
16442         (package--activate-autoloads-and-load-path): New function.
16443         (package-activate-1): Delegate autoloading and load-path
16444         configuration to `package--activate-autoloads-and-load-path'.
16445         (package--compile): Before compilation, call
16446         `package--activate-autoloads-and-load-path' instead of
16447         `package-activate-1'.
16449 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
16451         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
16453 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
16455         Fix deletion of symlinks to directories on MS-Windows
16456         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
16457         symlink to a directory, try again with 'rmdir'.
16458         (is_symlink): If the argument is a symlink to a directory, set a
16459         bit in the return value to indicate that fact.
16461 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16463         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
16464         When `package-initialize' is called as part of loading the init file,
16465         the user probably doesn't want it to be called again afterwards.
16466         In this situation, `package-initialize' now sets
16467         `package-enable-at-startup' to nil to prevent that.  The user can have
16468         the old behavior by setting this variable to t after the call to
16469         `package-initialize'.  (Bug#21423)
16470         * doc/emacs/package.texi (Package Installation): Document it.
16471         * doc/lispref/package.texi (Packaging Basics): Document it.
16472         * etc/NEWS: Document it.
16474 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16476         Bump version of ntlm.el to 2.00
16477         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
16478         Add comm keyword.
16480 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
16482         * doc/misc/gnus.texi (Mail Source Specifiers):
16483         Allow :mailbox to be a list.
16485 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
16487         * lisp/progmodes/etags.el (etags-tags-completion-table):
16488         Allow even one non-regular character before the implicit tag name.
16489         Reported at http://emacs.stackexchange.com/questions/15269/.
16491 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16493         Add support for NTLMv2 authentication
16494         * lisp/net/ntlm.el (ntlm): New customization group.
16495         (ntlm-compatibility-level): New defcustom.
16496         (ntlm-compute-timestamp): New function.
16497         (ntlm-generate-nonce): Likewise.
16498         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
16500 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
16502         * lisp/emacs-lisp/package.el: Rename custom faces.
16503         All of the recently introduced faces, like `package-name-face', have
16504         been renamed to no end in `-face' to comply with the convention
16505         described in (info "(elisp) Defining Faces").
16506         (package-name, package-description)
16507         (package-status-built-in, package-status-external)
16508         (package-status-available, package-status-new)
16509         (package-status-held, package-status-disabled)
16510         (package-status-installed, package-status-dependency)
16511         (package-status-unsigned, package-status-incompat)
16512         (package-status-avail-obso): New faces.
16513         (package-menu--print-info-simple): Use them.
16515 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
16517         mail-source.el: Make the imap mail-source's :mailbox handle a list
16518         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
16519         Allow :mailbox to be  a list.
16521 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
16523         nnimap.el: Handle nil arg to nnimap-request-group
16524         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
16525         This arg isn't always passed in, check it's not nil before making it
16526         into a list.  The active arg will also be nil if the group is new,
16527         check for that.
16529 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
16531         File notifications: Support renaming over directory boundaries
16532         * lisp/filenotify.el (file-notify-handle-event):
16533         (file-notify--pending-event): Adapt docstring.
16534         (file-notify--descriptor, file-notify-callback): Reimplement in
16535         order to support renaming over directory boundaries.
16536         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
16537         * doc/lispref/os.texi (File Notifications): Remove limitation of
16538         file renaming to the same directory.
16540 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
16542         Spelling fix (Bug#21420)
16544 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
16546         Improve the semantic of map-some
16547         Update map-some to return the returned by the predicate, similar to
16548         seq-some.
16549         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
16550           return value of the predicate.
16551         * test/automated/map-tests.el (test-map-some): Update the test to check
16552           for non-nil values only.
16554         Rename map-contains-key-p and map-some-p
16555         Remove the "-p" suffix from both function names.
16556         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
16557           Rename the functions.
16558         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
16559           Update both test functions.
16561         Improve the semantic of seq-some
16562         Update seq-some to return non-nil if the predicate returns non-nil for
16563         any element of the seq, in which case the returned value is the one
16564         returned by the predicate.
16565         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
16566           docstring.
16567         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
16568         * doc/lispref/sequences.texi (Sequence Functions): Update the
16569           documentation for seq-some.
16571         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
16572         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
16573           without the "-p" prefix.
16574         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
16575           the tests accordingly.
16576         * doc/lispref/sequences.texi (Sequence Functions): Update the
16577           documentation for seq.el.
16579 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
16581         text-quoting-style for usage of fn names with ‘’
16582         * lisp/help.el (help--docstring-quote): Don’t assume
16583         text-quoting-style is ‘curve’ when generating usage strings for
16584         functions whose names contain curved quotes.
16586 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
16588         Fix fix for describe-function keybinding confusion
16589         This fixes a bug introduced by the previous patch.
16590         * lisp/help-fns.el (help-fns--signature):
16591         Last arg of help-fns--signature is now a buffer, or nil if a
16592         raw signature is wanted.  All callers changed.
16593         (describe-function-1): Use this to do the right thing with signatures.
16595 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
16597         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
16599         Use PAT rather than UPAT in pcase macros
16600         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
16601         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
16602           than UPAT.
16604 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
16606         Fix describe-function keybinding confusion
16607         * lisp/help-fns.el (describe-function-1): Compute signature
16608         in the original buffer, not in standard-output, so that
16609         substitute-command-keys uses the proper keybindings.
16610         This fixes Bug#21412, introduced in commit
16611         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
16613 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
16615         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
16617 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
16619         Avoid read error messages from 'inotify'
16620         * src/process.c (wait_reading_process_output): Add a
16621         'tls_available' set and manipulate it instead of 'Available' when
16622         checking TLS inputs.  Assign the value to 'Available' only if we
16623         find any TLS data waiting to be read.  This avoids error messages
16624         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
16626 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
16628         Avoid errors in thing-at-point with 2nd argument non-nil
16629         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
16630         sequences.  (Bug#21391)
16632 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
16634         Fix segfaults due to using a stale face ID
16635         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
16636         (display_echo_area_1, redisplay_internal): Call it to avoid
16637         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
16638         faces, which could case a segfault if the frame's face cache was
16639         freed since the last redisplay.  (Bug#21394)
16640         * src/xfaces.c (free_realized_faces):
16641         Call forget_escape_and_glyphless_faces.
16642         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
16644 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
16646         Fix minor problems with " in manual
16648 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
16650         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
16651         multi-hop files.
16653 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
16655         Support automated ‘make check’ in non-C locale
16656         This lets the builder optionally test Emacs behavior in other locales.
16657         The C locale is still the default for tests.
16658         * test/automated/Makefile.in (TEST_LOCALE): New macro.
16659         (emacs): Use it.
16660         * test/automated/flymake-tests.el (flymake-tests--current-face):
16661         Use C locale for subprocesses so that tests behave as expected.
16662         * test/automated/python-tests.el:
16663         (python-shell-prompt-validate-regexps-1)
16664         (python-shell-prompt-validate-regexps-2)
16665         (python-shell-prompt-validate-regexps-3)
16666         (python-shell-prompt-validate-regexps-4)
16667         (python-shell-prompt-validate-regexps-5)
16668         (python-shell-prompt-validate-regexps-6)
16669         (python-shell-prompt-set-calculated-regexps-1):
16670         Adjust expected output to match locale.
16671         * test/automated/tildify-tests.el (tildify-test--test)
16672         (tildify-space-test--test, tildify-space-undo-test--test):
16673         This test assumes UTF-8 encoding.
16675 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
16677         Fix some more docstring etc. quoting problems
16678         Mostly these fixes prevent the transliteration of apostrophes
16679         that should stay apostrophes.  Also, prefer curved quotes in
16680         Bahá’í proper names, as that’s the preferred Bahá’í style and
16681         these names are chock-full of non-ASCII characters anyway.
16682         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
16683         (eieio-defclass-internal):
16684         * lisp/emacs-lisp/eieio.el (defclass):
16685         * lisp/hi-lock.el (hi-lock-mode):
16686         Don’t transliterate Lisp apostrophes when generating a
16687         doc string or diagnostic.
16688         * lisp/international/mule-diag.el (list-coding-systems-1):
16689         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
16690         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
16691         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
16692         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
16693         Substitute quotes before putting them in the help buffer.
16695 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
16697         Re-add the notion of echo_prompt lost in the translation
16698         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
16699         echo_prompt which contains the actual string.  Update all uses.
16700         * src/keyboard.c (kset_echo_prompt): New function.
16701         (echo_update): Add echo_prompt at the very beginning.
16702         (read_char): Remove workaround for bug#19875, not needed any more.
16703         (read_key_sequence): Set echo_prompt rather than echo_string
16704         (bug#21403).
16705         (mark_kboards): Mark echo_prompt.
16707         Fix disassembly of non-compiled lexical functions (bug#21377)
16708         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
16709         * lisp/emacs-lisp/disass.el: Use lexical-binding.
16710         (disassemble): Recognize `closure's as well.
16711         (disassemble-internal): Use indirect-function and
16712         help-function-arglist, and accept `closure's.
16713         (disassemble-internal): Use interactive-form.
16714         (disassemble-1): Use functionp.
16716         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
16717         Don't compose inside verbatim blocks!
16719 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
16721         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
16722         (bug#19441).
16724         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
16726 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
16728         vc-git-mode-line-string: Explicitly re-apply the face
16729         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
16730         the face (bug#21404).
16732 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
16734         Treat initial-scratch-message as a doc string
16735         * doc/emacs/building.texi (Lisp Interaction):
16736         * doc/lispref/os.texi (Startup Summary):
16737         * etc/NEWS: Document this.
16738         * lisp/startup.el (initial-scratch-message):
16739         Look up find-file’s key rather than hardcoding it.
16740         (command-line-1): Substitute the doc string.
16741         This also substitutes the quotes, which will help test display
16742         quoting at startup.
16744         Fix describe-char bug with glyphs on terminals
16745         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
16746         buffers too, so don’t treat them differently from graphic displays.
16747         Without this fix, describe-char would throw an error on a terminal
16748         if given a glyph with a non-default face.
16750         Follow text-quoting-style in display table init
16751         This attempts to fix a problem reported by Alan Mackenzie in:
16752         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
16753         * doc/lispref/display.texi (Active Display Table):
16754         Mention how text-quoting-style affects it.
16755         * doc/lispref/help.texi (Keys in Documentation):
16756         Say how to set text-quoting-style in ~/.emacs.
16757         * etc/NEWS: Document the change.
16758         * lisp/startup.el (startup--setup-quote-display):
16759         Follow user preference if text-quoting-style is set.
16760         (command-line): Setup quote display again if user expresses
16761         a preference in .emacs.
16763 2015-09-02  K. Handa  <handa@gnu.org>
16765         Fix typo
16766         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
16767         -> OTF_positioning_type_components_mask.
16769         Fix previous change
16770         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
16771         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
16773 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
16775         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
16776         Rename from vc-find-file-hook and make interactive.
16777         (vc-find-file-hook): Redefine as obsolete alias.
16779 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16781         Escape ` and ' in doc
16782         Escape apostrophes and grave accents in docstrings if they are
16783         are supposed to stand for themselves and are not quotes.  Remove
16784         apostrophes from docstring examples like ‘'(calendar-nth-named-day
16785         -1 0 10 year)’ that confuse source code with data.  Do some other
16786         minor docstring fixups as well, e.g., insert a missing close quote.
16788 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
16790         Generalize the prefix-command machinery of C-u
16791         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
16792         (prefix-command-preserve-state-hook): New hooks.
16793         (internal-echo-keystrokes-prefix): New function.
16794         (prefix-command--needs-update, prefix-command--last-echo): New vars.
16795         (prefix-command-update, prefix-command-preserve): New functions.
16796         (reset-this-command-lengths): New compatibility definition.
16797         (universal-argument--mode): Call prefix-command-update.
16798         (universal-argument, universal-argument-more, negative-argument)
16799         (digit-argument): Call prefix-command-preserve-state.
16800         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
16801         the "prefix argument" to echo.
16802         (this_command_key_count_reset, before_command_key_count)
16803         (before_command_echo_length): Delete variables.
16804         (echo_add_key): Always add a space.
16805         (echo_char): Remove.
16806         (echo_dash): Don't give up when this_command_key_count is 0, since that
16807         is now the case after a prefix command.
16808         (echo_update): New function, extracted from echo_now.
16809         (echo_now): Use it.
16810         (add_command_key, read_char, record_menu_key): Remove old disabled code.
16811         (command_loop_1): Don't refrain from pushing an undo boundary when
16812         prefix-arg is set.  Remove other prefix-arg special case, now handled
16813         directly in the prefix commands instead.  But call echo_now if there's
16814         a prefix state to echo.
16815         (read_char, record_menu_key): Use echo_update instead of echo_char.
16816         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
16817         (Freset_this_command_lengths): Delete function.
16818         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
16819         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
16820         * lisp/simple.el: Use those new hooks for C-u.
16821         (universal-argument--description): New function.
16822         (prefix-command-echo-keystrokes-functions): Use it.
16823         (universal-argument--preserve): New function.
16824         (prefix-command-preserve-state-hook): Use it.
16825         (command-execute): Call prefix-command-update if needed.
16826         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
16827         (kmacro-step-edit-prefix-index): Delete variables.
16828         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
16829         support for prefix arg commands.
16830         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
16831         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
16832         (cua--shift-control-prefix): Use prefix-command-preserve-state.
16833         Remove now unused arg `arg'.
16834         (cua--prefix-override-handler, cua--prefix-repeat-handler)
16835         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
16836         Update accordingly.
16837         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
16838         any more.
16839         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
16840         if the mark is not set.
16842 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16844         Rework quoting in Emacs Lisp Introduction
16845         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
16846         (if in more detail, type-of-animal in detail, else): Rework the
16847         early example to use " rather than ' so that we don’t burden
16848         complete novices with the low-priority detail of text quoting style.
16849         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
16850         (kill-new function, kill-ring-yank-pointer)
16851         (Complete forward-sentence, Loading Files)
16852         (Code for current-kill, Code for current-kill, yank):
16853         Resurrect the Emacs 22 versions of the code, which uses grave
16854         quoting style in doc strings.
16855         (Complete zap-to-char): Mention how quoting works in doc strings.
16857         Setup quote display only if interactive
16858         * lisp/startup.el (command-line):
16859         Skip call to startup--setup-quote-display if noninteractive.
16860         Without this change, python-shell-prompt-validate-regexps-1
16861         fails in test/automated/python-tests.el when run in an
16862         en_US.utf8 locale on Fedora.
16864 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
16866         Use defalias at the top level
16867         * lisp/gnus/gnus-util.el (gnus-format-message):
16868         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
16869         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
16871 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16873         terminal-init-w32console mimicks command-line
16874         Problem reported by Eli Zaretskii.
16875         * lisp/startup.el (startup--setup-quote-display):
16876         New function, refactored from a part of ‘command-line’.
16877         (command-line): Use it.
16878         * lisp/term/w32console.el (terminal-init-w32console):
16879         Use it, so that this function stays consistent with ‘command-line’.
16881         Display replacement quotes with shadow glyphs
16882         * lisp/startup.el (command-line): When displaying ASCII
16883         replacements for curved quotes, use a shadow glyph instead of a
16884         regular one, to avoid ambiguity.
16886 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
16888         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
16890 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16892         Docstring fixes re quotes in C code
16893         Fix some docstring quoting problems, mostly by escaping apostrophe.
16895 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
16897         Some Tramp password fixes
16898         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
16899         of the hops.
16900         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
16901         at the beginning of the command.  Otherwise, it could be
16902         interpreted as password prompt if the remote host echoes the
16903         command.
16904         (tramp-remote-coding-commands): Add "openssl enc -base64".
16906 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
16908         Make vc-git-working-revision always return the commit hash
16909         * lisp/vc/vc-git.el (vc-git-working-revision):
16910         Return the commit hash (bug#21383).
16911         (vc-git--symbolic-ref): New function, extracted from above.
16912         (vc-git-mode-line-string): Use it.
16914 2015-09-01  K. Handa  <handa@gnu.org>
16916         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
16917         * src/ftfont.c (MFLTGlyphFT): New type.
16918         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
16919         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
16920         elements in the array MFLTGlyphString.glyphs.
16922 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
16924         Improve comments in elisp-mode.el, elisp-mode-tests.el
16925         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
16927         Delete Emacs 25 test in mode-local.el
16928         * lisp/cedet/mode-local.el (describe-mode-local-overload):
16929         Fix missed an edit in previous commit.
16931         Show all known mode-local overrides in *Help*
16932         * lisp/cedet/mode-local.el (describe-mode-local-overload):
16933         Assume Emacs 25. Add all known mode-local overrides.
16935 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
16937         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
16938         Ensure that the article where the search word is found is displayed
16939         and pointed to in the summary buffer.
16941 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
16943         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
16944         When the region is active, but is empty (length 0), act as though
16945         the region was not active; that is, put a comment at the end of
16946         the line.  (Bug#21119)
16948 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
16950         Port tls.el to older Emacs
16951         * lisp/net/tls.el (tls-format-message):
16952         Alias to format-message, or format if not available.
16953         (open-tls-stream): Use it.
16955 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
16957         hideif.el: Recognize .h++ as C++ header
16958         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
16960         isearch: Document character folding mode
16961         * lisp/isearch.el (isearch-forward):
16962         Mention `isearch-toggle-character-fold' in doc string.
16964 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
16966         Quoting fixes in ERC and Eshell
16967         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
16968         * lisp/erc/erc-backend.el (define-erc-response-handler):
16969         * lisp/erc/erc-fill.el (erc-fill-static-center):
16970         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
16971         * lisp/eshell/em-glob.el (eshell-glob-entries):
16972         * lisp/eshell/em-hist.el (eshell-save-some-history):
16973         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
16974         (eshell-shuffle-files):
16975         * lisp/eshell/esh-cmd.el (eshell-do-eval):
16976         * lisp/eshell/esh-proc.el (eshell-process-interact)
16977         (eshell-query-kill-processes):
16978         Respect ‘text-quoting-style’ in diagnostics and doc strings.
16980         Quoting fixes in Gnus
16981         * lisp/gnus/gnus-agent.el:
16982         (gnus-agent-possibly-synchronize-flags-server):
16983         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
16984         * lisp/gnus/gnus-eform.el (gnus-edit-form):
16985         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
16986         (gnus-group-nnimap-edit-acl):
16987         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
16988         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
16989         * lisp/gnus/message.el (message-strip-subject-encoded-words)
16990         (message-check-recipients, message-send-form-letter):
16991         * lisp/gnus/mm-decode.el (mm-display-part):
16992         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
16993         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
16994         (mml-smime-get-ldap-cert):
16995         * lisp/gnus/spam-report.el (spam-report-process-queue):
16996         Respect ‘text-quoting-style’ in diagnostics.
16997         * lisp/gnus/gnus-art.el (article-display-face)
16998         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
16999         Use straight quoting in email.
17000         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
17001         Escape apostrophes in doc strings.
17003         Quoting fixes in lisp mail, mh-e, net, url
17004         * lisp/mail/emacsbug.el (report-emacs-bug)
17005         (report-emacs-bug-hook): Use straight quotes in outgoing email,
17006         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
17007         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
17008         * lisp/mail/rmailout.el (rmail-output-read-file-name):
17009         * lisp/net/imap.el (imap-interactive-login):
17010         * lisp/net/tls.el (open-tls-stream):
17011         * lisp/url/url-auth.el (url-register-auth-scheme):
17012         Respect ‘text-quoting-style’ in diagnostics.
17013         * lisp/mh-e/mh-e.el (mh-sortm-args):
17014         Quote docstring example using text quotes, not as a Lisp quote.
17016 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
17018         Fix some byte-compiler warnings in EDE
17019         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
17020         existing autoloader list, rather than add to it.
17021         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
17022         argument to eieio class constructor.
17023         (ede-show-supported-projects): New.
17024         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
17025         with (oref ... name).
17026         (ede-auto-load-project): Use slot name, not initarg key.
17027         * lisp/cedet/ede/generic.el (ede-generic-load)
17028         (ede-generic-find-matching-target): Use slot name, not initarg key.
17029         (ede-find-target): Use oref-default on class name.
17030         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
17031         class constructor.
17032         (ede-enable-generic-projects): Make project type names unique.
17034 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
17036         Fix directory accessibility tests for w32 network volumes
17037         * src/w32.c (faccessat): Don't fail with network volumes without a
17038         share.
17039         (w32_accessible_directory_p): Handle network volumes without a
17040         share.
17042         Fix handling long file names in readdir on MS-Windows
17043         * src/w32.c (sys_readdir): Append "\*" to the directory after
17044         converting it to UTF-16/ANSI, not before, to avoid overflowing the
17045         260-character limit on file names in filename_to_utf16/ansi.
17047         Make file-accessible-directory-p reliable on MS-Windows
17048         * src/w32.c (w32_accessible_directory_p): New function.
17049         * src/w32.h (w32_accessible_directory_p): Add prototype.
17050         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
17051         w32_accessible_directory_p to test a directory for accessibility
17052         by the current user.  (Bug#21346)
17053         (Ffile_accessible_directory_p): Remove the w32 specific caveat
17054         from the doc string.
17056 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
17058         Don't call do_pending_window_change in signal handlers (Bug#21380)
17059         * src/gtkutil.c (xg_frame_resized):
17060         * src/xterm.c (x_set_window_size):
17061         * src/w32term.c (x_set_window_size): Don't call
17062         do_pending_window_change.
17064 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
17066         Quoting fixes in lisp/org
17067         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
17068         (org-tags-view):
17069         * lisp/org/org-capture.el (org-capture-mode)
17070         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
17071         (org-ctags-ask-append-topic):
17072         * lisp/org/org.el (org-time-string-to-time)
17073         (org-time-string-to-absolute):
17074         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
17075         (org-ctags-ask-append-topic):
17076         * lisp/org/org.el (org-time-string-to-time)
17077         (org-time-string-to-absolute):
17078         Respect ‘text-quoting-style’ in diagnostics.
17079         * lisp/org/org-agenda.el (org-agenda-custom-commands)
17080         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
17081         * lisp/org/org-capture.el (org-capture-fill-template):
17082         Avoid contraction in output file that might be ASCII.
17083         * lisp/org/org-compat.el (format-message):
17084         Define if not already defined, for backward compatibility.
17085         * lisp/org/org-src.el (org-edit-src-save):
17086         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
17087         Escape apostrophes in diagnostics.
17089         Treat “instead” strings as docstrings
17090         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
17091         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
17092         Substitute quotes in instead strings.
17094 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
17096         Better documentation of seq-let
17097         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
17098         documentation of seq-let.
17100 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
17102         * lisp/international/ccl.el: Fix quoting.
17104         Quoting fixes in lisp/international and lisp/leim
17105         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
17106         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
17107         * lisp/international/mule-cmds.el:
17108         (select-safe-coding-system-interactively, leim-list-file-name):
17109         * lisp/international/quail.el (quail-use-package, quail-help):
17110         * lisp/international/titdic-cnv.el (tit-process-header)
17111         (miscdic-convert):
17112         Respect text quoting style in doc strings and diagnostics.
17113         * lisp/international/quail.el (lisp/international/quail.el):
17114         * lisp/leim/quail/ethiopic.el ("ethiopic"):
17115         Escape apostrophes in doc strings.
17117         Make ‘text-quoting-style’ a plain defvar
17118         It doesn’t need customization, as it’s likely useful only by experts.
17119         Suggested by Stefan Monnier in:
17120         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
17121         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
17123         Quoting fixes in lisp/textmodes
17124         * lisp/textmodes/bibtex.el (bibtex-validate)
17125         (bibtex-validate-globally, bibtex-search-entries):
17126         * lisp/textmodes/ispell.el (ispell-command-loop):
17127         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
17128         * lisp/textmodes/texinfmt.el (texinfmt-version)
17129         (texinfo-format-region, texinfo-format-buffer-1):
17130         * lisp/textmodes/two-column.el (2C-split):
17131         Respect text quoting style in doc strings and diagnostics.
17132         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
17133         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
17134         Escape apostrophes in doc strings.
17136         Documentation fixes re quotes
17137         Prefer curved quotes in examples if users will typically see
17138         curved quotes when the examples run.
17139         Mention format-message when appropriate.
17140         Don’t use @code in examples.
17141         Quote an apostrophe with @kbd.
17143         Quoting fixes in lisp/progmodes
17144         * lisp/progmodes/cc-engine.el (c-bos-report-error):
17145         * lisp/progmodes/cpp.el (cpp-edit-reset):
17146         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
17147         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
17148         (etags-tags-apropos, list-tags, tags-apropos):
17149         * lisp/progmodes/executable.el (executable-set-magic):
17150         * lisp/progmodes/octave.el (octave-sync-function-file-names)
17151         (octave-help, octave-find-definition-default-filename)
17152         (octave-find-definition):
17153         Respect text quoting style in doc strings and diagnostics.
17154         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
17155         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
17156         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
17157         Escape apostrophes in doc strings.
17158         * lisp/progmodes/cmacexp.el (c-macro-expansion):
17159         Use straight quoting in ASCII comment.
17160         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
17161         (idlwave-pad-keyword):
17162         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
17163         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
17164         (vhdl-electric-semicolon, vhdl-electric-comma)
17165         (vhdl-electric-period, vhdl-electric-equal):
17166         Use directed quotes in diagnostics and doc strings.
17168 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
17170         Minor documentation and NEWS tweak
17171         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
17172         Add an index entry.
17173         * etc/NEWS: Fix a typo in character-fold-to-regexp.
17175 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
17177         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
17178         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
17179         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
17180         Adapt test.
17182 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
17184         Text quoting fixes in cedet, emulation, emacs-lisp
17185         * lisp/cedet/ede.el (ede-check-project-directory):
17186         * lisp/cedet/semantic/analyze/debug.el
17187         (semantic-analyzer-debug-insert-include-summary):
17188         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
17189         * lisp/cedet/semantic/decorate/include.el
17190         (semantic-decoration-unknown-include-describe)
17191         (semantic-decoration-all-include-summary):
17192         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
17193         * lisp/emulation/edt.el (edt-load-keys):
17194         * lisp/emulation/viper-cmd.el
17195         (viper-display-current-destructive-command)
17196         (viper-query-replace, viper-brac-function):
17197         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
17198         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
17199         Respect text quoting style in doc string or diagnostic.
17200         * lisp/cedet/mode-local.el (describe-mode-local-overload):
17201         Use format-message to avoid overtranslating quotes.
17202         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
17203         Escape an apostrophe in a docstring.
17204         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
17206 2015-08-29  Daniel Colascione  <dancol@dancol.org>
17208         Fix which-func for curly quotes: look for symbol, not message
17209         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
17210         imenu-unavailable error symbol instead of trying to match message
17211         exactly.
17212         * lisp/imenu.el (imenu-unavailable): New error.
17213         (imenu-unavailable-error): New function.
17215 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
17217         Fix Python tests on MS-Windows
17218         * test/automated/python-tests.el
17219         (python-shell-calculate-command-1): Run python-shell-interpreter
17220         through shell-quote-argument before comparing with what
17221         python-shell-calculate-command returns.
17222         (python-shell-calculate-pythonpath-1)
17223         (python-shell-calculate-pythonpath-2)
17224         (python-shell-calculate-process-environment-2): Use path-separator
17225         instead of a literal ':'.
17226         (python-shell-calculate-exec-path-2)
17227         (python-shell-calculate-exec-path-3)
17228         (python-shell-calculate-exec-path-4)
17229         (python-shell-with-environment-1)
17230         (python-shell-with-environment-2): Run "/env/bin" through
17231         expand-file-name before comparing with exec-path.  (Bug#21375)
17233 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17235         Use Core Text types/functions/variables/enumerators directly
17236         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
17237         (CharacterCollection): Remove typedefs.  All uses replaced with
17238         definitions.
17239         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
17240         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
17241         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
17242         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
17243         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
17244         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
17245         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
17246         definitions.
17247         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
17248         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
17249         (MAC_FONT_FORMAT_BITMAP)
17250         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
17251         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
17252         All uses replaced with definitions.
17253         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
17254         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
17255         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
17256         Add compatibility enumerators for older versions.
17257         (mac_font_descriptor_create_with_attributes)
17258         (mac_font_descriptor_create_matching_font_descriptors)
17259         (mac_font_descriptor_create_matching_font_descriptor)
17260         (mac_font_descriptor_copy_attribute)
17261         (mac_font_descriptor_supports_languages)
17262         (mac_font_create_with_name, mac_font_get_size)
17263         (mac_font_copy_family_name, mac_font_copy_character_set)
17264         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
17265         (mac_font_get_descent, mac_font_get_leading)
17266         (mac_font_get_underline_position)
17267         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
17268         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
17269         replaced with definitions.
17270         (mac_font_create_preferred_family_for_attributes)
17271         (mac_font_get_advance_width_for_glyph)
17272         (mac_font_get_bounding_rect_for_glyph)
17273         (mac_font_create_available_families, mac_font_shape):
17274         Remove macros for renamed functions.
17275         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
17276         * src/macfont.m (mac_font_descriptor_supports_languages):
17277         Rename from mac_ctfont_descriptor_supports_languages.
17278         (mac_font_create_preferred_family_for_attributes): Rename from
17279         mac_ctfont_create_preferred_family_for_attributes.
17280         (mac_font_get_advance_width_for_glyph): Rename from
17281         mac_ctfont_get_advance_width_for_glyph.
17282         Use kCTFontOrientationDefault also for older versions.
17283         (mac_font_get_bounding_rect_for_glyph): Rename from
17284         mac_ctfont_get_bounding_rect_for_glyph.
17285         Use kCTFontOrientationDefault also for older versions.
17286         (mac_font_create_available_families): Rename from
17287         mac_ctfont_create_available_families.
17288         (mac_font_equal_in_postscript_name): Rename from
17289         mac_ctfont_equal_in_postscript_name.  All uses changed.
17290         (mac_font_create_line_with_string_and_font): Rename from
17291         mac_ctfont_create_line_with_string_and_font.  All uses changed.
17292         (mac_font_shape): Rename from mac_ctfont_shape.
17293         (mac_font_family_compare): Remove unused declaration.
17295 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
17297         Fix minor text quoting in calc, calendar, vc
17298         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
17299         * lisp/calc/calc-help.el (calc-j-prefix-help):
17300         * lisp/calc/calc-misc.el (calc-help):
17301         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
17302         Escape an apostrophe in a docstring.
17303         * lisp/calc/calc-forms.el (calc-hms-notation):
17304         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
17305         Escape an apostrophe in a diagnostic.
17306         * lisp/calc/calc-misc.el (calc-help):
17307         * lisp/calendar/diary-lib.el (diary-include-files):
17308         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
17309         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
17310         * lisp/vc/ediff-diff.el (ediff-same-contents):
17311         * lisp/vc/ediff-merg.el (ediff-re-merge):
17312         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
17313         * lisp/vc/ediff-util.el (ediff-test-save-region)
17314         (ediff-status-info):
17315         * lisp/vc/ediff.el (ediff-merge-revisions)
17316         (ediff-merge-revisions-with-ancestor):
17317         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
17318         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
17319         Respect text quoting style in doc string or diagnostic.
17320         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
17321         * lisp/vc/add-log.el (change-log-goto-source):
17322         Avoid double-formatting.
17323         * lisp/vc/ediff-init.el (format-message):
17324         New backward-compatibility alias.
17326 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
17328         Fix minor text quoting problems in lisp top level
17329         * lisp/apropos.el (apropos-describe-plist):
17330         * lisp/cus-theme.el (customize-themes):
17331         * lisp/dired.el (dired-log):
17332         * lisp/help-fns.el (describe-variable):
17333         * lisp/hexl.el (hexl-insert-multibyte-char):
17334         * lisp/info.el (Info-finder-find-node):
17335         * lisp/json.el (json-read-string):
17336         * lisp/novice.el (disabled-command-function)
17337         (disabled-command-function):
17338         * lisp/startup.el (normal-mouse-startup-screen):
17339         * lisp/woman.el (WoMan-log, WoMan-warn):
17340         Respect text quoting style in doc string or diagnostic.
17341         * lisp/replace.el (replace-character-fold):
17342         * src/syntax.c (Fmodify_syntax_entry):
17343         Escape an apostrophe in a docstring.
17344         * lisp/tempo.el (tempo-define-template):
17345         Remove confusing apostrophe from docstring.
17346         * lisp/whitespace.el (whitespace-mark-x):
17347         Use directed quotes in docstring.
17349 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
17351         Fix indentation rule in css-mode
17352         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
17353         brackets in presence of pseudo-selectors.  (Bug#21328)
17355 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
17357         Fix a bug in recording a macro while flyspell-mode is active
17358         * lisp/subr.el (sit-for): Don't call read-event when recording a
17359         macro.  (Bug#21329)
17361 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
17363         Tweak startup screen quoting
17364         * lisp/startup.el (normal-splash-screen): Use standard
17365         "M-" abbrevation rather than a confusingly-different one.
17366         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
17368 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
17370         Add test case for ‘format’ bug and refactor
17371         * src/editfns.c (styled_format): Refactor internally, mostly by
17372         moving declarations closer to uses.  This should not affect behavior.
17373         * test/automated/textprop-tests.el (textprop-tests-format): New test.
17375         Fix ‘format’ bug with property offsets
17376         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
17377         bug in calculating string property offsets (Bug#21351).
17379         Use straight quotes in lib-src diagnostics
17380         These auxiliary programs can’t use Emacs’s text-quoting-style,
17381         and it’s too much trouble to redo that mechanism by hand.
17382         So just use straight quotes for now.
17383         * lib-src/ebrowse.c (main):
17384         * lib-src/emacsclient.c (decode_options, main):
17385         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
17386         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
17387         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
17388         (none_help, print_language_names, print_help, add_regex)
17389         (suggest_asking_for_help):
17390         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
17391         Use straight quotes in diagnostics.
17393         ‘text-quoting-style’ fixes for admin
17394         * admin/admin.el (cusver-scan, cusver-check):
17395         * admin/authors.el (authors-canonical-file-name):
17396         * admin/bzrmerge.el (bzrmerge-missing):
17397         Respect ‘text-quoting-style’ in diagnostics.
17399 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17401         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
17402         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
17403         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
17404         * doc/lispref/internals.texi (Writing Emacs Primitives):
17405         * etc/NEWS:
17406         Document the change.
17407         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
17408         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
17409         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
17410         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
17411         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
17412         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
17413         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
17414         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
17415         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
17416         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
17417         Remove.  All uses removed.  The code now assumes
17418         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
17419         * src/bytecode.c (relocate_byte_stack):
17420         Rename from unmark_byte_stack, since it now only relocates.
17421         All callers changed.
17422         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
17423         with GCPROs removed.
17424         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
17425         * test/automated/finalizer-tests.el (finalizer-basic)
17426         (finalizer-circular-reference, finalizer-cross-reference)
17427         (finalizer-error):
17428         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
17429         Remove tests, as they depend on gc-precise.
17431 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
17433         Improve seq-concatenate for new sequence types
17434         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
17435         ensure that concatenation happens on sequences only.  This makes it
17436         possible to use `seq-concatenate' for new types of seqs.
17437         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
17438         New function used in `seq-concatenate'.
17439         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
17440         for seq-into-sequence.
17442 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
17444         Add mode local overrides to xref-find-definitions
17445         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
17446         (xref-mode-local-overload): New; add mode local overrides to
17447         xref-find-definitions.
17448         * test/automated/elisp-mode-tests.el: Add mode local override tests.
17449         (xref-elisp-test-run): Handle indented defuns.
17450         (xref-elisp-generic-*): Improve doc strings.
17451         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
17452         (elisp--xref-find-definitions): Use it.
17454         Add mode local overrides to describe-function
17455         * lisp/cedet/mode-local.el (describe-mode-local-overload):
17456         New; add mode local overrides to describe-function.
17457         * etc/NEWS: Document change.
17459 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17461         Prefer straight quoting in some etc text files
17462         These files are plain text and might be used by non-Emacs apps.
17463         They’re mostly ASCII, so just use straight quotes.
17465         Fix quoting in ‘message_with_string’
17466         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
17467         should work now.
17468         * src/xdisp.c (message_to_stderr): New function, refactored from
17469         part of ‘message3_nolog’.
17470         (message3_nolog): Use it.
17471         (message_with_string): Use it.  Don’t mishandle NUL bytes when
17472         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
17473         Use ‘format-message’, not ‘format’, so that quotes are translated.
17475 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
17477         Mention false positives of file-accessible-directory on w32
17478         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
17479         (Bug#21346)
17481 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17483         Treat error strings as help
17484         * src/print.c (print_error_message): Translate quotes and command
17485         keys in errmsg so that users see, e.g., "Symbol’s value as
17486         variable is void: foo" when text-quoting-style is curved.
17488 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
17490         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
17492 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17494         Top-level elisp files respect ‘text-quoting-style’
17495         In top-level elisp files, use format-message in diagnostic formats,
17496         so that they follow user preference as per ‘text-quoting-style’
17497         rather than being hard-coded to quote `like this'.
17498         * lisp/allout.el (allout-get-configvar-values):
17499         * lisp/apropos.el (apropos-symbols-internal):
17500         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
17501         (dired-do-create-files-regexp, dired-create-files-non-directory):
17502         * lisp/dired-x.el (dired-do-run-mail):
17503         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
17504         * lisp/disp-table.el (standard-display-european):
17505         * lisp/find-dired.el (find-dired):
17506         * lisp/forms.el (forms-mode):
17507         * lisp/ido.el (ido-buffer-internal):
17508         * lisp/info.el (Info-index-next):
17509         * lisp/outline.el (outline-invent-heading):
17510         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
17511         * lisp/proced.el (proced-log):
17512         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
17513         * lisp/recentf.el (recentf-open-files, recentf-save-list):
17514         * lisp/savehist.el (savehist-save):
17515         * lisp/server.el (server-ensure-safe-dir):
17516         * lisp/ses.el (ses-rename-cell):
17517         * lisp/simple.el (list-processes--refresh):
17518         * lisp/startup.el (command-line):
17519         * lisp/strokes.el (strokes-unset-last-stroke)
17520         (strokes-execute-stroke):
17521         Use format-message so that quotes are restyled.
17522         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
17523         Don’t quote ‘raised’.
17524         * lisp/descr-text.el (describe-char):
17525         * lisp/dirtrack.el (dirtrack-debug-message):
17526         * lisp/hexl.el (hexl-insert-multibyte-char):
17527         Apply substitute-command-keys to help string.
17528         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
17529         (wdired-do-perm-changes):
17530         Let dired-log do the formatting.
17532 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
17534         Go back to grave quoting in Tramp
17535         * lisp/net/tramp-adb.el:
17536         * lisp/net/tramp-cache.el:
17537         * lisp/net/tramp-compat.el:
17538         * lisp/net/tramp-gvfs.el:
17539         * lisp/net/tramp-gw.el:
17540         * lisp/net/tramp-sh.el:
17541         * lisp/net/tramp-smb.el:
17542         * lisp/net/tramp.el:
17543         Stick with grave quoting in diagnostics strings.  This is more
17544         portable to older Emacs, desirable for Tramp.
17545         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
17546         for diagnostic that needs requoting.
17547         * lisp/net/tramp-compat.el (format-message):
17548         Fall back on simple ‘format’, since that’s good enough now.
17550         Go back to grave quoting in Gnus
17551         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
17552         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
17553         (gnus-agent-fetch-headers):
17554         * lisp/gnus/gnus-int.el (gnus-start-news-server):
17555         * lisp/gnus/gnus-registry.el:
17556         (gnus-registry--split-fancy-with-parent-internal)
17557         (gnus-registry-post-process-groups):
17558         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
17559         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
17560         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
17561         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
17562         * lisp/gnus/spam.el (spam-check-blackholes):
17563         Stick with grave quoting in diagnostics strings.  This is more
17564         portable to older Emacs, desirable for Gnus.
17566         Fix customization of text-quoting-style
17567         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
17568         * lisp/wid-edit.el (widget-docstring):
17569         Get raw docstring here since it’s cooked later and should not be
17570         cooked twice.
17571         * lisp/cus-edit.el (custom-group-value-create):
17572         Cook the docstring before inserting it.
17573         * lisp/cus-start.el (text-quoting-style): Quote the customization
17574         docstrings according to the new rules.  Give curved examples.
17576         format-message now curves ` and '
17577         That way, the caller doesn’t have to use curved quotes to
17578         get diagnostics that match the text-quoting-style preferences.
17579         Suggested by Dmitry Gutov in:
17580         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
17581         This means we no longer need %qs, so remove that format.
17582         While we’re at it, fix an unlikely bug and lessen the pressure
17583         on the garbage collector by processing the string once rather
17584         than twice in the usual case.
17585         * doc/lispref/strings.texi (Formatting Strings):
17586         * etc/NEWS: Document this.
17587         * lisp/subr.el (format-message): Remove; now done in C.
17588         * src/callint.c (Fcall_interactively):
17589         * src/editfns.c (Fmessage, Fmessage_box):
17590         Use Fformat_message instead of Finternal__text_restyle
17591         followed by Fformat.
17592         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
17593         uLSQM and uRSQM.
17594         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
17595         when pure ASCII now suffices.  Fix unlikely bug when parsing
17596         unibyte string containing non-ASCII bytes.  Use inline code
17597         rather than memcpy, as it’s a tiny number of bytes.
17598         (Finternal__text_restyle): Remove; no longer used.
17599         (syms_of_doc): Don’t declare it.
17600         * src/editfns.c (Fformat): Rewrite in terms of new function
17601         ‘styled_format’.
17602         (Fformat_message): New function, moved here from subr.el.
17603         (styled_format): New function, with the old guts of Fformat,
17604         except it now optionally transliterates quotes, and it transliterates
17605         traditional grave accent and apostrophe quoting as well.
17606         Remove recently-added q flag; no longer needed or used.
17607         (syms_of_editfns): Define format-message.
17608         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
17609         Remove; no longer need to be global symbols.
17610         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
17611         so that callers can use `%s'.
17612         * src/image.c (image_size_error, xbm_load_image, xbm_load)
17613         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
17614         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
17615         (svg_load_image, gs_load, x_kill_gs_process):
17616         * src/lread.c (load_warn_old_style_backquotes):
17617         * src/xfaces.c (load_pixmap):
17618         * src/xselect.c (x_clipboard_manager_error_1):
17619         Use `%s' instead of %qs in formats.
17621 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
17623         Minor fixes in doc/emacs/search.texi
17624         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
17625         (Special Isearch): Use @w{} to generate several consecutive spaces
17626         with Texinfo 6.  (Bug#21345)
17628 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
17630         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
17631         (tramp-awk-coding-test): New defconsts.
17632         (tramp-remote-coding-commands): Use them.
17633         (tramp-find-inline-encoding): Check for Perl only if necessary.
17635 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
17637         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
17638         index entries for the special form `quote'.
17640 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
17642         Spelling fixes
17644         Gnus format-message typo fix
17645         * lisp/gnus/gnus-util.el (gnus-format-message):
17646         Fix typo when running in older Emacs.
17648         Prefer directed to neutral quotes in docstings and diagnostics.
17649         In docstrings, escape apostrophes that would otherwise be translated
17650         to curved quotes using the newer, simpler rules.
17651         * admin/unidata/unidata-gen.el (unidata-gen-table):
17652         * lisp/align.el (align-region):
17653         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
17654         * lisp/bookmark.el (bookmark-default-annotation-text):
17655         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
17656         * lisp/calc/calc-lang.el (math-read-giac-subscr)
17657         (math-read-math-subscr):
17658         * lisp/calc/calc-misc.el (report-calc-bug):
17659         * lisp/calc/calc-prog.el (calc-fix-token-name)
17660         (calc-read-parse-table-part):
17661         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
17662         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
17663         * lisp/dabbrev.el (dabbrev-expand):
17664         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
17665         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
17666         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
17667         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
17668         * lisp/erc/erc-button.el (erc-nick-popup):
17669         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
17670         * lisp/eshell/em-dirs.el (eshell/cd):
17671         * lisp/eshell/em-glob.el (eshell-glob-regexp):
17672         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
17673         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
17674         * lisp/eshell/esh-opt.el (eshell-show-usage):
17675         * lisp/files-x.el (modify-file-local-variable):
17676         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
17677         (filesets-update-pre010505):
17678         * lisp/find-cmd.el (find-generic, find-to-string):
17679         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
17680         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
17681         (gnus-agent-fetch-headers):
17682         * lisp/gnus/gnus-int.el (gnus-start-news-server):
17683         * lisp/gnus/gnus-registry.el:
17684         (gnus-registry--split-fancy-with-parent-internal):
17685         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
17686         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
17687         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
17688         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
17689         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
17690         * lisp/gnus/spam.el (spam-check-blackholes):
17691         * lisp/mail/feedmail.el (feedmail-run-the-queue):
17692         * lisp/mpc.el (mpc-playlist-rename):
17693         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
17694         * lisp/net/mairix.el (mairix-widget-create-query):
17695         * lisp/net/tramp-cache.el:
17696         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
17697         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
17698         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
17699         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
17700         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
17701         (org-babel-goto-named-result):
17702         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
17703         * lisp/org/ob-ref.el (org-babel-ref-resolve):
17704         * lisp/org/org-agenda.el (org-agenda-prepare):
17705         * lisp/org/org-bibtex.el (org-bibtex-fields):
17706         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
17707         (org-clock-resolve):
17708         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
17709         * lisp/org/org-habit.el (org-habit-parse-todo):
17710         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
17711         (org-mouse-context-menu):
17712         * lisp/org/org-table.el (org-table-edit-formulas):
17713         * lisp/org/ox.el (org-export-async-start):
17714         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
17715         (dun-rooms, dun-endgame-questions):
17716         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
17717         * lisp/progmodes/ada-xref.el (ada-find-executable):
17718         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
17719         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
17720         (flymake-start-syntax-check-process):
17721         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
17722         * lisp/progmodes/sql.el (sql-comint):
17723         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
17724         * lisp/server.el (server-get-auth-key):
17725         * lisp/subr.el (version-to-list):
17726         * lisp/textmodes/reftex-ref.el (reftex-label):
17727         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
17728         * lisp/vc/ediff-diff.el (ediff-same-contents):
17729         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
17730         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
17731         Use directed rather than neutral quotes in diagnostics.
17733         Treat ' like ’ even when not matching `
17734         This is simpler and easier to explain, and should encourage better
17735         typography.  Do this in Electric Quote mode and when translating
17736         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
17737         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
17738         * doc/emacs/text.texi (Quotation Marks):
17739         * doc/lispref/help.texi (Keys in Documentation):
17740         * etc/NEWS:
17741         Document this.
17742         * lisp/electric.el (electric-quote-post-self-insert-function):
17743         * src/doc.c (Fsubstitute_command_keys):
17744         Always treat ' like ’ even when not matched by an open quote.
17746 2015-08-25  Glenn Morris  <rgm@gnu.org>
17748         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
17749         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
17751 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17753         * src/macfont.m (macfont_create_family_with_symbol):
17754         Accept localized names.
17756 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
17758         Tramp diagnostics as per ‘text-quoting-style’
17759         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
17760         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
17761         (tramp-adb-handle-delete-directory)
17762         (tramp-adb-handle-delete-file)
17763         (tramp-adb-handle-file-local-copy)
17764         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
17765         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
17766         (tramp-adb-maybe-open-connection):
17767         * lisp/net/tramp-cache.el:
17768         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
17769         (tramp-compat-octal-to-decimal)
17770         (tramp-compat-coding-system-change-eol-conversion):
17771         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
17772         (tramp-gvfs-do-copy-or-rename-file)
17773         (tramp-gvfs-handle-delete-directory)
17774         (tramp-gvfs-handle-delete-file)
17775         (tramp-gvfs-handle-expand-file-name)
17776         (tramp-gvfs-handle-file-local-copy)
17777         (tramp-gvfs-handle-file-notify-add-watch)
17778         (tramp-gvfs-handle-make-directory)
17779         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
17780         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
17781         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
17782         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
17783         (tramp-sh-handle-set-visited-file-modtime)
17784         (tramp-sh-handle-set-file-modes)
17785         (tramp-sh-handle-file-name-all-completions)
17786         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
17787         (tramp-do-copy-or-rename-file-directly)
17788         (tramp-do-copy-or-rename-file-out-of-band)
17789         (tramp-sh-handle-make-directory)
17790         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
17791         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
17792         (tramp-sh-handle-start-file-process)
17793         (tramp-sh-handle-file-local-copy)
17794         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
17795         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
17796         (tramp-find-file-exists-command, tramp-open-shell)
17797         (tramp-find-shell)
17798         (tramp-open-connection-setup-interactive-shell)
17799         (tramp-find-inline-encoding, tramp-find-inline-compress)
17800         (tramp-compute-multi-hops, tramp-maybe-open-connection)
17801         (tramp-wait-for-output, tramp-send-command-and-check)
17802         (tramp-send-command-and-read, tramp-get-remote-path)
17803         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
17804         (tramp-get-ls-command-with-quoting-style)
17805         (tramp-get-test-command, tramp-get-remote-ln)
17806         (tramp-get-remote-perl, tramp-get-remote-stat)
17807         (tramp-get-remote-readlink, tramp-get-remote-trash)
17808         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
17809         (tramp-get-remote-inotifywait, tramp-get-remote-id)
17810         (tramp-get-remote-python):
17811         * lisp/net/tramp-smb.el (tramp-smb-errors)
17812         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
17813         (tramp-smb-handle-delete-directory)
17814         (tramp-smb-handle-delete-file)
17815         (tramp-smb-handle-file-local-copy)
17816         (tramp-smb-handle-make-directory)
17817         (tramp-smb-handle-make-directory-internal)
17818         (tramp-smb-handle-make-symbolic-link)
17819         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
17820         (tramp-smb-handle-set-file-modes)
17821         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
17822         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
17823         (tramp-process-actions):
17824         Generate diagnostics according to ‘text-quoting-style’, by
17825         using curved quotes in format strings and ‘format-message’
17826         when appropriate.
17827         * lisp/net/tramp-compat.el (format-message):
17828         Define a replacement, if it’s an older version of Emacs
17829         that doesn’t have it already.
17831         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
17833 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
17835         Fix documentation for `save-excursion'
17836         * doc/lispref/positions.texi (Excursions):
17837         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
17838         (Template for save-excursion, Point and mark): `save-excursion'
17839         does not save&restore the mark any more.
17841 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
17843         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
17844         New defconsts.
17845         (tramp-do-file-attributes-with-stat)
17846         (tramp-do-directory-files-and-attributes-with-stat): Use them.
17847         (tramp-convert-file-attributes): Remove double slashes in symlinks.
17848         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
17849         Handle symlinks with "//" in the file name.
17851         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
17853 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
17855         Fix cl-subseq and cl-concatenate
17856         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
17857         seq functions.
17858         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
17859         seq-concatenate.
17861 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
17863         Fix full-screen code when there is no window manager (Bug#21317)
17864         * src/xterm.h (x_wm_supports): Declare external.
17865         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
17866         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
17867         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
17868         `fullscreen' frame parameter.
17869         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
17870         without a window manager.
17872 2015-08-24  Glenn Morris  <rgm@gnu.org>
17874         * lisp/version.el (emacs-version): No longer include build host.
17875         * doc/lispref/intro.texi (Version Info): Update example.
17877 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
17879         * doc/lispref/elisp.texi: Fix typo in previous change.
17881         More-conservative ‘format’ quote restyling
17882         Instead of restyling curved quotes for every call to ‘format’,
17883         create a new function ‘format-message’ that does the restyling,
17884         and using the new function instead of ‘format’ only in contexts
17885         where this seems appropriate.
17886         Problem reported by Dmitry Gutov and Andreas Schwab in:
17887         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
17888         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
17889         * doc/lispref/commands.texi (Using Interactive):
17890         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
17891         * doc/lispref/display.texi (Displaying Messages, Progress):
17892         * doc/lispref/elisp.texi:
17893         * doc/lispref/help.texi (Keys in Documentation):
17894         * doc/lispref/minibuf.texi (Minibuffer Misc):
17895         * doc/lispref/strings.texi (Formatting Strings):
17896         * etc/NEWS:
17897         Document the changes.
17898         * lisp/abbrev.el (expand-region-abbrevs):
17899         * lisp/apropos.el (apropos-library):
17900         * lisp/calc/calc-ext.el (calc-record-message)
17901         (calc-user-function-list):
17902         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
17903         * lisp/calc/calc-lang.el (math-read-big-balance):
17904         * lisp/calc/calc-store.el (calc-edit-variable):
17905         * lisp/calc/calc-units.el (math-build-units-table-buffer):
17906         * lisp/calc/calc-yank.el (calc-edit-mode):
17907         * lisp/calendar/icalendar.el (icalendar-export-region)
17908         (icalendar--add-diary-entry):
17909         * lisp/cedet/mode-local.el (mode-local-print-binding)
17910         (mode-local-describe-bindings-2):
17911         * lisp/cedet/semantic/complete.el (semantic-completion-message):
17912         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
17913         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
17914         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
17915         * lisp/descr-text.el (describe-text-properties-1, describe-char):
17916         * lisp/dframe.el (dframe-message):
17917         * lisp/dired-aux.el (dired-query):
17918         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
17919         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
17920         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
17921         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
17922         (cconv-analyze-form):
17923         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
17924         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
17925         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
17926         * lisp/emacs-lisp/edebug.el (edebug-format):
17927         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
17928         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
17929         (eldoc-message):
17930         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
17931         * lisp/emacs-lisp/find-func.el (find-function-library):
17932         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
17933         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
17934         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
17935         * lisp/emacs-lisp/package.el (package-compute-transaction)
17936         (package-install-button-action, package-delete-button-action)
17937         (package-menu--list-to-prompt):
17938         * lisp/emacs-lisp/timer.el (timer-event-handler):
17939         * lisp/emacs-lisp/warnings.el (lwarn, warn):
17940         * lisp/emulation/viper-cmd.el:
17941         (viper-toggle-parse-sexp-ignore-comments)
17942         (viper-kill-buffer, viper-brac-function):
17943         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
17944         * lisp/facemenu.el (facemenu-add-new-face):
17945         * lisp/faces.el (face-documentation, read-face-name)
17946         (face-read-string, read-face-font, describe-face):
17947         * lisp/files.el (find-alternate-file, hack-local-variables)
17948         (hack-one-local-variable--obsolete, write-file)
17949         (basic-save-buffer, delete-directory):
17950         * lisp/format.el (format-write-file, format-find-file)
17951         (format-insert-file):
17952         * lisp/help-fns.el (help-fns--key-bindings)
17953         (help-fns--compiler-macro, help-fns--obsolete)
17954         (help-fns--interactive-only, describe-function-1)
17955         (describe-variable):
17956         * lisp/help.el (describe-mode):
17957         * lisp/info-xref.el (info-xref-output):
17958         * lisp/info.el (Info-virtual-index-find-node)
17959         (Info-virtual-index, info-apropos):
17960         * lisp/international/kkc.el (kkc-error):
17961         * lisp/international/mule-cmds.el:
17962         (select-safe-coding-system-interactively)
17963         (select-safe-coding-system, describe-input-method):
17964         * lisp/international/mule-conf.el (code-offset):
17965         * lisp/international/mule-diag.el (describe-character-set)
17966         (list-input-methods-1):
17967         * lisp/international/quail.el (quail-error):
17968         * lisp/minibuffer.el (minibuffer-message):
17969         * lisp/mpc.el (mpc--debug):
17970         * lisp/msb.el (msb--choose-menu):
17971         * lisp/net/ange-ftp.el (ange-ftp-message):
17972         * lisp/net/gnutls.el (gnutls-message-maybe):
17973         * lisp/net/newst-backend.el (newsticker--sentinel-work):
17974         * lisp/net/newst-treeview.el (newsticker--treeview-load):
17975         * lisp/net/nsm.el (nsm-query-user):
17976         * lisp/net/rlogin.el (rlogin):
17977         * lisp/net/soap-client.el (soap-warning):
17978         * lisp/net/tramp.el (tramp-debug-message):
17979         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
17980         * lisp/nxml/nxml-parse.el (nxml-parse-error):
17981         * lisp/nxml/rng-cmpct.el (rng-c-error):
17982         * lisp/nxml/rng-match.el (rng-compile-error):
17983         * lisp/nxml/rng-uri.el (rng-uri-error):
17984         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
17985         * lisp/org/org-ctags.el:
17986         (org-ctags-ask-rebuild-tags-file-then-find-tag):
17987         * lisp/proced.el (proced-log):
17988         * lisp/progmodes/ebnf2ps.el (ebnf-log):
17989         * lisp/progmodes/flymake.el (flymake-log):
17990         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
17991         * lisp/replace.el (occur-1):
17992         * lisp/simple.el (execute-extended-command)
17993         (undo-outer-limit-truncate, define-alternatives):
17994         * lisp/startup.el (command-line):
17995         * lisp/subr.el (error, user-error, add-to-list):
17996         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
17997         (tutorial--find-changed-keys):
17998         * src/callint.c (Fcall_interactively):
17999         * src/editfns.c (Fmessage, Fmessage_box):
18000         Restyle the quotes of format strings intended for use as a
18001         diagnostic, when restyling seems appropriate.
18002         * lisp/subr.el (format-message): New function.
18003         * src/doc.c (Finternal__text_restyle): New function.
18004         (syms_of_doc): Define it.
18006 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
18008         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
18010 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18012         python.el: Fix python-shell-buffer-substring on indented code
18013         (Bug#21086)
18014         * lisp/progmodes/python.el (python-shell-buffer-substring):
18015         Respect current line indentation when calculating string.
18016         * test/automated/python-tests.el
18017         (python-shell-buffer-substring-10)
18018         (python-shell-buffer-substring-11)
18019         (python-shell-buffer-substring-12): New tests.
18021 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
18023         Fix minor glitches from ‘format’ reversion
18024         * doc/lispref/strings.texi (Formatting Strings):
18025         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
18026         Documentation’, not below.
18027         * src/syntax.c (Finternal_describe_syntax_value):
18028         Prefer AUTO_STRING to build_string where either will do, as
18029         AUTO_STRING is a bit faster.
18031 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18033         python.el: Defer shell setup code until first interactive prompt
18034         * lisp/progmodes/python.el
18035         (python-shell-comint-watch-for-first-prompt-output-filter):
18036         New function.
18037         (inferior-python-mode): Use it.
18038         (python-shell-first-prompt-hook): New hook.
18039         (python-shell-send-setup-code)
18040         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
18041         this hook instead of inferior-python-hook.
18043 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
18045         Remove the calls to `seq-into` from `seq-concatenate`
18046         Since most new types of seq would have to be defined as sequences (cons
18047         cells or CL structs, mostly), there is no need to convert the seqs to
18048         sequences (which can be a fairly expensive operation).
18049         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
18050         sequences.
18052 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18054         python.el: Fix completion for pdb interactions
18055         * lisp/progmodes/python.el (python-shell-completion-setup-code):
18056         Simplify.  Toggle print_mode for native wrapped completer.
18057         (python-shell-completion-native-setup): Ensure process buffer.
18058         Add print_mode attribute to completer wrapper to toggle returning
18059         or printing candidates.
18060         (python-shell-completion-native-get-completions): Cleanup.
18061         (python-shell-completion-get-completions): Cleanup.
18062         (python-shell-completion-at-point): Perform prompt checks.
18063         Force fallback completion in pdb interactions.
18065 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
18067         Make seq.el more extensible by using cl-defmethod
18068         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
18069         make it easier to extend seq.el with new "seq types".
18070         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
18071         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
18072         subseq in cl-extra.el, and use it in seq.el.
18074 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18076         python.el: Fix prompt detection with user overridden interpreter
18077         * lisp/progmodes/python.el (python-shell-prompt-detect):
18078         Honor buffer local python-shell-interpreter and
18079         python-shell-interpreter-interactive-arg.
18081 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
18083         Support exec-directory with non-ASCII characters on Windows
18084         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
18085         in the system's ANSI codepage, when it is used for invoking
18086         cmdproxy.
18088 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
18090         Revert "Extend ‘format’ to translate curved quotes"
18091         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
18093         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
18094         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
18096 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
18098         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
18099         Clarify "invisible window".
18101 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
18103         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
18104         magic-fallback-mode-alist.
18106 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18108         python.el: fallback completion, ffap and eldoc setup enhancements
18109         Setup codes are now sent continuously so that the current frame is
18110         always taken into account.  This allows working within debuggers
18111         and always keeping a fresh version of setup codes that will return
18112         proper results.
18113         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
18114         (python-shell-send-setup-code): Send code only when
18115         python-shell-setup-codes is non-nil.
18116         (python-shell-completion-string-code): Cleanup trailing newline.
18117         (python-shell-completion-get-completions): Always use
18118         python-shell-completion-setup-code.
18119         (python-ffap-setup-code): Work with any object, not only modules.
18120         (python-ffap-string-code): Cleanup trailing newline.
18121         (python-ffap-module-path): Always use python-ffap-setup-code.
18122         (python-eldoc-string-code): Cleanup trailing newline.
18123         (python-eldoc--get-doc-at-point): Always use
18124         python-eldoc-setup-code.  Return non-nil only if docstring is
18125         found.
18127         python.el: Increase native completion robustness
18128         * lisp/progmodes/python.el (python-shell-completion-native-setup):
18129         Make completer print real candidates and just return dummy ones to
18130         avoid input modification.
18131         (python-shell-completion-native-get-completions): Set
18132         comint-redirect-insert-matching-regexp to non-nil and make
18133         comint-redirect-finished-regexp match the last dummy candidate.
18134         Use python-shell-accept-process-output to wait for the full list
18135         of candidates.
18137 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
18139         Fix invocation of programs via cmdproxy.exe
18140         * src/w32proc.c (sys_spawnve): Use exec-directory, not
18141         invocation-directory, for finding cmdproxy.exe.  When Emacs is
18142         run from the source tree, look for cmdproxy.exe in the same source
18143         tree.  (Bug#21323)
18145 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
18147         Handle comments inside unquoted URIs in css-mode
18148         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
18149         (css-syntax-propertize-function): New defconst.
18150         (css--font-lock-keywords): Handle parens around unquoted URIs.
18151         (css-mode): Set `syntax-propertize-function'.
18153 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
18155         Support invocation of Hunspell with multiple dictionaries
18156         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
18157         Support lists of dictionaries of the form "DICT1,DICT2,...".
18158         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
18160         Minor formatting changes in ispell.el
18161         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
18162         (ispell-print-if-debug, ispell-aspell-find-dictionary)
18163         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
18164         (ispell-hunspell-dictionary-alist)
18165         (ispell-hunspell-fill-dictionary-entry)
18166         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
18167         (ispell-buffer-with-debug, ispell-complete-word)
18168         (ispell-current-dictionary, ispell-current-personal-dictionary)
18169         (ispell-accept-output, ispell-minor-mode)
18170         (ispell-personal-dictionary, ispell-dictionary-alist)
18171         (ispell-really-aspell, ispell-really-hunspell)
18172         (ispell-encoding8-command, ispell-aspell-supports-utf8)
18173         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
18174         Fix whitespace, inconsistent capitalization, and arguments in doc
18175         strings.
18177 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
18179         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
18180         function refused to resize a size-preserved window.
18182 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
18184         * doc/lispref/windows.texi (Selecting Windows): Improve
18185         documentation and indexing of 'window-use-time'.
18187 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18189         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
18190         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
18191         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
18192         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
18193         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
18194         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
18195         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
18196         Fix up commenting style.
18198 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18200         text-quoting-style in emacs-lisp diagnostics
18201         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
18202         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
18203         (ad-disable-advice, ad-remove-advice, ad-set-argument)
18204         (ad-set-arguments):
18205         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
18206         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
18207         (byte-optimize-while, byte-optimize-apply):
18208         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
18209         (byte-compile-log-file, byte-compile-format-warn)
18210         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
18211         (byte-compile-cl-warn)
18212         (byte-compile-warn-about-unresolved-functions)
18213         (byte-compile-file, byte-compile-fix-header)
18214         (byte-compile--declare-var, byte-compile-file-form-defmumble)
18215         (byte-compile-form, byte-compile-normal-call)
18216         (byte-compile-variable-ref, byte-compile-variable-set)
18217         (byte-compile-subr-wrong-args, byte-compile-setq-default)
18218         (byte-compile-negation-optimizer)
18219         (byte-compile-condition-case--old)
18220         (byte-compile-condition-case--new, byte-compile-save-excursion)
18221         (byte-compile-defvar, byte-compile-autoload)
18222         (byte-compile-lambda-form)
18223         (byte-compile-make-variable-buffer-local, display-call-tree)
18224         (batch-byte-compile):
18225         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
18226         (cconv-analyze-form):
18227         * lisp/emacs-lisp/chart.el (chart-space-usage):
18228         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
18229         (check-declare-warn, check-declare-file)
18230         (check-declare-directory):
18231         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
18232         (checkdoc-message-text-engine):
18233         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
18234         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
18235         (cl-symbol-macrolet):
18236         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
18237         * lisp/emacs-lisp/copyright.el (copyright)
18238         (copyright-update-directory):
18239         * lisp/emacs-lisp/edebug.el (edebug-read-list):
18240         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
18241         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
18242         (eieio-oref, eieio-oset-default):
18243         * lisp/emacs-lisp/eieio-speedbar.el:
18244         (eieio-speedbar-child-make-tag-lines)
18245         (eieio-speedbar-child-description):
18246         * lisp/emacs-lisp/eieio.el (defclass, change-class):
18247         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
18248         (elint-init-form, elint-check-defalias-form)
18249         (elint-check-let-form):
18250         * lisp/emacs-lisp/ert.el (ert-get-test):
18251         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
18252         (find-function-library):
18253         * lisp/emacs-lisp/generator.el (iter-yield):
18254         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
18255         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
18256         * lisp/emacs-lisp/package-x.el (package-upload-file):
18257         * lisp/emacs-lisp/package.el (package-version-join)
18258         (package-disabled-p, package-activate-1, package-activate)
18259         (package--download-one-archive)
18260         (package--download-and-read-archives)
18261         (package-compute-transaction, package-install-from-archive)
18262         (package-install, package-install-selected-packages)
18263         (package-delete, package-autoremove)
18264         (package-install-button-action, package-delete-button-action)
18265         (package-menu-hide-package, package-menu--list-to-prompt)
18266         (package-menu--perform-transaction)
18267         (package-menu--find-and-notify-upgrades):
18268         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
18269         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
18270         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
18271         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
18272         * lisp/emacs-lisp/smie.el (smie-config-save):
18273         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
18274         * lisp/emacs-lisp/testcover.el (testcover-1value):
18275         Use curved quotes in diagnostic format strings.
18277 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18279         python.el: Ensure remote process-environment on non-interactive processes
18280         * lisp/progmodes/python.el
18281         (python-shell-tramp-refresh-process-environment): New function.
18282         (python-shell-with-environment): Use it.
18283         * test/automated/python-tests.el (python-shell-with-environment-2):
18284         Update.
18286         python.el: Enhancements to process environment setup.
18287         * lisp/progmodes/python.el (python-shell-process-environment)
18288         (python-shell-extra-pythonpaths, python-shell-exec-path)
18289         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
18290         (python-shell-setup-codes): Remove :safe.
18291         (python-shell-remote-exec-path): New defcustom.
18292         (python-shell--add-to-path-with-priority): New macro.
18293         (python-shell-calculate-pythonpath): Give priority to
18294         python-shell-extra-pythonpaths.  Update docstring.
18295         (python-shell-calculate-process-environment): Give priority to
18296         python-shell-process-environment.  Update docstring.
18297         (python-shell-calculate-exec-path): Give priority to
18298         python-shell-exec-path and calculated virtualenv bin directory.
18299         Update docstring.
18300         (python-shell-tramp-refresh-remote-path): New function.
18301         (python-shell-with-environment): Use it when working remotely and
18302         do not modify tramp-remote-path.  Allow nesting.
18303         (python-shell-calculate-command): Remove useless
18304         python-shell-with-environment call.
18305         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
18306         (python-shell-calculate-pythonpath-2)
18307         (python-shell-calculate-process-environment-6)
18308         (python-shell-calculate-process-environment-7)
18309         (python-shell-calculate-process-environment-8)
18310         (python-shell-calculate-exec-path-3)
18311         (python-shell-calculate-exec-path-4)
18312         (python-shell-calculate-exec-path-5)
18313         (python-shell-calculate-exec-path-6)
18314         (python-shell-with-environment-3): New tests.
18315         (python-shell-calculate-process-environment-2)
18316         (python-shell-calculate-process-environment-3)
18317         (python-shell-calculate-process-environment-4)
18318         (python-shell-calculate-process-environment-5)
18319         (python-shell-calculate-exec-path-1)
18320         (python-shell-calculate-exec-path-2)
18321         (python-shell-with-environment-1)
18322         (python-shell-with-environment-2): Update and simplify.
18324 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18326         Avoid hard-coding "M-x command" in docstrings
18327         * lisp/calendar/todo-mode.el (todo-mode):
18328         * lisp/desktop.el (desktop-save-mode):
18329         * lisp/edmacro.el (edit-kbd-macro):
18330         * lisp/emacs-lisp/package.el (package-menu-execute):
18331         * lisp/emulation/viper-cmd.el (viper-ask-level):
18332         * lisp/emulation/viper-init.el (viper-expert-level):
18333         * lisp/filesets.el (filesets-add-buffer):
18334         * lisp/follow.el (follow-mode):
18335         * lisp/gnus/auth-source.el (auth-sources):
18336         * lisp/international/ogonek.el (ogonek-informacja)
18337         (ogonek-information):
18338         * lisp/net/tramp.el (tramp-process-actions):
18339         * lisp/org/org-gnus.el (org-gnus-no-new-news):
18340         * lisp/org/org.el (org-ellipsis):
18341         * lisp/progmodes/python.el (python-shell-get-process-or-error):
18342         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
18343         * lisp/server.el (server-start):
18344         * lisp/type-break.el (type-break-noninteractive-query):
18345         * lisp/userlock.el (ask-user-about-supersession-help):
18346         * lisp/whitespace.el (whitespace-report-region):
18347         Prefer (substitute-command-keys "`\\[foo-command]'")
18348         to "`M-x foo-command'" in docstrings and the like.
18350 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
18352         Use add-function for prettify-symbols-compose-predicate
18353         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
18354         prettify-symbols-compose-predicate in terms of add-function.
18355         * etc/NEWS: Mention prettify-symbols-compose-predicate and
18356         prettify-symbols-mode support in tex-mode.
18358 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18360         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
18361         (smie-indent-exps, smie-indent-keyword): Use it.
18362         * test/indent/css-mode.css: Test alignment with leading comment.
18364 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18366         Respect text-quoting-style in (*Finder*) menus
18367         * lisp/info.el (info--prettify-description):
18368         Treat description as a docstring, so that it's requoted as
18369         per text-quoting-style.
18371 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
18373         Document `window-use-time' in Elisp manual
18374         * doc/lispref/windows.texi (Selecting Windows): Document
18375         `window-use-time'.
18377 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18379         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
18380         This is a cleaner fix for Bug#21260 than the previous change.
18382 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18384         Respect text-quoting-style in calc
18385         In calc, tespect text-quoting-style preference in diagnostic
18386         formats and fix a few similar problems in docstrings.
18387         * lisp/calc/calc-aent.el (math-read-factor):
18388         * lisp/calc/calc-embed.el (calc-do-embedded):
18389         * lisp/calc/calc-ext.el (calc-user-function-list)
18390         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
18391         * lisp/calc/calc-help.el (calc-describe-key)
18392         (calc-describe-thing):
18393         * lisp/calc/calc-lang.el (calc-c-language)
18394         (math-parse-fortran-vector-end, math-parse-tex-sum)
18395         (math-parse-eqn-matrix, math-parse-eqn-prime)
18396         (calc-yacas-language, calc-maxima-language, calc-giac-language)
18397         (math-read-big-rec, math-read-big-balance):
18398         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
18399         (calc-auto-recompute):
18400         * lisp/calc/calc-prog.el (calc-user-define-invocation)
18401         (math-do-arg-check):
18402         * lisp/calc/calc-store.el (calc-edit-variable):
18403         * lisp/calc/calc-units.el (math-build-units-table-buffer):
18404         * lisp/calc/calc-vec.el (math-read-brackets):
18405         * lisp/calc/calc-yank.el (calc-edit-mode):
18406         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
18407         Use curved quotes in diagnostic format strings.
18408         * lisp/calc/calc-help.el (calc-describe-thing):
18409         Format docstrings with substitute-command-keys.
18410         * lisp/calc/calc-help.el (calc-j-prefix-help):
18411         * lisp/calc/calc-misc.el (calc-help):
18412         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
18413         Escape a docstring "`".
18415 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18417         Fix documentation of 'menu-set-font' and 'set-frame-font'
18418         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
18419         * doc/lispref/frames.texi (Frame Font): Document that
18420         set-frame-font with the last argument 't' will also make the font
18421         the default for the future GUI frames.
18423         Document '--create-frame' option to emacsclient
18424         * doc/emacs/misc.texi (emacsclient Options): Document the
18425         '--create-frame' option.  (Bug#21308)
18427 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18429         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
18431 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18433         Document 'get-mru-window' in the ELisp manual
18434         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
18435         'get-mru-window'.  (Bug#21306)
18437         Clarify documentation of 'get-buffer-window-list'
18438         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
18439         current window, if relevant, will be the first in the list
18440         returned by 'get-buffer-window-list'.
18441         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
18443 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
18445         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
18446         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
18447         `switch-to-buffer'.
18449 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
18451         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
18452         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
18453         `display-buffer' instead of `switch-to-buffer'.
18455 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18457         Follow user preference in calendar diagnostics
18458         Respect text-quoting-style preference in diagnostic formats by
18459         using curved quotes (which are translated as per text-quoting-style)
18460         instead of grave accent and apostrophe (which are not).
18461         * lisp/calendar/appt.el (appt-display-message):
18462         * lisp/calendar/diary-lib.el (diary-check-diary-file)
18463         (diary-mail-entries, diary-from-outlook):
18464         * lisp/calendar/icalendar.el (icalendar-export-region)
18465         (icalendar--convert-float-to-ical)
18466         (icalendar--convert-date-to-ical)
18467         (icalendar--convert-ical-to-diary)
18468         (icalendar--convert-recurring-to-diary)
18469         (icalendar--add-diary-entry):
18470         * lisp/calendar/time-date.el (format-seconds):
18471         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
18472         (timeclock-make-hours-explicit):
18473         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
18474         (todo-item-mark, todo-check-format)
18475         (todo-insert-item--next-param, todo-edit-item--next-key)
18476         (todo-mode):
18477         Use curved quotes in diagnostic format strings.
18478         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
18479         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
18480         Just use straight quoting for simple test case.
18482 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
18484         * src/gfilenotify.c (Fgfile_add_watch):
18485         Handle errors from g_file_monitor.
18487 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
18489         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
18490         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
18491         frame" instead of "non-minibuffer frame".
18493         Fix frame geometry related text
18494         * doc/lispref/frames.texi (Frame Layout):
18495         Rename `x-frame-geometry' to `frame-geometry'.
18496         * doc/lispref/frames.texi (Mouse Position):
18497         * doc/lispref/windows.texi (Coordinates and Windows):
18498         Use `set-mouse-absolute-pixel-position' instead of
18499         `x-set-mouse-absolute-pixel-position'.
18501         Sanitize frame geometry related functions
18502         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
18503         (Fx_frame_edges): Rename to Fns_frame_edges.
18504         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
18505         (Fx_frame_edges): Rename to Fw32_frame_edges.
18506         (Fx_mouse_absolute_pixel_position): Rename to
18507         Fw32_mouse_absolute_pixel_position.
18508         (Fx_set_mouse_absolute_pixel_position): Rename to
18509         Fw32_set_mouse_absolute_pixel_position.
18510         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
18511         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
18512         (ns-frame-edges, w32-mouse-absolute-pixel-position)
18513         (x-mouse-absolute-pixel-position)
18514         (w32-set-mouse-absolute-pixel-position)
18515         (x-set-mouse-absolute-pixel-position): Declare.
18516         (frame-geometry, mouse-absolute-pixel-position)
18517         (set-mouse-absolute-pixel-position): New functions.
18518         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
18520 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18522         Fix MinGW64 build broken by latest w32uniscribe.c changes
18523         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
18524         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
18525         (Bug#21260)
18527 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
18529         Add TeX defaults for prettify-symbol-mode
18530         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18531         Rename from tex-prettify-symbols-alist.
18532         (tex--prettify-symbols-compose-p): New function.
18533         (tex-common-initialization): Use them as prettify-symbols-alist
18534         and prettify-symbols-compose-predicate.
18536         Generalize prettify-symbols to arbitrary modes
18537         * lisp/progmodes/prog-mode.el
18538         (prettify-symbols-default-compose-p): New function.
18539         (prettify-symbols-compose-predicate): New variable.
18540         (prettify-symbols--compose-symbol): Use it.
18542 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
18544         Don't quote symbols 'like-this' in docstrings etc.
18545         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
18546         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
18547         * lisp/allout.el (allout-add-resumptions, allout-mode):
18548         * lisp/calculator.el (calculator-operators):
18549         * lisp/cedet/data-debug.el (dd-propertize):
18550         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
18551         * lisp/cedet/semantic/analyze/debug.el:
18552         (semantic-analyzer-debug-global-miss-text):
18553         * lisp/cedet/semantic/lex-spp.el:
18554         (semantic-lex-spp-replace-or-symbol-or-keyword):
18555         * lisp/cedet/semantic/symref.el:
18556         (semantic-symref-cleanup-recent-buffers-fcn):
18557         * lisp/cedet/semantic/tag.el (semantic-tag-class):
18558         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
18559         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
18560         * lisp/gnus/pop3.el (pop3-authentication-scheme):
18561         * lisp/help-fns.el (describe-function-orig-buffer):
18562         * lisp/imenu.el (imenu--history-list):
18563         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
18564         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
18565         (feedmail-queue-default-file-slug)
18566         (feedmail-queue-buffer-file-name):
18567         * lisp/net/mairix.el (mairix-searches-mode-map):
18568         * lisp/net/newst-backend.el (newsticker-retrieval-method)
18569         (newsticker-auto-mark-filter-list):
18570         * lisp/obsolete/vi.el (vi-mode):
18571         * lisp/progmodes/cc-engine.el (c-literal-type):
18572         * lisp/progmodes/cpp.el (cpp-face):
18573         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
18574         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
18575         * lisp/progmodes/pascal.el (pascal-auto-lineup):
18576         * lisp/progmodes/prog-mode.el (prog-widen):
18577         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
18578         (verilog-auto-lineup, verilog-auto-reset-widths)
18579         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
18580         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
18581         (flyspell-maybe-correct-doubling):
18582         * lisp/textmodes/table.el (table-justify, table-justify-cell)
18583         (table-justify-row, table-justify-column, table-insert-sequence)
18584         (table--justify-cell-contents):
18585         * lisp/url/url-auth.el (url-get-authentication):
18586         * lisp/window.el (display-buffer-record-window):
18587         * lisp/xml.el (xml-parse-file, xml-parse-region):
18588         * src/gfilenotify.c (Fgfile_add_watch):
18589         Don't quote symbols with apostrophes in doc strings.
18590         Use asymmetric quotes instead.
18591         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
18592         Likewise for symbol in diagnostic.
18593         * lisp/image.el (image-extension-data):
18594         * lisp/register.el (frame-configuration-to-register):
18595         * src/buffer.c (syms_of_buffer):
18596         Remove bogus apostrophes after symbols.
18597         * lisp/thumbs.el (thumbs-conversion-program):
18598         Quote Lisp string values using double-quotes, not apostrophes.
18600 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
18602         Describe frame geometry and related functions in Elisp manual
18603         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
18604         (Showing Images): Update references.
18605         * doc/lispref/elisp.texi (Top): Update node listing.
18606         * doc/lispref/frames.texi (Frame Geometry): New node.
18607         Move `Size and Position' section here.
18608         (Size Parameters): Update references.
18609         (Mouse Position): Update references and nomenclature.
18610         Describe new functions `x-mouse-absolute-pixel-position' and
18611         `x-set-mouse-absolute-pixel-position'.
18612         * doc/lispref/windows.texi (Window Sizes): Update references.
18613         (Resizing Windows): Update references.  Move description of
18614         `fit-frame-to-buffer' here.
18615         (Coordinates and Windows): Update nomenclature and references.
18616         Describe new arguments of `window-edges'.  Comment out
18617         descriptions of `window-left-column', `window-top-line',
18618         `window-pixel-left' and `window-pixel-top'.  Describe
18619         `window-absolute-pixel-position'.
18621 2015-08-20  Alan Mackenzie  <acm@muc.de>
18623         Handling of `c-parse-state'.  Fix low level bug.
18624         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
18625         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
18627 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
18629         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
18630         window instead of deleting it.
18632 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
18634         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
18635         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
18636         determine whether frame has a titlebar.
18637         Suggested by Eli Zaretskii <eliz@gnu.org>
18639 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
18641         Add a prettify-symbols-alist for (La)TeX
18642         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
18643         New variable holding an alist suitable as prettify-symbols-alist in
18644         (La)TeX modes.
18646 2015-08-19  Alan Mackenzie  <acm@muc.de>
18648         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
18649         Fixes debbugs#21275.
18650         In Emacs >= 25, let electric-pair-mode take precedence over
18651         delete-selection-mode.
18652         * lisp/delsel.el (delete-selection-uses-region-p): New function,
18653         previously a lambda expression in a property value for
18654         `self-insert-command'.
18655         (top-level): Set the `delete-selection' property of
18656         `self-insert-command' to `delete-selection-uses-region-p'.
18657         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
18658         property for c-electric-\(brace\|paren\) the value
18659         `delete-selection-uses-region-p' when the latter function exists.
18661 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
18663         Fix key binding quoting in tutorial *Help*
18664         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
18665         When generating help for custom key bindings, use the user-preferred
18666         quoting style rather than hardcoding the grave style.
18668 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
18670         Improve and future-proof OTF fonts support in w32uniscribe.c
18671         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
18672         about the expected results and why the new Uniscribe APIs are not
18673         used in this function.
18674         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
18675         (ScriptGetFontFeatureTags_Proc): New function typedefs.
18676         (uniscribe_new_apis): New static variable.
18677         (uniscribe_check_features): New function, implements OTF features
18678         verification while correctly accounting for features in the list
18679         after the nil member, if any.
18680         (uniscribe_check_otf_1): New function, retrieves the features
18681         supported by the font for the requested script and language using
18682         the Uniscribe APIs available from Windows Vista onwards.
18683         (uniscribe_check_otf): If the new Uniscribe APIs are available,
18684         use them in preference to reading the font data directly.  Call
18685         uniscribe_check_features to verify that the requested features are
18686         supported, replacing the original incomplete code.
18687         (syms_of_w32uniscribe): Initialize function pointers for the new
18688         Uniscribe APIs.  (Bug#21260)
18689         (otf_features): Scan the script, langsys, and feature arrays back
18690         to front, so that the result we return has them in alphabetical
18691         order, like ftfont.c does.
18692         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
18693         New variable for debugging w32uniscribe.c code.
18695 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
18697         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
18698         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
18699         clause of `isearch-search-fun-default'.  That lax variable does not
18700         refer to lax-whitespacing.  Related to (bug#21777).
18701         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
18702         * lisp/character-fold.el (character-fold-search): Set to nil.
18703         Default to nil for now, until someone implements proper
18704         lax-whitespacing with char-fold searching.
18706 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
18708         Fix doc-string of `help-mode-finish'.
18709         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
18711         In nsimage.m include coding.h (Bug#21292)
18712         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
18714         Move window edge functions to Elisp.
18715         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
18716         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
18717         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
18718         Move to window.el.
18719         (calc_absolute_offset): Remove.
18720         * lisp/frame.el (frame-edges): New function.
18721         * lisp/window.el (window-edges, window-pixel-edges)
18722         (window-absolute-pixel-edges): Move here from window.c.
18723         (window-body-edges, window-body-pixel-edges)
18724         (window-absolute-body-pixel-edges): Move here from window.c and
18725         rename "inside" to "body".  Keep old names as aliases.
18726         (window-absolute-pixel-position): New function.
18728 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
18730         [Gnus]: Use overlay functions directly
18731         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
18732         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
18733         (gnus-article-highlight-signature, gnus-article-extend-url-button)
18734         (gnus-article-add-button, gnus-insert-prev-page-button)
18735         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
18736         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
18737         (gnus-cite-add-face):
18738         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
18739         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
18740         (gnus-tree-recenter, gnus-highlight-selected-tree):
18741         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
18742         (gnus-summary-show-thread, gnus-summary-hide-thread)
18743         (gnus-highlight-selected-summary):
18744         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
18745         * lisp/gnus/message.el (message-fix-before-sending)
18746         (message-toggle-image-thumbnails):
18747         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
18748         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
18749         Use overlay functions directly instead of using gnus-overlay-*,
18750         message-overlay-*, and sieve-overlay-*.
18751         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
18752         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
18753         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
18754         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
18755         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
18756         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
18757         (message-overlay-get, message-overlay-put, message-overlays-in):
18758         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
18759         (sieve-overlays-at): Remove.
18761 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
18763         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
18764         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
18765         builds can use the declaration from the system headers.
18766         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
18767         definition of TITLEBAR_INFO.
18768         Suggested by Eli Zaretskii  <eliz@gnu.org>
18770 2015-08-19  Glenn Morris  <rgm@gnu.org>
18772         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
18774 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
18776         Use new q ‘format’ flag when fixing quotes in C
18777         * src/image.c (image_size_error): New function.  All uses of
18778         image_error with "Invalid image size ..."  changed to use it.
18779         * src/image.c (image_size_error, xbm_load_image, xbm_load)
18780         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
18781         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
18782         (imagemagick_load, svg_load, svg_load_image, gs_load)
18783         (x_kill_gs_process):
18784         * src/lread.c (load_warn_old_style_backquotes):
18785         * src/xfaces.c (load_pixmap):
18786         * src/xselect.c (x_clipboard_manager_error_1):
18787         Use %qs, not uLSQM and uRSQM.
18788         * src/syntax.c (Finternal_describe_syntax_value):
18789         Prefer Fsubstitute_command_keys to Fformat, as this lets
18790         us use AUTO_STRING.
18791         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
18792         as it's now guaranteed to be ASCII.
18793         * src/xselect.c (x_clipboard_manager_error_2):
18794         Avoid grave accent in low-level stderr diagnostic.
18796 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
18798         New q flag for ‘format’
18799         * doc/lispref/processes.texi (Sentinels):
18800         Don't hardwire grave quoting style in example.
18801         * doc/lispref/strings.texi (Formatting Strings):
18802         * etc/NEWS:
18803         Document new q flag.
18804         * src/editfns.c (Fformat): Implement it.
18806 2015-08-18  Daiki Ueno  <ueno@gnu.org>
18808         pinentry.el: Add debugging support
18809         * lisp/net/pinentry.el (pinentry-debug): New variable.
18810         (pinentry-debug-buffer): New variable.
18811         (pinentry--process-filter): Send input to the debug buffer, if
18812         `pinentry-debug' is set.
18814         pinentry.el: Improve multiline prompt
18815         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
18816         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
18817         command.
18819 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
18821         Fix multibyte confusion in diagnostics
18822         * src/print.c (print_error_message):
18823         Don't assume that the caller's name is unibyte.
18824         * src/xdisp.c (vadd_to_log):
18825         Don't assume that the formatted diagnostic is unibyte.
18827         Fix file name encodings in diagnostics
18828         Also, close some minor races when opening image files, by opening
18829         them once instead of multiple times.
18830         * src/gtkutil.c (xg_get_image_for_pixmap):
18831         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
18832         (svg_load):
18833         * src/nsimage.m (allocInitFromFile:):
18834         * src/xfns.c (xg_set_icon):
18835         Encode file name, since x_find_image_file no longer does that.
18836         * src/image.c (x_find_image_fd): New function.
18837         (x_find_image_file): Use it.  Do not encode resulting file name,
18838         since callers sometimes need it decoded.
18839         (slurp_file): File arg is now a fd, not a file name.
18840         All callers changed.  This saves us having to open the file twice.
18841         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
18842         (svg_load):
18843         Use x_find_image_fd and fdopen to save a file-open.
18844         Report file name that failed.
18845         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
18847 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
18849         Allow blink-matching-paren to jump off screen
18850         * doc/emacs/programs.texi (Matching): Mention the
18851         `blink-matching-paren' value `jump-offscreen'.
18852         * lisp/simple.el (blink-matching-paren): New possible value.
18853         (blink-matching-paren-on-screen): Clarify the docstring.
18854         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
18856         Refine the previous change
18857         * lisp/simple.el (blink-matching-open): Use minibuffer-message
18858         outside of save-excursion (bug#21286).
18860 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
18862         Rewrite and add frame geometry related functions.
18863         * src/frame.c (Fframe_position): New function.
18864         (Fset_frame_position): Rename parameters and rewrite doc-string.
18865         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
18866         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
18867         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
18868         Qtitle_bar_size.
18869         * src/nsfns.m (frame_geometry): New function.
18870         (Fx_frame_geometry): Call frame_geometry.
18871         (Fx_frame_edges): New function.
18872         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
18873         (GetTitleBarInfo_Proc): Define these so we can use the
18874         GetTitleBarInfo API.
18875         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
18876         (Fx_frame_geometry): Rewrite.
18877         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
18878         (Fx_set_mouse_absolute_pixel_position): New functions.
18879         * src/xfns.c (frame_geometry): New function.
18880         (Fx_frame_geometry): Call frame_geometry.
18881         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
18882         (Fx_set_mouse_absolute_pixel_position): New functions.
18884 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
18886         Improve Tramp's compatibility
18887         * lisp/net/tramp.el (tramp-get-method-parameter):
18888         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
18889         (tramp-adb-get-device):
18890         * lisp/net/trampver.el (tramp-repository-get-version):
18891         Use `tramp-compat-replace-regexp-in-string'.
18893 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
18895         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
18896         Encode/decode string.
18898 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
18900         Clarify what happens to match data on failure
18901         Problem reported by Ernesto Alfonso (Bug#21279).
18902         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
18903         Document more carefully what happens to match data after a failed
18904         search.
18905         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
18906         the return value is undefined if the last search failed.
18907         (Fmatch_data): Simplify doc string line 1.
18909 2015-08-18  Daiki Ueno  <ueno@gnu.org>
18911         Revert "pinentry.el: Support external passphrase cache"
18912         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
18913         pinentry.el shouldn't directly interact with the secrets service,
18914         but ask the caller to cache the passphrase.
18916 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
18918         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
18919         Message mode hooks.
18921 2015-08-17  Daiki Ueno  <ueno@gnu.org>
18923         epg.el: Make gpgconf output parsing future proof
18924         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
18925         --list-options" output.
18927         pinentry.el: Support external passphrase cache
18928         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
18929         (pinentry--allow-external-password-cache): New local variable.
18930         (pinentry--key-info): New local variable.
18931         (secrets-enabled, secrets-search-items, secrets-get-secret):
18932         Declare.
18933         (pinentry--send-passphrase): New function, split from
18934         `pinentry--process-filter'.
18935         (pinentry--process-filter): Use secrets.el to retrieve passphrase
18936         from login keyring.
18938         pinentry.el: Popup window for multiline prompt
18939         * lisp/net/pinentry.el (pinentry): New custom group.
18940         (pinentry-popup-prompt-window): New user option.
18941         (pinentry-prompt-window-height): New user option.
18942         (pinentry--prompt-buffer): New variable.
18943         (pinentry-prompt-mode-map): New variable.
18944         (pinentry-prompt-mode): New function.
18945         (pinentry--prompt): New function.
18946         (pinentry--process-filter): Use `pinentry--prompt' instead of
18947         `read-passwd' and `y-or-n-p'.
18949 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
18951         message.el: Silent the byte compiler
18952         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
18953         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
18954         (message-delete-overlay, message-window-inside-pixel-edges):
18955         Declare before using.
18957         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
18958         (message-window-inside-pixel-edges): XEmacs compatible functions.
18960 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
18962         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
18964 2015-08-17  Noah Friedman  <friedman@splode.com>
18966         * lisp/simple.el (blink-matching-open): Restore point before
18967         calling minibuffer-message.
18969 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
18971         * lisp/play/dunnet.el: Update version number in header (now
18972         matches help).
18974 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
18976         Curved quotes in --batch diagnostics in non-UTF-8
18977         When run with --batch, check that curved quotes are compatible with
18978         the system locale before outputting them in diagnostics.
18979         Problem reported by Eli Zaretskii in:
18980         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
18981         * lisp/startup.el (command-line): Set internal--text-quoting-flag
18982         after the standard display table is initialized.
18983         * src/doc.c (default_to_grave_quoting_style): New function.
18984         (text_quoting_style): Use it.
18985         (text_quoting_flag): New static var, visible to Lisp as
18986         internal--text-quoting-flag.
18987         * src/emacs.c: Include <wchar.h> if available.
18988         (using_utf8): New function.
18989         (main): Use it to initialize text_quoting_flag.
18990         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
18991         Don't define, as it's not needed and it clashes with wchar.h.
18993 2015-08-17  Glenn Morris  <rgm@gnu.org>
18995         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
18996         from makeinfo about spurious "Note:" cross-reference, and for grammar.
18998 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
19000         Minor change in variable initialization on MS-Windows
19001         * src/w32fns.c <after_dead_key>: Initialize to -1.
19002         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
19003         non-zero.
19005         Fix a bug with LWindow key remapping on MS-Windows
19006         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
19008 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
19010         Improve fontset support for latest OTF script tags
19011         * lisp/international/fontset.el (otf-script-alist): Add some
19012         missing script tags.
19013         (setup-default-fontset): Include settings for v2 versions of the
19014         script tags used by some modern OTF/TTF fonts.
19016 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
19018         Spelling fixes
19020 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
19022         Use curved quotes in core elisp diagnostics
19023         In the core elisp files, use curved quotes in diagnostic formats,
19024         so that they follow user preference as per ‘text-quoting-style’
19025         rather than being hard-coded to quote `like this'.
19026         * lisp/abbrev.el (expand-region-abbrevs):
19027         * lisp/button.el (button-category-symbol, button-put)
19028         (make-text-button):
19029         * lisp/cus-start.el:
19030         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
19031         (custom--sort-vars-1, load-theme):
19032         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
19033         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
19034         (cl-generic-generalizers):
19035         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
19036         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
19037         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
19038         (advice--make, define-advice):
19039         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
19040         * lisp/emacs-lisp/timer.el (timer-event-handler):
19041         * lisp/env.el (setenv):
19042         * lisp/facemenu.el (facemenu-add-new-face)
19043         (facemenu-add-new-color):
19044         * lisp/faces.el (face-documentation, read-face-name)
19045         (face-read-string, read-face-font, face-spec-set-match-display)
19046         (read-color, x-resolve-font-name):
19047         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
19048         (set-auto-mode, hack-local-variables)
19049         (hack-one-local-variable--obsolete)
19050         (dir-locals-set-directory-class, write-file)
19051         (basic-save-buffer, delete-directory, copy-directory)
19052         (recover-session, recover-session-finish, insert-directory)
19053         (file-modes-char-to-who, file-modes-symbolic-to-number)
19054         (move-file-to-trash):
19055         * lisp/font-lock.el (font-lock-fontify-buffer):
19056         * lisp/format.el (format-write-file, format-find-file)
19057         (format-insert-file):
19058         * lisp/frame.el (get-device-terminal, select-frame-by-name):
19059         * lisp/fringe.el (fringe--check-style):
19060         * lisp/help.el (describe-minor-mode-from-indicator):
19061         * lisp/image.el (image-type):
19062         * lisp/international/fontset.el (x-must-resolve-font-name):
19063         * lisp/international/mule-cmds.el (prefer-coding-system)
19064         (select-safe-coding-system-interactively)
19065         (select-safe-coding-system, activate-input-method)
19066         (toggle-input-method, describe-current-input-method):
19067         * lisp/international/mule-conf.el (code-offset):
19068         * lisp/mouse.el (minor-mode-menu-from-indicator):
19069         * lisp/replace.el (query-replace-read-from)
19070         (occur-after-change-function, occur-1):
19071         * lisp/scroll-bar.el (scroll-bar-columns):
19072         * lisp/simple.el (execute-extended-command)
19073         (undo-outer-limit-truncate, compose-mail, set-variable)
19074         (choose-completion-string, define-alternatives):
19075         * lisp/startup.el (site-run-file, tty-handle-args)
19076         (command-line, command-line-1):
19077         * lisp/subr.el (noreturn, define-error, add-to-list)
19078         (read-char-choice):
19079         * lisp/term/common-win.el (x-handle-xrm-switch)
19080         (x-handle-name-switch, x-handle-args):
19081         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
19082         Use curved quotes in diagnostics.
19083         * lisp/international/mule.el (find-auto-coding):
19084         Use " to quote in a diagnostic, to be consistent with the rest of
19085         this file.
19087         Convert lisp/term/x-win.el to UTF-8
19088         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
19089         runtime behavior, and the file is multilingual so compile-time
19090         appearance shouldn't be an issue.
19091         * admin/notes/unicode: Document this.
19093 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
19095         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
19096         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
19097         issues and comments, bug#943.
19098         (verilog-type-font-keywords): Cycle delay operators like ##1 and
19099         ##[0:$] are now highlighted in their entirety similarly to the #
19100         delay-control operator.  Likewise, the followed-by operators #-#
19101         and #=# are no longer partially highlighed.
19102         (verilog-backward-syntactic-ws-quick)
19103         (verilog-skip-backward-comments): Minor performance improvements
19104         to buffer traversal functions for reduced latency.
19105         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
19106         keyword 'final' follows 'assert/assume/cover', then it is part of
19107         a deferred immediate assertion item and should not be treated as a
19108         final construct for indentation.  Reported by Yuri Sugihara.
19109         (verilog-do-indent): Virtual task/function/class definition lines
19110         should not be considered as declarations.  Reported by Enzo Chi.
19111         (verilog-do-indent): Do not falsely indent to '=' of
19112         property/sequence operators on subsequent lines of a multi-line
19113         statement.
19114         (verilog-assignment-operator-re): Fix '!==' operator and add
19115         support for '<->', ':/', '#-#', and '#=#' operators.
19116         (verilog-calculate-indent, verilog-label-be): Enable
19117         case-sensitive regular expression parsing when looking for
19118         keywords.
19119         (verilog-calc-1): Detect 'pure virtual method' declarations which
19120         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
19121         (verilog-backward-ws&directives): When moving back to the start of
19122         a line and the preceeding line ended with an escaped-newline, then
19123         jump up one line.  This properly consumes a multi-line
19124         pre-processor directive.  Reported by Kaushal Modi.
19125         (verilog-dpi-import-export-re, verilog-extended-complete-re)
19126         (verilog-calc-1): Teach verilog-mode to properly indent after a
19127         DPI import/export statement that resides outside of a module.
19128         Reported by Kaushal Modi.
19129         (verilog-extended-complete-re): Update regexp to match both
19130         "DPI-C" and "DPI".  Reported by Kaushal Modi.
19132 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19134         substitute-command-keys a few more doc strings
19135         * lisp/allout.el (outlineify-sticky):
19136         * lisp/files.el (hack-one-local-variable--obsolete):
19137         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
19138         Use substitute-command-keys on some doc strings so that
19139         they don't use hard-coded key bindings or quoting styles.
19141         Fix quoting in Fformat calls
19142         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
19143         (xpm_load, xpm_load_image, pbm_load, png_load_body)
19144         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
19145         (imagemagick_load, svg_load, svg_load_image, gs_load)
19146         (x_kill_gs_process):
19147         * src/lread.c (load_warn_old_style_backquotes):
19148         * src/xfaces.c (load_pixmap):
19149         * src/xselect.c (x_clipboard_manager_error_1):
19150         Quote diagnostics according to user preference when calling
19151         Fformat or its derivatives.
19153 2015-08-15  Glenn Morris  <rgm@gnu.org>
19155         * admin/admin.el (set-version, set-copyright): Remove deleted files.
19157 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
19159         Allow describe-function helpers to access buffer-local values
19160         This will be used by cedet/mode-local.el `describe-mode-local-override'
19161         on `help-fns-describe-function-functions' in upstream CEDET.
19162         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
19163         `describe-function'.
19164         (describe-function): Bind it, save it on the help xref stack.
19166         Handle pulse-background being nil
19167         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
19168         pulse-background, handle it being nil.
19170 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19172         Fix "\`" confusion in Lisp strings
19173         * admin/authors.el (authors-canonical-author-name):
19174         Fix typo by using "\\`" not "\`" in string RE.
19175         * lisp/obsolete/complete.el (PC-complete-as-file-name):
19176         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
19177         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
19178         Use plain "`", not the equivalent-but-confusing "\`", in strings.
19179         * lisp/textmodes/texinfmt.el: Fix comment likewise.
19181 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
19183         * nt/zipdist.bat: Remove -- no longer used.
19185 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
19187         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
19188         rather than "getenforce".
19189         (tramp-sh-handle-set-file-selinux-context): Do not
19190         cache SELinux context if not all context components are given.
19192 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
19194         Add doc strings to 2 help-mode.el functions
19195         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
19196         strings.  (Bug#21263)
19198         Remove files used by the old MS-Windows specific build procedure
19199         * admin/unidata/makefile.w32-in:
19200         * doc/emacs/makefile.w32-in:
19201         * doc/lispintro/makefile.w32-in:
19202         * doc/lispref/makefile.w32-in:
19203         * doc/misc/makefile.w32-in:
19204         * leim/makefile.w32-in:
19205         * lib-src/makefile.w32-in:
19206         * lib/makefile.w32-in:
19207         * lisp/makefile.w32-in:
19208         * nt/INSTALL.OLD:
19209         * nt/config.nt:
19210         * nt/emacs-src.tags:
19211         * nt/envadd.bat:
19212         * nt/gmake.defs:
19213         * nt/makefile.w32-in:
19214         * nt/multi-install-info.bat:
19215         * nt/nmake.defs:
19216         * nt/paths.h:
19217         * src/makefile.w32-in: Files deleted.
19218         * nt/configure.bat: Remove everything except the blurb about the
19219         new build procedure.
19220         * make-dist: Remove references to makefile.w32-in in various
19221         directories, and to files in nt/ that were deleted.
19222         * etc/NEWS: Mention the fact that the files were dropped.
19224 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19226         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
19227         (Bug#21248)
19229 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
19231         Default to inotify instead of gfile
19232         * configure.ac (with_file_notification): Fix typo that
19233         prevented suppression of file notification if HAVE_NS.
19234         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
19235         with_file_notification is 'yes' (Bug#21241).
19236         * etc/NEWS: Mention this.
19238         Fix broken URLs for ISO-IR
19239         * doc/emacs/mule.texi (Charsets):
19240         * lisp/international/mule-conf.el:
19241         Fix broken URL (Bug#21248).
19243         Low-level diagnostics now use ‘text-quoting-style’
19244         * src/doprnt.c (doprnt):
19245         Format ` and ' as per ‘text-quoting-style’.
19246         * src/xdisp.c (vmessage, message): Mention that the format should
19247         not contain ` or '.
19249         Prefer ‘format’ to ‘substitute-command-keys’
19250         * src/character.h (uLSQM, uRSQM): Move here ...
19251         * src/doc.c (uLSQM, uRSQM): ... from here.
19252         * src/doc.c (Fsubstitute_command_keys):
19253         * src/syntax.c (Finternal_describe_syntax_value):
19254         * lisp/cedet/mode-local.el (mode-local-print-binding)
19255         (mode-local-describe-bindings-2):
19256         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
19257         * lisp/cus-theme.el (describe-theme-1):
19258         * lisp/descr-text.el (describe-text-properties-1, describe-char):
19259         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
19260         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
19261         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
19262         * lisp/emacs-lisp/package.el (describe-package-1):
19263         * lisp/faces.el (describe-face):
19264         * lisp/help-fns.el (help-fns--key-bindings)
19265         (help-fns--compiler-macro, help-fns--parent-mode)
19266         (help-fns--obsolete, help-fns--interactive-only)
19267         (describe-function-1, describe-variable):
19268         * lisp/help.el (describe-mode):
19269         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
19270         to implement quoting style.  This generally makes the code simpler.
19272         Extend ‘format’ to translate curved quotes
19273         This is a followup to the recent doc string change, and deals with
19274         diagnostics and the like.  This patch is more conservative than
19275         the doc string change, in that the behavior of ‘format’ changes
19276         only if its first arg contains curved quotes and the user prefers
19277         straight or grave quotes.  (Come to think of it, perhaps we should
19278         be similarly conservative with doc strings too, but that can wait.)
19279         The upside of this conservatism is that existing usage is almost
19280         surely unaffected.  The downside is that we'll eventually have to
19281         change Emacs's format strings to use curved quotes in places where
19282         the user might want curved quotes, but that's a simple and
19283         mechanical translation that I'm willing to do later.  (Bug#21222)
19284         * doc/lispref/help.texi (Keys in Documentation):
19285         Move description of text-quoting-style from here ...
19286         * doc/lispref/strings.texi (Formatting Strings):
19287         ... to here, and describe new behavior of ‘format’.
19288         * etc/NEWS: Describe new behavior.
19289         * lisp/calc/calc-help.el (calc-describe-thing):
19290         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
19291         * lisp/info.el (Info-find-index-name):
19292         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
19293         of recently-added curved quotes.
19294         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
19295         Move from here ...
19296         * src/lisp.h: ... to here.
19297         * src/doc.c (text_quoting_style): New function.
19298         (Fsubstitute_command_keys): Use it.
19299         * src/editfns.c (Fformat): Implement new behavior.
19300         * src/lisp.h (enum text_quoting_style): New enum.
19302 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19304         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
19305         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
19307 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
19309         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
19310         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
19312 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
19314         Flush file properties in Tramp
19315         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
19316         (tramp-sh-handle-set-file-times):
19317         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
19318         (tramp-adb-handle-set-file-times): Flush the file properties of
19319         the directory.
19321 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
19323         * doc/emacs/misc.texi (Amusements): Fixed typo.
19325 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
19327         Don't miss warnings about removing string text properties while dumping
19328         * src/alloc.c (purecopy): Warn about removing a string's text
19329         properties even when the same string was already pure-copied
19330         earlier.
19331         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
19332         (elisp--xref-format-extra): Fix the commentary.
19334 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19336         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
19338 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
19340         * lisp/progmodes/compile.el: Use lexical-binding.
19341         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
19343 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19345         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
19346         * lisp/uniquify.el: Remove redundant `:group's.
19348 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
19350         * lisp/net/tramp-adb.el
19351         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
19352         result to prevent modification of the tramp-cache by side effects.
19353         Use the correct cache key.
19355 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
19357         Make add_to_log varargs
19358         * src/alloc.c (run_finalizer_handler):
19359         * src/charset.c (load_charset_map_from_vector):
19360         * src/nsimage.m (ns_load_image):
19361         * src/xfaces.c (load_pixmap, load_color2):
19362         Simplify, now that add_to_log has a variable number of args.
19363         * src/image.c (image_error): Take a variable number of args.
19364         Callers simplified.
19365         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
19366         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
19367         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
19368         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
19370         Optional args for holiday-greek-orthodox-easter
19371         * etc/NEWS: Document this.
19372         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
19373         Add optional args N and STRING, mimicking the API and code of
19374         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
19376 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
19378         xref-find-definitions: Exclude more generic function items.
19379         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
19380         Add doc string.
19381         (cl--generic-find-defgeneric-regexp): New.
19382         (find-function-regexp-alist): Add it.
19383         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
19384         elisp-mode.el, change to search for ";;; Code:"
19385         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
19386         (find-function-regexp-alist): Add them.
19387         * lisp/progmodes/elisp-mode.el:
19388         (elisp--xref-format, elisp--xref-format-extra): Change back to
19389         defvar due to bug#21237.
19390         (elisp--xref-find-definitions): Exclude co-located default methods for
19391         generic functions.  Also exclude implicitly declared defgeneric.
19392         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
19393         mode variables defined by 'define-minor-mode'.
19394         * test/automated/elisp-mode-tests.el: Declare generic functions, add
19395         tests for them.
19396         (xref-elisp-test-run): Fix bug.
19397         (emacs-test-dir): Improve initial value.
19398         (find-defs-defun-defvar-el): Don't expect defvar.
19399         (find-defs-feature-el): Match change to find-feature-regexp.
19401 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
19403         Improve warning about purecopy of strings with properties
19404         * src/alloc.c (purecopy): Show the offending string with the
19405         warning about removing its text properties.
19407 2015-08-12  Alan Mackenzie  <acm@muc.de>
19409         Introduce new macros to cover Emacs's new names in cl-lib.el
19410         This also eliminates `mapcan' warnings in XEmacs.
19411         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
19412         characterise [X]Emacs versions.
19413         (top-level): Require either 'cl or 'cl-lib, depending on
19414         c--mapcan-status.
19415         Change this back to cc-external-require from an eval-when-compile
19416         require.
19417         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
19418         (c--delete-duplicates): New macros which expand into either old or new
19419         names.
19420         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
19421         rather than the old names.
19422         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
19423         rather than mapcan.
19424         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
19425         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
19426         depending on c--mapcan-status.
19427         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
19428         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
19429         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
19430         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
19431         (c-decl-block-key, c-keywords, c-keywords-obarray)
19432         (c-regular-keywords-regexp, c-primary-expr-regexp)
19433         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
19434         (c-known-type-key, c-nonlabel-token-key)
19435         (c-make-init-lang-vars-fun): Use the new macros rather than the old
19436         names.
19438 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
19440         loadhist.el (read-feature): Conform to completing-read
19441         * lisp/loadhist.el (read-feature): According to `completing-read'
19442         documentation, if collection is a list, then it must be a list of
19443         strings, not a list of symbols like before.
19445 2015-08-12  David Kastrup  <dak@gnu.org>
19447         Deal gracefully with up-events (Bug#19746)
19448         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
19449         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
19450         those may easily be injected by user-level Lisp code.
19451         (read_key_sequence): Discard unbound up-events like unbound
19452         down-events: they are even more likely only relevant for special
19453         purposes.
19454         While Emacs will not produce up-events on its own currently (those are
19455         converted to drag or click events before being converted to
19456         Lisp-readable structures), the input queue can be made to contain them
19457         by synthesizing events to `unread-command-events'.  Emacs should deal
19458         consistently with such events.
19460 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
19462         Fix display of thin lines whose newline has line-height property of t
19463         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
19464         and descent values of non-empty glyph rows, since they could have
19465         forced low values deliberately.  (Bug#21243)
19467 2015-08-12  Richard Stallman  <rms@gnu.org>
19469         Offer to combine multiple To or CC fields.
19470         * lisp/mail/sendmail.el (mail-combine-fields): New function.
19471         (mail-send): Call 'mail-combine-fields'.
19473         Don't decrypt encrypted files.
19474         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
19476         Handle encrypted mbox files.
19477         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
19478         the mbox file if necessary.
19480         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
19481         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
19482         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
19483         In a mime message, reenable Mime and show the parts that
19484         were shown before.
19485         Add keyword "decrypt" if anything decrypted.
19487         epa-inhibit inhibits auto-recognition of .gpg files
19488         * lisp/epa-file.el (epa-inhibit): New variable.
19489         (epa-file-handler): Check epa-inhibit.
19491 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19493         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
19495 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19497         Respect python.el imenu when semantic-mode is off
19498         Fixes bug#21220
19499         * lisp/cedet/semantic/wisent/python.el: Do not force
19500         wisent-python-default-setup on python-mode-hook.
19502 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
19504         Give names to Unicode code points in C code
19505         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
19506         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
19507         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
19508         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
19509         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
19510         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
19511         (OBJECT_REPLACEMENT_CHARACTER):
19512         New named constants for Unicode code points.
19513         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
19514         * src/composite.c (char_composable_p):
19515         * src/lread.c (readevalloop, read1):
19516         * src/xdisp.c (get_next_display_element):
19517         Use them.
19518         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
19519         Remove; now in character.h.
19521 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
19523         elisp--xref-find-definitions handle cl-defstuct default constructor
19524         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
19525         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
19526         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
19527         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
19528         from xref-elisp-test for ease of debugging.
19529         (xref-elisp-deftest): Rename from xref-elisp-test.
19530         (find-defs-constructor): New test.
19531         (find-defs-defgeneric-el): Match batch test config.
19532         (compile): Required for find-defs compilation-minor-mode test.
19533         (find-defs-defvar-el): Match code change.
19534         (find-defs-face-el): Match code change.
19535         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
19536         Improve doc string.
19538 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
19540         * lisp/replace.el (perform-replace): Document `replacements'.
19541         (perform-replace): Move the description of the format of `replacements'
19542         from the body's comment to the doc string.
19544 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
19546         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
19547         sequence.  Recent adb version send initial escape sequences, even
19548         when terminal type is set to TERM=dumb.
19550 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
19552         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
19553         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
19554         Function deleted.
19555         (elisp--xref-format-cl-defmethod): New defconst.
19556         (find-feature-regexp, find-alias-regexp): New defcustoms.
19557         (elisp--xref-make-xref): New function.
19558         (elisp--xref-find-definitions): Rewrite using the above, handle many
19559         more cases.  Always output all available definitions.
19560         (xref-location-marker): No need for special cases.
19561         * test/automated/elisp-mode-tests.el: Add more tests of
19562         elisp--xref-find-definitions, improve current tests.
19564 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
19566         Fix recording of events pushed onto unread-command-events
19567         * src/keyboard.c (read_char): Make sure events read from
19568         unread-command-events and unread-post-input-method-events are
19569         always recorded by record_char.  Reported by David Kastrup
19570         <dak@gnu.org>, see
19571         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
19573 2015-08-10  Samer Masterson  <samer@samertm.com>
19575         Set file buffer as current for "--file"
19576         * lisp/startup.el (command-line-1): Set file buffer as current before
19577         it is displayed so it can be used with options like "--eval".
19578         (Bug#21095)
19580 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
19582         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
19583         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
19584         after setting LC_ALL to the desired locale, to avoid affecting how
19585         numbers are read and printed.  (Bug#21223)
19587 2015-08-10  Alan Mackenzie  <acm@muc.de>
19589         Fix "Invalid search bound (wrong side of point)" in fontification
19590         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
19591         an initialization expression, check point is not beyond the
19592         fontification limit.
19594 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
19596         Fix DPI calculation when Xft/DPI is default
19597         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
19598         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
19599         Remove unnecessary cast while we're in the neighborhood.
19601 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
19603         Add project-vc-search-path and project-vc-ignores
19604         * lisp/progmodes/project.el (project-vc): New group.
19605         (project-vc-search-path, project-vc-ignores): New variables.
19606         (project--value-in-dir): Utility function.
19607         (project-search-path, project-ignores): Use them.
19608         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
19609         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
19611 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
19613         Fix some minor quoting issues with grave accent
19614         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
19615         Remove redundant quotes.
19616         * src/doc.c (uLSQM, uRSQM): New macros.
19617         * src/doc.c (Fsubstitute_command_keys):
19618         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
19619         preference for quotes rather than hardcoding the ‘grave’ style.
19620         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
19621         (re_match_2_internal) [DEBUG]: In debugging output, quote C
19622         strings with "...", not `...'.
19624         ChangeLog.2 ignores remote-tracking merges
19625         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
19626         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
19627         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
19629 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
19631         Use kpsewhich in ffap-latex-mode, if available
19632         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
19633         (ffap-latex-mode): Use kpsewhich if available.
19635         ffap: disallow braces in filenames for tex modes
19636         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
19637         braces in tex-related modes.
19639         Remove useless backslashes from ffap-string-at-point-mode-alist
19640         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
19641         misleading backslashes from default value.
19643         Augment docstring of ffap-string-at-point-mode-alist
19644         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
19645         and END are handled.
19647 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
19649         * lisp/org/org-src.el (org-edit-src-code)
19650         (org-edit-fixed-width-region):
19651         * lisp/simple.el (completion-setup-function):
19652         Remove calls to substitute-command-keys that always just return
19653         their argument.
19655 2015-08-09  Daiki Ueno  <ueno@gnu.org>
19657         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
19658         (Bug#21210)
19660 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
19662         Fix link to source code in help window
19663         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
19664         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
19665         'No longer include timestamp in header of .elc files'.  Add code
19666         that will return .el source file in load-path.
19668 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
19670         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
19671         Respect `isearch-lax-whitespace' when searching through
19672         `isearch-word'.
19674 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19676         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
19678         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
19679         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
19680         (org-set-regexps-and-options, org-assign-fast-keys)
19681         (org-contextualize-keys, org-contextualize-validate-key)
19682         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
19683         (org-find-olp, org-find-exact-heading-in-directory)
19684         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
19685         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
19686         (org-replace-escapes): Use dolist.
19687         (org-mode): Optimize away XEmacs-only code.
19688         (org-refile-get-targets): Remove unused var `f'.
19689         (org-fast-todo-selection): Remove unused var `e'.
19690         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
19691         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
19692         (org-format-latex): Use dolist.  Remove unused var `e'.
19693         (org-toggle-heading): Access vars lexically rather than dynamically.
19694         (org-backward-sentence, org-forward-sentence, org-meta-return)
19695         (org-kill-line): Mark arg as unused.
19696         (org-submit-bug-report): Silence compiler warning.
19697         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
19698         (org-get-cursor-date): Remove unused var `tm'.
19699         (org-comment-or-uncomment-region): Use standard name `_'.
19700         (reftex-docstruct-symbol, reftex-cite-format): Declare to
19701         silence byte-compiler.
19702         (org-reftex-citation): Add `org--' prefix to dynamically scoped
19703         `rds' var.
19705 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
19707         Electric quote if coding is undecided or no conv
19708         * lisp/electric.el (electric--insertable-p): Also say that a
19709         string is insertable if the buffer file coding system is undecided
19710         or uses no conversion, as curved quotes will work in either case.
19712         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
19714 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
19716         Fix overlay string display regressions introduced in Emacs 24.5
19717         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
19718         buffer position, if we move the iterator to a new position as
19719         result of jumping over text covered by a "replacing" display
19720         property.
19721         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
19723         Support recovery from C stack overflow on MS-Windows
19724         * src/w32fns.c (w32_reset_stack_overflow_guard)
19725         (stack_overflow_handler): New functions for handling C stack
19726         overflow exceptions.
19727         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
19728         specially, and zero out except_addr if we do.
19729         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
19730         mode.
19731         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
19732         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
19733         the MinGW build, but the code guarded by that is for Posix hosts.
19734         * src/keyboard.c (command_loop) [WINDOWSNT]:
19735         Call w32_reset_stack_overflow_guard.
19736         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
19737         (sigsetjmp): New macro.
19738         (w32_reset_stack_overflow_guard): Declare the prototype.
19739         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
19741 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
19743         Improve error signalling for seq-subseq
19744         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
19745         when indexes are too large, but to silently ignore numbers which
19746         are too negative for lists.  String and vector handling errors in
19747         both cases.  This has been regularized.  Error signaling behavior
19748         has been explicitly added to the doc string.
19750         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
19751         therefore also impacted by this change.  Update the doc string
19752         to reflect this.
19754         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
19755         added for these exceptional cases, as well as one non exceptional
19756         base case.
19758 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
19760         Improve error checking in tramp-adb.el
19761         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
19762         Improve error checking.  "ls -l" on Android in Enforcing mode can
19763         print "lstat './FILENAME failed: Permission denied".
19765 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19767         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
19768         non-struct vectors.
19770 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
19772         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
19773         * lisp/window.el: Fix typo that broke build.
19774         (display-buffer--action-function-custom-type):
19775         Add `display-buffer-use-some-frame'.
19776         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
19778         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
19779         * lisp/window.el (display-buffer-use-some-frame): Add support for
19780         'inhibit-same-window in alist.
19781         * doc/lispref/windows.texi (display-buffer-use-some-frame):
19782         Doc support for 'inhibit-same-window in alist.
19784 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
19786         Avoid infinite loop in display of invisible text in strings
19787         * src/xdisp.c (handle_invisible_prop): If the next change of
19788         invisibility spec does not mean the beginning of a visible text,
19789         update the string position from which to start the search for the
19790         next invisibility change.  This avoids an infinite loop when we
19791         have more than one invisibility spec that are made inactive by
19792         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
19793         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
19794         for the situation that caused bug #21200.
19796 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19798         * lisp/emacs-lisp/package.el: Simplify describe-package-1
19799         (package-help-section-name-face): New face.
19800         (package--print-help-section): New function.
19801         (describe-package-1): Refactor section printing.
19802         (package-make-button): Use face instead of font-lock-face, which
19803         doesn't work on buttons.
19805         * lisp/emacs-lisp/package.el: Define custom faces
19806         (package-name-face, package-description-face)
19807         (package-status-built-in-face, package-status-external-face)
19808         (package-status-available-face, package-status-new-face)
19809         (package-status-held-face, package-status-disabled-face)
19810         (package-status-installed-face, package-status-dependency-face)
19811         (package-status-unsigned-face, package-status-incompat-face)
19812         (package-status-avail-obso-face): New faces.
19813         (package-menu--print-info-simple): Use them.
19815 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
19817         Fix some confusion with ‘format’
19818         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
19819         (allout-graphics-modification-handler):
19820         Protect arbitrary string in a format context with "%s" format.
19821         * lisp/avoid.el:
19822         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
19823         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
19824         * lisp/erc/erc-button.el (erc-button-beats-to-time):
19825         * lisp/gnus/message.el (message-send-form-letter):
19826         * lisp/org/ob-core.el (org-babel-check-evaluate)
19827         (org-babel-confirm-evaluate):
19828         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
19829         * lisp/org/ox-latex.el (org-latex-compile):
19830         * lisp/org/ox-man.el (org-man-compile):
19831         * lisp/org/ox-odt.el (org-odt-template):
19832         * lisp/org/ox-texinfo.el (org-texinfo-compile):
19833         * lisp/progmodes/prolog.el (prolog-help-info)
19834         (prolog-view-predspec):
19835         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
19836         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
19837         * lisp/textmodes/rst.el (rst-replace-lines):
19838         Change (message (format ...)) to (message ...), and likewise
19839         for ‘error’.  This lessens the probability of confusion when the
19840         output of ‘format’ contains ‘%’.
19842 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
19844         * lisp/replace.el (replace-character-fold): Default to nil.
19846         * lisp/character-fold.el: Fix lax whitespace.
19847         (character-fold-table): Don't make space match other whitespace chars.
19848         (character-fold-to-regexp): Simplify lax behavior.
19850 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
19852         Preserve window point in xref-find-definitions-other-window
19853         Fix the problem reported by Ingo Logmar in
19854         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
19855         * lisp/progmodes/xref.el (xref--goto-char): Extract from
19856         xref--goto-location.
19857         (xref--pop-to-location): Use it.  Replace xref--goto-location with
19858         a direct xref-location-marker call.
19859         (xref--show-location): Likewise.
19860         (xref--display-position): Use xref--goto-char.
19862         * lisp/progmodes/project.el: Add a paragraph to the front matter.
19864 2015-08-04  David Kastrup  <dak@gnu.org>
19866         * lisp/vc/emerge.el (emerge-show-file-name):
19867         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
19868         (vhdl-comment-insert, vhdl-hooked-abbrev):
19869         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
19870         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
19871         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
19872         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
19873         * lisp/obsolete/vip.el (vip-escape-to-emacs)
19874         (vip-prefix-arg-value, vip-prefix-arg-com):
19875         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
19876         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
19877         (quail-tibkey-update-translation):
19878         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
19879         * lisp/leim/quail/lao.el (quail-lao-update-translation):
19880         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
19881         (quail-japanese-self-insert-and-switch-to-alpha):
19882         * lisp/leim/quail/hangul.el (hangul2-input-method)
19883         (hangul3-input-method, hangul390-input-method):
19884         * lisp/language/hanja-util.el (hangul-to-hanja-char):
19885         * lisp/international/robin.el (robin-input-method):
19886         * lisp/international/quail.el (quail-start-translation)
19887         (quail-start-conversion):
19888         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
19889         (gnus-article-describe-key-briefly):
19890         * lisp/eshell/em-hist.el (eshell-list-history):
19891         * lisp/term.el (term-dynamic-list-input-ring)
19892         (term-dynamic-list-completions):
19893         * lisp/subr.el (momentary-string-display):
19894         * lisp/simple.el (read-quoted-char):
19895         * lisp/pcomplete.el (pcomplete-show-completions):
19896         * lisp/kmacro.el (kmacro-repeat-on-last-key):
19897         * lisp/info.el (Info-summary):
19898         * lisp/ehelp.el (electric-help-command-loop):
19899         * lisp/ebuff-menu.el (electric-buffer-list)
19900         (Electric-buffer-menu-exit):
19901         * lisp/double.el (double-translate-key):
19902         * lisp/comint.el (comint-dynamic-list-input-ring)
19903         (comint-dynamic-list-completions): Do not overwrite preexisting
19904         contents of `unread-command-events' when putting new events into it.
19906 2015-08-04  Daniel Colascione  <dancol@dancol.org>
19908         Improve ansi-color filtering of unrecognized escape sequences
19909         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
19910         escape sequences.
19911         (ansi-color-filter-apply, ansi-color-apply): Filter out
19912         unrecognized escape sequences.
19914 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19916         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
19917         definitions to `easy-menu-define', improve a couple to account for
19918         async, and add a couple of new commands.
19920 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
19922         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
19924 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
19926         Add new 'calendar-weekend-days' option
19927         Make the days receiving the 'calendar-weekend-header' face freely
19928         customizable, as they differ by region/culture.
19929         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
19930         new variable.
19931         * lisp/calendar/calendar.el (calendar-generate-month): New variable
19932         calendar-weekend-days to customize day header fontification.
19934 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
19936         Redo text-quoting-style variable
19937         Rename help-quote-translation to text-quoting-style,
19938         and use symbols rather than characters as values.
19939         This follows suggestions along these lines by Alan Mackenzie in:
19940         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
19941         and by Drew Adams in:
19942         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
19943         * doc/lispref/help.texi (Keys in Documentation)
19944         * etc/NEWS:
19945         * lisp/cus-start.el (standard):
19946         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
19947         Document and/or implement the new behavior instead of the old.
19948         (syms_of_doc): New symbols 'grave' and 'straight'.
19950 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
19952         nnimap.el: Use IMAP MOVE extension if available
19953         * lisp/gnus/nnimap.el (nnimap-request-move-article)
19954         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
19955         Use MOVE extension if available.
19957         nnimap.el: Explicitly ask for server capabilities
19958         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
19959         capabilities will be returned in the login-result.
19961 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
19963         Treat help strings like other doc strings
19964         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
19965         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
19966         substitute-command-keys.
19967         * src/keyboard.c (show_help_echo, parse_menu_item): Call
19968         substitute-command-keys on the help string before displaying it.
19970         Also mention "curly quotes"
19971         See Drew Adams's email in:
19972         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
19973         * doc/lispref/help.texi (Keys in Documentation):
19974         Add index entry "curly quotes".
19975         * etc/NEWS: Use the phrase "curly quotes" too.
19977         ede-proj-target-makefile docstring tweaks
19978         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
19979         Consistently use "all:" to describe the all: target,
19980         replacing three different and confusingly-quoted usages.
19982 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
19984         Don't abort emacsclientw when -a was specified
19985         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
19986         out if we are in emacsclientw and -a was specified.
19988 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
19990         Fix handling of 1st keystroke on MS-Windows
19991         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
19992         This is needed to correctly handle the session's first keystroke,
19993         if it has any modifiers.  (Bug#19994)
19995 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
19997         Substitute some customization etc. doc strings
19998         These changes apply substitute-command-keys to some
19999         doc strings that were going through untranslated
20000         when creating customization or other widgets.
20001         * lisp/cus-edit.el (custom-group-value-create):
20002         * lisp/wid-edit.el (widget-default-create):
20003         (widget-push-button-value-create):
20004         Treat the widget tag as a doc string.
20005         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
20006         Treat the :documentation value as a doc string.
20007         * lisp/wid-edit.el (widget-choose):
20008         Treat the choice names as doc strings.
20009         (widget-default-create): Treat the :doc value as a doc string.
20010         (widget-toggle-value-create): Treat the :on and :off values
20011         as doc strings.
20012         (widget-documentation-string-value-create):
20013         Substitute the doc string.
20015 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
20017         Add a second argument to project-ignores
20018         * lisp/progmodes/project.el (project-ignores): Add a second
20019         argument DIR.
20020         * lisp/progmodes/project.el (project-ignores): Only include the VC
20021         ignores if DIR is the VC root.
20022         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
20024 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
20026         Prevent incorrect display when 'line-spacing' variable is set
20027         * src/xdisp.c (try_window_id): Give up this optimization if the
20028         buffer has its 'line-spacing' variable set non-nil.
20030 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
20032         Don't pass NOVISIT to find-file
20033         * lisp/progmodes/etags.el (next-file):
20034         Don't pass NOVISIT to find-file (bug#21175).
20036         Ignore buffer restriction for tags-loop-eval
20037         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
20038         restriction (bug#21167).
20040 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
20042         Fix a thinko in 'ffap-gopher-at-point'
20043         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
20045         Honor 'line-spacing' for empty lines
20046         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
20047         property and 'line-spacing' frame parameter or variable or
20048         property for empty lines, by doing the same processing as in
20049         x_produce_glyph for newline characters.  (Bug#21165)
20051 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
20053         Simplify by assuming C99 integer division
20054         * src/floatfns.c (ceiling2, floor2, truncate2):
20055         Assume C99 (i.e., Fortran) semantics for integer division.
20056         This simplifies the code.
20058 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
20060         Don't overflow if computing approximate percentage
20061         * lisp/align.el (align-region):
20062         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
20063         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
20064         * lisp/cus-edit.el (custom-buffer-create-internal):
20065         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
20066         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
20067         (checkdoc-next-message-error):
20068         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
20069         * lisp/epa.el (epa-progress-callback-function):
20070         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
20071         * lisp/ffap.el (ffap-menu-rescan):
20072         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
20073         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
20074         * lisp/gnus/nneething.el (nneething-retrieve-headers):
20075         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
20076         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
20077         * lisp/gnus/nnml.el (nnml-retrieve-headers):
20078         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
20079         * lisp/gnus/nntp.el (nntp-retrieve-headers)
20080         (nntp-retrieve-articles):
20081         * lisp/imenu.el (imenu--relative-position):
20082         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
20083         (skkdic-convert-okuri-nasi):
20084         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
20085         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
20086         * lisp/org/org-list.el (org-update-checkbox-count):
20087         * lisp/org/org.el (org-table-map-tables)
20088         (org-update-parent-todo-statistics):
20089         * lisp/play/decipher.el (decipher-insert-frequency-counts)
20090         (decipher-analyze-buffer):
20091         * lisp/profiler.el (profiler-format-percent):
20092         * lisp/progmodes/cc-cmds.el (c-progress-update):
20093         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
20094         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
20095         (idlwave-list-load-path-shadows):
20096         * lisp/progmodes/opascal.el (opascal-step-progress):
20097         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
20098         (vhdl-scan-directory-contents):
20099         * lisp/textmodes/bibtex.el (bibtex-progress-message):
20100         * lisp/textmodes/flyspell.el (flyspell-small-region)
20101         (flyspell-external-point-words):
20102         * lisp/textmodes/table.el (table-recognize):
20103         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
20104         progress-report percentages and the like.  This avoids problems
20105         if (* 100 NUMERATOR) would overflow.
20106         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
20107         * lisp/gnus/registry.el (registry-reindex):
20108         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
20109         * lisp/descr-text.el (describe-char):
20110         * lisp/org/org-colview.el (org-nofm-to-completion):
20111         * lisp/ps-print.el (ps-plot):
20112         * lisp/simple.el (what-cursor-position):
20113         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
20114         more-complicated and less-accurate approximation.
20116         Fix some int overflows in profiler.c
20117         * src/profiler.c (make_log): Make args EMACS_INT, not int,
20118         to avoid unwanted behavior on 'int' overflow.
20119         (make_log, evict_lower_half, record_backtrace):
20120         Use ptrdiff_t, not int, for object indexes.
20122         Port to pedantic memcpy
20123         * src/keyboard.c (menu_bar_items, tool_bar_items):
20124         * src/xrdb.c (magic_db):
20125         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
20127         Merge from gnulib
20128         This incorporates:
20129         2015-07-29 time_rz: port to pedantic memcpy
20130         * lib/time_rz.c: Copy from gnulib.
20132 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
20134         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
20135         When updating the very last entry, tabulated-list-print would
20136         erase it and then try to look at the next one (which obviously
20137         isn't there).
20139 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
20141         Allow to use the old key processing code on MS-Windows
20142         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
20143         New variable.
20144         (w32_wnd_proc): Use it to invoke the old code that processed
20145         character keys, as fallback, when this variable is non-nil.
20146         Fix typos in comments.  (Bug#19994)
20148 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
20150         Improve handling of Unicode keyboard input on MS-Windows
20151         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
20152         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
20153         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
20154         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
20155         successful, don't call TranslateMessage.  (Bug#19994)
20157 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
20159         Fix default-directory in changeset diffs after vc-print-log
20160         * lisp/vc/log-view.el (log-view-diff-common): Move the
20161         revision-granularity check back into log-view-diff-changeset.
20162         (log-view-diff-changeset): Bind default-directory to the current
20163         VC root.
20165         Rename project-directories to project-roots
20166         * lisp/progmodes/project.el (project-search-path-function)
20167         (project-search-path): Update the docstring.
20168         (project-directories): Rename to `project-roots', update all
20169         callers and implementations accordingly.
20170         (project-root): Remove.
20171         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
20172         as the default file mask.
20174 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
20176         Support long URLs in w32-shell-execute
20177         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
20178         and filename_to_ansi to convert the DOCUMENT argument, as it could
20179         be a URL that is not limited to MAX_PATH characters.  Instead, use
20180         MultiByteToWideChar directly, and allocate heap storage as
20181         required to accommodate the converted string.  Likewise with
20182         non-Unicode operation.  Ensure OPERATION is null-terminated, even
20183         if it is longer than 32K bytes.  (Bug#21158)
20185 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
20187         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
20189 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
20191         Add docs for display-buffer action display-buffer-use-some-frame
20192         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
20193         * doc/lispref/windows.texi (Display Action Functions):
20194         Add display-buffer-use-some-frame.
20195         * etc/NEWS: Mention display-buffer-use-some-frame.
20197         Add display-buffer action display-buffer-use-some-frame
20198         * lisp/window.el (display-buffer-use-some-frame): New.
20200         Handle vc-mtn error more gently
20201         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
20202         branch is nil.
20204 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
20206         Fix Tramp problems with multihops, and nc
20207         * lisp/net/tramp-cache.el (tramp-get-file-property)
20208         (tramp-set-file-property, tramp-flush-file-property)
20209         (tramp-get-connection-property, tramp-set-connection-property)
20210         (tramp-flush-connection-property): Remove hop from vector.
20211         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
20212         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
20213         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
20214         netstat to 60".
20215         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
20216         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
20217         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
20218         Keep hop in result.
20219         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
20220         Add hop tests.
20222 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
20224         Resurrect highlighting of repeated words by Flyspell Mode
20225         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
20226         characters between point and the doublon candidate, so that
20227         flyspell-word-search-backward finds it.  (Bug#21157)
20229         Fix redisplay of large images on expose events
20230         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
20231         between signed negative values and unsigned values.  This
20232         prevented redisplay on expose events when the window showed a very
20233         large image.
20235 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
20237         Remove unnecessary stack overflow dependency
20238         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
20239         Don't worry about $ac_cv_header_sys_resource_h and
20240         $ac_cv_func_getrlimit, as they're no longer needed for this.
20241         Problem reported by Eli Zaretskii in:
20242         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
20244 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
20246         Pacify compilation -Wincompatible-pointer-types warnings
20247         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
20248         warning.
20249         (CompareStringW_Proc): New typedef.
20250         (w32_compare_strings): Use it, to pacify compiler warnings under
20251         "-Wincompatible-pointer-types".
20252         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
20253         (GetDiskFreeSpaceExA_Proc): New typedefs.
20254         (Ffile_system_info): Use them, to pacify compiler warnings under
20255         "-Wincompatible-pointer-types".
20257 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
20259         Fix subscript error in calculate_direct_scrolling
20260         Use slightly-longer cost vectors.  Without this change,
20261         calculate_direct_scrolling can have a subscript violation when
20262         FRAME_LINES (frame) <= delta.
20263         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
20264         (line_ins_del, do_line_insertion_deletion_costs):
20265         Allocate and use slightly-larger cost vectors, ones based on
20266         FRAME_TOTAL_LINES instead of FRAME_LINES.
20268         Fix uninitalized value in encode_coding_object
20269         * src/coding.c (encode_coding_object): Also initialize
20270         coding->src_pos and coding->src_pos_byte when NILP (src_object).
20271         This avoids later use of uninitialized storage.
20273 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
20275         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
20276         (Bug#21141)
20278 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
20280         Merge from gnulib
20281         This incorporates:
20282         2015-07-27 time_rz: port better to MinGW
20283         2015-07-27 time: port __need_time_t to MinGW
20284         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20285         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
20286         * lib/time-internal.h: New file, from gnulib.
20288 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
20290         Handle NULL pointers in w32heap.c allocation routines
20291         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
20292         freeable".
20293         (realloc_after_dump, realloc_before_dump, free_before_dump):
20294         Handle NULL pointers gracefully, as Emacs now seems to expect that.
20296         Fix Cairo build without PNG
20297         * src/image.c: Define PNG function when USE_CAIRO is defined, even
20298         if HAVE_PNG is not.  (Bug#21133)
20300         MS-Windows follow-up for recent TZ-related changes
20301         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
20302         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
20303         picking up 'struct timespec' from pthread.h, if it is installed on
20304         the user's system.  We want either the definitions from MinGW
20305         system headers, if available, or the Gnulib replacements if not.
20306         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
20307         lib/time.h.
20308         * lib/time.in.h: Don't let __need_* symbols affect what happens on
20309         MinGW.  These symbols are defined by MinGW system headers, but we
20310         don't want that to affect whether Gnulib portions of the header
20311         are or aren't used.
20313 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
20315         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
20317         New optional ZONE arg for format-time-string etc.
20318         This simplifies time conversions in other time zones.
20319         It also prevents display-time-world tampering with TZ (Bug#21020).
20320         * admin/admin.el (add-release-logs):
20321         Use improved add-log-time-format API.
20322         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
20323         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
20324         * configure.ac (tzalloc): Remove test for this, since
20325         Emacs no longer uses HAVE_TZALLOC directly.
20326         * doc/lispref/os.texi (Time of Day, Time Conversion)
20327         (Time Parsing):
20328         * etc/NEWS: Document the new behavior.
20329         Merge from gnulib, incorporating:
20330         2015-07-25 strftime: fix newly-introduced bug on Solaris
20331         2015-07-23 fprintftime, strftime: use timezone_t args
20332         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20333         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
20334         * m4/time_h.m4:
20335         Update from gnulib.
20336         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
20337         New files from gnulib.
20338         * lisp/time-stamp.el (time-stamp-string):
20339         * lisp/time.el (display-time-world-list)
20340         (display-time-world-display):
20341         Use new API, with time zone arg.
20342         * lisp/time.el (display-time-world-display):
20343         Fix race when current-time advances while we're running.
20344         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
20345         (add-log-iso8601-time-string): Accept optional time zone arg.
20346         * lisp/vc/add-log.el (add-change-log-entry):
20347         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
20348         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
20349         Add rules for the time module, since they're now needed
20350         for tzalloc etc.
20351         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
20352         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
20353         * src/editfns.c: Include errno.h.
20354         (set_time_zone_rule): Omit unnecessary forward decl.
20355         (initial_tz): Remove, replacing with ...
20356         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
20357         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
20358         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
20359         (tzlookup): New static functions.
20360         (init_editfns): New arg DUMPING.  All uses changed.
20361         (init_editfns): Omit most initialization if dumping, not if
20362         !initialized.  Initialize wall_clock_tz and local_tz.
20363         (emacs_nmemftime, format_time_string): Time zone argument can now
20364         be any time zone, not just a boolean for UTC or local time.  All
20365         callers changed.
20366         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
20367         (Fcurrent_time_zone): New optional arg ZONE.
20368         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
20369         the same form as with the other new additions.
20370         (decode_time_zone): Remove; no longer needed.
20371         (tzvalbuf): Now file-scope.
20372         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
20373         (syms_of_editfns): Define Qwall.
20374         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
20375         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
20376         [!HAVE_TZALLOC]:
20377         Remove; now supplied by gnulib.
20378         * src/emacs.c (main):
20379         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
20381 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
20383         Fix infinite loop in delete-consecutive-dups
20384         * lisp/subr.el (delete-consecutive-dups): Work even if the last
20385         element is nil (Bug#20588).  Avoid rescan of a circular list in
20386         deletion of last element.
20388 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
20390         Have `x-frame-geometry' return nil for terminal and initial
20391         frames (Bug#21132)
20392         * src/nsfns.m (Fx_frame_geometry):
20393         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
20394         terminal frames.
20395         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
20396         (Fx_frame_geometry): Return nil for terminal frames
20398 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
20400         * etc/tutorials/TUTORIAL.ja: Improve translation.
20402 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
20404         Avoid crashes when w32 GUI functions are called in -batch
20405         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
20406         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
20407         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
20409         Fix flyspell-check-previous-highlighted-word
20410         * lisp/textmodes/flyspell.el
20411         (flyspell-check-previous-highlighted-word): Really accept a
20412         numeric argument, as the doc string describes.  Fix an off-by-one
20413         error in looking up overlays, so invocation with point immediately
20414         after a word would check that word.  Clarify the doc string as
20415         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
20417 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
20419         Minor cleanup in tramp-tests.el
20420         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
20421         Implement using the documented interface
20422         `tramp-connection-properties', rather than with internal functions.
20424 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
20426         Pass lambdas to `skeleton-read'
20427         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
20428         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
20429         lambdas to `skeleton-read' (bug#20386).
20431 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
20433         * INSTALL (DETAILED BUILDING AND INSTALLATION):
20434         Mention --without-imagemagick.
20436         Don't require GUI frames and mouse for Flyspell menus
20437         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
20438         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
20439         support, since pop-up menus work with text terminals and can be
20440         controlled via the keyboard.
20442         Improve documentation of Flyspell commands
20443         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
20444         can be invoked via the keyboard.  Mention those commands by name
20445         and add them to the fn index.  (Bug#21125)
20447 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
20449         Fix some Tramp problems with HP-UX
20450         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
20451         Add "tab0" to stty call.
20452         * test/automated/tramp-tests.el (tramp-persistency-file-name):
20453         Set to nil.
20454         (tramp--test-hpux-p): New defun.
20455         (tramp--test-utf8): Use it.
20457 2015-07-22  Glenn Morris  <rgm@gnu.org>
20459         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
20461 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
20463         Fix point positioning in ffap-next-guess
20464         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
20465         as our callers expect.  This was clobbered as part of fixing
20466         bug#5673.  (Bug#21107)
20467         (ffap-gopher-at-point): Set ffap-string-at-point-region.
20469 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
20471         * lisp/window.el (even-window-sizes): Fix customization type.
20473         Optionally even widths of `display-buffer' windows.  (Bug#21100)
20474         * lisp/window.el (quit-restore-window): Restore width if
20475         requested.
20476         (display-buffer-record-window): Record width when window is
20477         reused and horizontally combined.
20478         (even-window-sizes): New option to allow evening window widths.
20479         (even-window-heights): Defalias to `even-window-sizes'.
20480         (window--even-window-heights): Rename to
20481         `window--even-window-sizes'.  Handle side-by-side windows.
20482         (display-buffer-use-some-window): Call `window--even-window-sizes'
20483         instead of `window--even-window-heights'.
20484         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
20485         * doc/lispref/windows.texi (Choosing Window Options): Describe
20486         `even-window-sizes'.
20487         (Coordinates and Windows): Fix typo.
20489 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
20491         Add file name to autoload error messages
20492         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
20493         Add condition-case to add file name to error message.
20495 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
20497         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
20498         Use 0.0.0.1 as test host.
20500 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
20502         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
20503         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
20504         Fix inf-loop (bug#21083).
20506 2015-07-21  Glenn Morris  <rgm@gnu.org>
20508         * test/automated/package-test.el (package-test-signed):
20509         Update for recent changes.
20511         * test/automated/elisp-mode-tests.el
20512         (elisp-xref-finds-both-function-and-variable)
20513         (elisp-xref-finds-only-function-for-minor-mode):
20514         Update for recent xref name changes.
20516 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
20518         Make eldoc timer non-repeatable
20519         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
20520         non-repeatable.  Since it's on post-command hook, that just wasted
20521         CPU cycles.
20523 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
20525         Mention `tramp-connection-properties' in NEWS
20527         Sync with Tramp repository
20528         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
20529         required prior changing its configuration.
20530         (Connection caching, Predefined connection information)
20531         (Remote shell setup): Fix typos.
20532         (Predefined connection information): Describe, how to overwrite
20533         parameters of `tramp-methods'.
20534         (Remote programs, Remote processes, Traces and Profiles):
20535         Simplify example.
20536         (Remote programs): Remove superfluous comment.
20537         * doc/misc/trampver.texi: Update release number.
20538         * lisp/net/tramp-cache.el (tramp-connection-properties):
20539         Adapt docstring.
20540         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
20541         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
20542         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
20543         "gvfs-mkdir -p ..." does not work robust.
20544         (tramp-gvfs-maybe-open-connection):
20545         Adapt `tramp-get-method-parameter' call.
20546         * lisp/net/tramp-sh.el (tramp-methods):
20547         Add `tramp-remote-shell-login' parameter where it fits.
20548         (tramp-get-remote-path): Use it.
20549         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
20550         (all): Adapt `tramp-get-method-parameter' calls.
20551         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
20552         (tramp-get-method-parameter): Replace argument METHOD by VEC.
20553         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
20554         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
20555         (all): Adapt `tramp-get-method-parameter' calls.
20556         * lisp/net/trampver.el: Update release number.
20557         * test/automated/tramp-tests.el (tramp--instrument-test-case):
20558         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
20559         (tramp-test13-make-directory, tramp--test-adb-p)
20560         (tramp--test-smb-or-windows-nt-p): Simplify.
20561         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
20562         (tramp--test-special-characters): Fix docstring.  Add gvfs and
20563         ftp tests.
20564         (tramp--test-utf8): Fix docstring.
20566 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
20568         Add new xref-query-replace command
20569         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
20570         New function, extracted from xref-pulse-momentarily.
20571         (xref-query-replace): New command.
20572         (xref--query-replace-1): New helper function.
20573         (xref--xref-buffer-mode-map): Add `r' binding.
20575 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
20577         Simplify icalendar decoding of Z dates
20578         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
20579         Simplify calculation of time strings with trailing "Z".
20581 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
20583         Do not corrupt grep-find-ignored-files
20584         * lisp/progmodes/project.el (project-ignores): Change the order of
20585         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
20587         Add xref-match-item, and use it
20588         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
20589         (xref-file-location): Add reader for the column slot.
20590         (xref-match-item): New class.
20591         (xref-match-bounds): A method implementation for it.
20592         (xref-make-match): New constructor function.
20593         (xref--current-item): New private variable.
20594         (xref-pulse-momentarily): Use it.
20595         (xref--pop-to-location): Change the first argument to an xref
20596         item, instead of location, bind xref--current-item.
20597         Update all callers.
20598         (xref-next-line, xref-prev-line, xref--next-error-function)
20599         (xref--mouse-2): Look for the property `xref-item',
20600         instead of `xref-location'.
20601         (xref--item-at-point): Likewise.  This function replaces
20602         `xref-location-at-point'.  Update all callers.
20603         (xref--insert-xrefs): Add the `xref-item' text property, instead
20604         of `xref-location'.
20605         (xref--collect-match): Use xref-make-match.
20607         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
20608         Update all references.
20610         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
20611         slot to `summary'.
20613         vc-hg: Perform the print-log call asynchronously
20614         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
20615         asynchronously (bug#21067).
20617         Add xref-after-jump-hook and xref-after-return-hook
20618         * lisp/progmodes/xref.el (xref-after-jump-hook)
20619         (xref-after-return-hook): New hooks.
20620         (xref-pulse-on-jump): Remove, in favor of the above.
20621         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
20622         (xref--pop-to-location, xref--display-position)
20623         (xref-pop-marker-stack): Use the new hooks, as requested in
20624         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
20626 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
20628         * lisp/progmodes/js.el (js-mode): Correct the lighter.
20630 2015-07-19  Leo Liu  <sdl.web@gmail.com>
20632         Fix a bug in cfengine3-mode
20633         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
20634         eldoc-documentation-function.
20636 2015-07-18  Julien Danjou  <julien@danjou.info>
20638         sieve-mode: support "body" test command
20639         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
20640         Add missing "body" test command.
20642 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
20644         Fix info-apropos when the default encoding is Latin-N
20645         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
20646         'undecided', so that it is set to the encoding of the Info file we
20647         are about to insert.  Otherwise, 'info-apropos' will fail to find
20648         some index nodes in some UTF-8 encoded files, if the buffer's
20649         previous encoding is Latin-N or some such.
20651 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
20653         * lisp/epg.el (epg--start): Check that gpgconf can be found
20654         before calling it.
20656         Expose more file types to OS X that Emacs understands
20657         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
20658         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
20660 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
20662         Fix visual-order cursor movement when lines are truncated
20663         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
20664         simulate display in a window of infinite width, to allow move_it_*
20665         functions reach positions outside of normal window dimensions.
20666         Remove code that tried to handle a subset of these situations by
20667         manual iteration of buffer text.  (Bug#17777)
20669         Fix following Info cross-references to anchors
20670         * lisp/info.el (Info-read-subfile): Add to the returned value the
20671         length of subfile preamble, after converting it to file's byte
20672         offset, as expected by the caller.  Use bufferpos-to-filepos.
20673         (Info-find-node-2): If searching for a node with a
20674         1000-character slop fails, try again with a 10000-character slop,
20675         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
20676         * lisp/international/mule-util.el (bufferpos-to-filepos): New
20677         function.
20678         * etc/NEWS: Mention bufferpos-to-filepos.
20680         Fix scrolling backwards on TTY frames under scroll-conservatively
20681         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
20682         in moving backwards on TTY frames.  (Bug#21080)
20684 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
20686         Consider a jsdoc tag to be a beginning of a paragraph as well
20687         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
20688         consider a jsdoc tag to be a beginning of a paragraph as well.
20690 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
20692         * lisp/emacs-lisp/package.el: Fix warnings.
20694         * lisp/emacs-lisp/package.el (package-buffer-info):
20695         Add author and maintainers to `package-buffer-info'.
20697         * lisp/emacs-lisp/package.el: Many small changes.
20698         Replace all instances of 'face with 'font-lock-face.
20699         (describe-package-1): Improve some strings and move the summary
20700         up the list.
20701         (package-install-file): Update docstring.
20702         (package-menu-hide-package): Bind to `H'.
20704         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
20705         Fix error handling.
20707 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
20709         Fix hang with large yanks This should fix the bug fixed by Mike
20710         Crowe's patch in:
20711         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
20712         A problem in this area has been reported by several users; see
20713         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
20714         This fix differs from Mike Crowe's patch in that it should avoid a
20715         race condition that could lose SIGIO signals.  ignore_sigio dates
20716         back to the 1980s when some platforms couldn't block signals, and
20717         could only ignore them, which led to races when signals arrived
20718         while being ignored.  We shouldn't have to worry about those old
20719         platforms now.
20720         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
20721         * src/emacs.c (shut_down_emacs):
20722         Don't call ignore_sigio; unrequest_sigio should suffice.
20723         * src/keyboard.c (kbd_buffer_store_buffered_event):
20724         Use unrequest_sigio, not ignore_sigio.
20725         (kbd_buffer_get_event):
20726         Call request_sigio when getting the ball rolling again.
20728 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
20730         * lisp/obsolete/longlines.el (longlines-search-function):
20731         Fallback on `isearch-search-fun-default'.
20733 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
20735         Support @-mentions
20736         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
20737         of mentions/messages with @nick instead of just nick.
20739 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
20741         Fix bug#20943
20742         * lisp/autorevert.el (auto-revert-handler): Do not check for
20743         `buffer-modified-p'.
20744         * lisp/files.el (buffer-stale--default-function): Check for
20745         `buffer-modified-p'.
20746         * test/automated/auto-revert-tests.el
20747         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
20749 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
20751         Fix delete-dups bug on long lists
20752         * lisp/subr.el (delete-dups):
20753         Don't mistakenly keep some dups when applied to long lists.
20755 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
20757         Better heuristic for C stack overflow
20758         Improve the heuristic for distinguishing stack overflows from
20759         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
20760         the getrlimit method wasn't portable to Cygwin; see:
20761         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
20762         Corinna suggested pthread_getattr_np but this also has problems.
20763         Instead, replace the low-level system stuff with a simple
20764         heuristic based on known good stack addresses.
20765         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
20766         * src/sysdep.c: Don't include <sys/resource.h>.
20767         (stack_direction): Remove.  All uses removed.
20768         (stack_overflow): New function.
20769         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
20770         Make SEGV fatal in non-main threads.
20772 2015-07-16  Daiki Ueno  <ueno@gnu.org>
20774         epg: Automatically start pinentry server
20775         * lisp/epg-config.el (epg-gpgconf-program): New variable.
20776         * lisp/epg.el (epg--start): Call `pinentry-start' if
20777         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
20779 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
20781         * lisp/gnus/nnimap.el: Fix my last bogus change.
20782         Reinstall Stefan Monnier's change that was made in
20783         <83d824bc4041332f338ad7e5e830f443535aa300>.
20785 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
20787         Merge from gnulib
20788         This incorporates:
20789         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
20790         2015-07-05 acl-permissions: Fix on FreeBSD
20791         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
20792         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
20793         * lib/set-permissions.c: Copy from gnulib.
20795         Port to stricter C99
20796         * src/keyboard.h (kbd_buffer_store_event_hold):
20797         Don't return a void expression.
20799 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
20801         * doc/emacs/frames.texi (Creating Frames):
20802         Fix the command `C-x 5 m' runs.
20804 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
20806         New autorevert tests
20807         * test/automated/auto-revert-tests.el: New file.
20809 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
20811         Clear gcprolist etc. after stack overflow
20812         After stack overflow, command_loop calls init_eval, and this needs to
20813         clear gcprolist and byte_stack_list (Bug#20996).
20814         * src/alloc.c (init_alloc):
20815         Move gcprolist and byte_stack_list initialization from here ...
20816         * src/eval.c (init_eval): ... to here.
20818 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
20820         * doc/emacs/windows.texi (Pop Up Window): Fix the description
20821         of `C-x 4 m'.
20823 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20825         Avoid deprecated enums in mac-ct font backend driver
20826         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
20827         (mac_ctfont_get_advance_width_for_glyph)
20828         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
20830         Cache font family in mac-ct font backend driver
20831         * src/macfont.m (macfont_family_cache): New variable.
20832         (syms_of_macfont): Initialize it.
20833         (macfont_available_families_cache): New variable.
20834         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
20835         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
20836         (macfont_handle_font_change_notification)
20837         (macfont_init_font_change_handler)
20838         (macfont_copy_available_families_cache): New functions.
20839         (macfont_create_family_with_symbol): Use font family caches.
20840         (macfont_list, macfont_list_family):
20841         Use macfont_copy_available_families_cache instead of
20842         mac_font_create_available_families.
20844 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
20846         Show the default value in the prompt
20847         * lisp/progmodes/xref.el: Add `M-?' binding for
20848         xref-find-references.  Declare functions `grep-read-files' and
20849         `grep-expand-template'.
20850         (xref--read-identifier): Show the default value in the prompt.
20852         * lisp/progmodes/xref.el (xref-find-regexp): When called with
20853         prefix argument, ask for file patterns to search as well.  When
20854         prompting for the directory, require an existing one.
20855         (xref-collect-matches): Add a new argument, FILES.  Use it in the
20856         above function.
20858         Add `project-ignores'
20859         * lisp/progmodes/project.el (project-ignores): New generic
20860         function, and an implementation for the VC project type.
20861         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
20862         variant of rgrep-default-command that handles a generic list of
20863         ignores.
20864         (xref-collect-matches): Use it, and pass through to it the value
20865         of the newly added argument.
20866         (xref-find-regexp): Handle ignored paths within the project.
20867         Remove outdated comment.
20868         * lisp/vc/vc.el (vc-default-ignore-completion-table):
20869         Skip the comments and the empty lines.
20871 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
20873         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
20875 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
20877         gnus-registry.el: Correct function argument order
20878         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
20879         Reverse the order of function arguments.
20881 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
20883         Bind grep-highlight-matches to nil
20884         * lisp/progmodes/xref.el (xref-collect-matches):
20885         Bind grep-highlight-matches to nil (bug#20728).
20887 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
20889         nnimap.el: Fix IMAP message size parsing
20890         * lisp/gnus/nnimap.el (nnimap-transform-headers):
20891         Don't assume that UID comes before RFC822.SIZE.
20893 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
20895         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
20896         (auth-source-creation-prompts): Declare.
20897         (nnimap-retrieve-headers, nnimap-status-message)
20898         (nnimap-request-create-group, nnimap-request-delete-group)
20899         (nnimap-close-group, nnimap-request-move-article)
20900         (nnimap-request-accept-article, nnimap-request-newgroups)
20901         (nnimap-request-post, nnimap-dummy-active-number)
20902         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
20903         (nnimap-parse-flags): Remove unused var `p'.
20904         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
20905         (nnimap-flags-to-marks): Remove unused var `totalp'.
20907 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
20909         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
20911 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20913         * src/macfont.m (macfont_list): Ignore font families lacking
20914         font descriptors.
20916 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
20918         Don't check the exit status, it can be misleading
20919         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
20920         exit status, it can be misleading.
20922         Introduce a Project API
20923         * lisp/progmodes/project.el: New file.
20924         * lisp/cedet/ede.el (project-try-ede): New function.
20925         (project-root): New implementation.
20926         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
20927         Set project-search-path-function.
20928         (elisp--xref-find-references): Delegate some logic to
20929         project-search-path.
20930         (elisp-search-path): New function.
20931         (elisp-xref-find): Don't implement `matches' anymore.
20932         * lisp/progmodes/etags.el: Don't implement `matches'.
20933         Delegate some logic to project-search-path.
20934         (etags-search-path): New function.
20935         * lisp/progmodes/xref.el (xref-find-function):
20936         Remove `matches' from the API.
20937         (xref-find-regexp): Move whatever common logic was in elisp and
20938         etags implementations, and search the directories returned by
20939         project-directories and project-search-path.
20941 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
20943         * test/automated/map-tests.el (test-map-delete-return-value):
20944         Uncomment test.
20946         Add support for gv.el in map.el
20947         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
20948         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
20949         * test/automated/map-tests.el: Update tests to work with the new
20950         implementations of map-elt and map-put.
20952 2015-07-09  Glenn Morris  <rgm@gnu.org>
20954         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
20956 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
20958         Syntax-propertize until the end of the line first
20959         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
20960         until the end of the line first.
20962 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
20964         * doc/emacs/files.texi (File Archives): Add a cross reference.
20966 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
20968         nnimap.el: Handle plain value for nnimap-stream
20969         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
20970         capabilities, so that a 'plain value for the `nnimap-stream' server
20971         variable is handled correctly.
20972         * doc/misc/gnus.texi (Customizing the IMAP Connection):
20973         Document the 'plain option.
20975 2015-07-08  Leo Liu  <sdl.web@gmail.com>
20977         Fix bug in thing-at-point--bounds-of-well-formed-url
20978         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
20979         sure boundary contains current point.
20981 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
20983         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
20984         in the end.
20986         Declare whitespace-line-column a safe file-local
20987         * lisp/whitespace.el (whitespace-line-column): Declare to be a
20988         safe file-local when the value is an integer.
20990 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
20992         gnus-group.el: Check if group names are already strings
20993         * lisp/gnus/gnus-group.el (gnus-group-group-name):
20994         The group name may already be a string.
20995         Specifically, in the group list reached from the *Server* buffer,
20996         the 'gnus-group text property returns a string.  Everywhere else
20997         it returns a symbol.
20999         nnimap.el: Remove unused let variables
21000         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
21002 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
21004         Support "maximized" property of runemacs's shortcut
21005         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
21006         the '--maximized' switch to Emacs.
21008         Support "minimized" property of runemacs's shortcut
21009         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
21010         pass the '--iconic' switch to Emacs.  (Bug#20991)
21012 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
21014         Doc fixes
21015         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
21016         C-w' in Diff mode.
21017         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
21018         Add a cross reference.
21020 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
21022         * lisp/obsolete/landmark.el: Add Obsolete-since header.
21024 2015-07-07  Glenn Morris  <rgm@gnu.org>
21026         * test/automated/ert-tests.el (ert-test-deftest):
21027         Update for recent changes.
21029 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21031         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
21032         * lisp/emacs-lisp/gv.el (gv-setter): New function.
21033         (gv-invalid-place): New error.
21034         (gv-get): Use them.
21035         (gv-synthetic-place, gv-delay-error): New places.
21036         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
21037         (cl-defgeneric, cl-defmethod): Use gv-setter.
21039 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
21041         Make vc-tests work with MSYS svn program
21042         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
21043         svn is an MSYS program.
21045 2015-07-07  Ken Brown  <kbrown@cornell.edu>
21047         Improve recent change to emacsclient on Cygwin
21048         * lisp/server.el (server-process-filter): Remove redundant check
21049         that 'cygwin-convert-file-name-from-windows' is defined as a
21050         function on Cygwin.  Don't call that function unless its argument
21051         starts with a drive letter.
21053 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21055         * lisp/emacs-lisp/package.el (package-compute-transaction):
21056         Fix void variable due to `found-something' being in the wrong `let'.
21058 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
21060         * lisp/play/landmark.el: Move to lisp/obsolete/.
21062 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
21064         Have `x-show-tip' handle `right' and `bottom' frame parameters
21065         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
21066         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
21067         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
21068         tooltips also via `right' and `bottom' frame parameters.
21070 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21072         Add online-help support to describe types
21073         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
21074         (describe-symbol): Improve the selection of default.
21075         * lisp/help-mode.el: Require cl-lib.
21076         (describe-symbol-backends): Move from help-fns.el.
21077         (help-make-xrefs): Use it.
21078         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
21079         for types.
21080         (cl--typedef-regexp): New const.
21081         (find-function-regexp-alist): Add entry for types.
21082         (cl-help-type, cl-type-definition): New buttons.
21083         (cl-find-class): New function.
21084         (cl-describe-type): New command.
21085         (cl--describe-class, cl--describe-class-slot)
21086         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
21087         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
21088         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
21089         New functions.  Moved from eieio-opt.el.
21090         (cl--generic-class-parents): New function, extracted from
21091         cl--generic-struct-specializers.
21092         (cl--generic-struct-specializers): Use it.
21093         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
21094         Improve constructor's docstrings.
21095         (cl-struct-unknown-slot): New error.
21096         (cl-struct-slot-offset): Use it.
21097         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
21098         definition in current-load-list.
21099         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
21100         (eieio--add-new-slot): Set it.
21101         (eieio-defclass-internal): Use new name for current-load-list.
21102         (eieio-oref): Add compiler-macro to warn about unknown slots.
21103         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
21104         as compile-time as well.  Improve constructor docstrings.
21105         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
21106         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
21107         (eieio-class-def): Remove button.
21108         (eieio-help-constructor): Use new name for load-history element.
21109         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
21110         (eieio-method-documentation): Move to cl-generic.el.
21111         (eieio-display-method-list): Use new names.
21112         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
21113         Add "define-linline".
21114         (lisp-fdefs): Remove "defsubst".
21115         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
21116         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
21117         (macroexp--warn-and-return): Use it to avoid inf-loops.
21118         Add `compile-only' argument.
21120 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21122         python.el: Fix local/remote shell environment setup
21123         * lisp/progmodes/python.el (python-shell-with-environment):
21124         Fix remote/local environment setup.
21125         * test/automated/python-tests.el (python-shell-with-environment-1)
21126         (python-shell-with-environment-2): New tests.
21128 2015-07-06  Glenn Morris  <rgm@gnu.org>
21130         * lisp/simple.el (set-variable): Tweak recent doc fix.
21132 2015-07-06  Ken Brown  <kbrown@cornell.edu>
21134         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
21136 2015-07-06  Glenn Morris  <rgm@gnu.org>
21138         * lisp/simple.el (set-variable): Use user-error for type mismatch.
21140 2015-07-06  Ken Brown  <kbrown@cornell.edu>
21142         * src/emacs.c (main): Don't increase the stack size on Cygwin.
21144 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21146         (describe-symbol): Rewrite describe-function-or-variable
21147         * lisp/help-fns.el (describe-symbol-backends): New var.
21148         (help-xref-stack-item): Declare.
21149         (describe-symbol): Rename from describe-function-or-variable.
21150         Rewrite using describe-symbol-backends instead of help-xref-interned.
21151         * lisp/help.el (help-map): Use it.
21152         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
21153         (help-xref-interned): Make it into an obsolete alias.
21155         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
21156         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
21157         and cl-letf.
21159 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
21161         Fix parsing glitches in dired-mark-sexp (bug#13575)
21162         * lisp/dired-x.el (dired-x--string-to-number): New function.
21163         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
21164         of directory-listing-before-filename-regexp.  Consider
21165         forward-word harmful and replace it.  Add more verbiage in
21166         comments and doc string.
21168 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21170         python.el: Respect process environment for remote shells
21171         * lisp/progmodes/python.el
21172         (python-shell-calculate-process-environment): Calculate
21173         process-environment or tramp-remote-process-environment depending
21174         whether current file is remote.
21175         (python-shell-calculate-exec-path): Calculate exec-path or
21176         tramp-remote-path depending whether current file is remote.
21177         (python-shell-with-environment): New macro.
21178         (python-shell-prompt-detect, python-shell-calculate-command)
21179         (python-shell-make-comint, python-check): Use it.
21181         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
21182         * lisp/progmodes/python.el (python-shell--interpreter)
21183         (python-shell--interpreter-args): New vars.
21184         (inferior-python-mode, python-shell-make-comint): Use them.
21186         python.el: Fixes for IPython 3.x  (Bug#20580)
21187         * lisp/progmodes/python.el:
21188         (python-shell-completion-native-setup): Fix IPython 3.x setup.
21189         (python-shell-completion-native-get-completions): Fix timeout
21190         logic.
21192         python.el: Fix mark-defun behavior  (Bug#19665)
21193         * lisp/progmodes/python.el (python-mark-defun): New function.
21194         * test/automated/python-tests.el (python-mark-defun-1)
21195         (python-mark-defun-2, python-mark-defun-3): New tests.
21197 2015-07-05  Glenn Morris  <rgm@gnu.org>
21199         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
21200         such as "extends(parent), private".  (Bug#20969)
21201         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
21202         New tests.
21204 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21206         Avoid duplicate calls to current_timespec
21207         * src/process.c (wait_reading_process_output):
21208         Cache current_timespec results as long as we're not waiting.
21210 2015-07-05  Ian Kelling  <ian@iankelling.org>
21212         Avoid returning early reading process output due to SIGIO
21213         * src/process.c (wait_reading_process_output): Extend the behavior of
21214         not breaking due to not finding output when a timer has lowered the
21215         timeout to include when SIGIO lowers the timeout.
21217         Don't return as fast reading any process output
21218         * src/process.c (wait_reading_process_output):
21219         The patch for Bug#17647 returns too fast sometimes when reading
21220         from any processes.  Revert part of it, and limit the timeout more
21221         sensibly (Bug#20978).
21223         Refactor timeouts in wait_reading_process_output
21224         * src/process.c (wait_reading_process_output):
21225         Simplify timeouts with an enum.  Remove a redundant condition.
21226         (Bug#20978)
21228         Remove ADAPTIVE_READ_BUFFERING ifdef
21229         * src/process.c (make-process, make-pipe-process, deactivate_process)
21230         (wait_reading_process_output, read_process_output, send_process)
21231         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
21232         added in case there was an operating system in which it was not
21233         useful.  That was 11 years ago and it hasn't happened.  Make
21234         development easier by not considering the effect of changes on a
21235         theoretical OS where this is disabled (Bug#20978).
21237 2015-07-05  Glenn Morris  <rgm@gnu.org>
21239         * lisp/simple.el (set-variable): Doc fix.
21241         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
21243 2015-07-05  Ian Kelling  <ian@iankelling.org>
21245         accept-process-output fix
21246         This is a followon to the fix for bug#17647 (Bug#20976).
21247         * src/process.c (status_notify): Fix too high return in some cases.
21249 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
21251         * lisp/character-fold.el (character-fold-table):
21252         Only fold decompositions if at least one character is non-spacing.
21253         (Bug#20975)
21255 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21257         Merge from gnulib
21258         This incorporates:
21259         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
21260         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
21261         2015-07-02 update-copyright: fix test failure with perl >= 5.22
21262         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
21263         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
21264         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
21265         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
21267 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
21269         Respect `prog-indentation-context' in python.el
21270         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
21271         (python-indent-context, python-indent--calculate-indentation)
21272         (python-info-current-defun)
21273         (python-info-dedenter-opening-block-message)
21274         (python-info-line-ends-backslash-p)
21275         (python-info-beginning-of-backslash)
21276         (python-info-continuation-line-p): Use `prog-widen'.
21277         (python-indent--calculate-indentation)
21278         (python-indent--calculate-levels)
21279         (python-indent-calculate-indentation): Use `prog-first-column'.
21280         (python-indent--calculate-levels): Simplify.
21281         Ignore also initial empty lines for syntax calculation.
21282         * lisp/progmodes/python.el (python-indent-context): Return
21283         :no-indent for first non-empty line, not just in line 1.
21284         * test/automated/python-tests.el (python-indent-base-case)
21285         (python-indent-inside-paren-1, python-indent-inside-paren-2)
21286         (python-indent-inside-paren-3, python-indent-inside-paren-4)
21287         (python-indent-inside-paren-5, python-indent-inside-paren-6)
21288         (python-indent-after-backslash-1)
21289         (python-indent-after-backslash-2)
21290         (python-indent-after-backslash-3)
21291         (python-indent-after-backslash-4, python-indent-inside-string-1):
21292         Expect :no-indent for first non-empty line.
21294 2015-07-04  Daniel Colascione  <dancol@dancol.org>
21296         Factor isearch word description into new function
21297         * lisp/isearch.el (isearch--describe-word-mode): New function.
21298         (isearch-message-prefix, isearch-query-replace): Use it.
21300 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
21302         Fix mouse pointer on w32 when a menu is active
21303         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
21304         shape while a menu is in use.  This started happening since we now
21305         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
21307 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
21309         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
21310         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
21311         parameter.  (Bug#17344)
21313         Have `compilation-set-window' use right window for getting fringes
21314         (Bug#20829)
21315         * lisp/progmodes/compile.el (compilation-set-window):
21316         Take `window-fringes' from argument window.
21318 2015-07-03  Glenn Morris  <rgm@gnu.org>
21320         Update eieio tests for recent eieio-core change.
21321         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
21322         * test/automated/eieio-tests.el
21323         (eieio-test-32-slot-attribute-override-2):
21324         Replace the deleted eieio--class-v with cl--find-class.
21326 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
21328         Fix some issues with `window-divider-mode'
21329         * lisp/frame.el (window-divider-default-places): New option.
21330         (window-divider-mode): Remove option.
21331         (window-divider-mode): Make it a "regular" minor mode.
21332         (window-divider-width-valid-p): Drop frame- prefix.
21333         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
21334         prefix.  Handle `window-divider-default-places'.
21335         (frame--window-divider-mode-set-and-apply): Remove.
21336         (window-divider-default-bottom-width)
21337         (window-divider-default-right-width): Drop :group entries.
21338         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
21339         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
21340         (menu-bar-no-window-divider): Set `window-divider-default-places'
21341         and call `window-divider-mode'.
21342         * doc/emacs/frames.texi (Window Dividers): Document
21343         `window-divider-default-places'.
21345 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
21347         * doc/emacs/display.texi (Displaying Boundaries):
21348         * doc/emacs/search.texi (Word Search): Add cross references.
21350 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
21352         -batch should not affect ‘’ -> `' display
21353         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
21354         -batch (Bug#20926).
21356 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
21358         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
21359         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
21360         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
21361         Use cl--find-class instead.
21363         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
21365 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
21367         Some further fixes in Change Window node (Bug#20183)
21368         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
21369         by "resizing" in section title.  Add some concept indices.
21370         Suggested by N. Jackson (Bug#20183).
21372         * doc/emacs/windows.texi (Change Window): Reference window
21373         dividers.
21375         Document new `window-divider-mode'.
21376         * lisp/frame.el (window-divider-mode): Fix doc-string.
21377         * doc/emacs/frames.texi (Window Dividers): New section.
21379         Improve accessibility of window dividers (Bug#20183)
21380         * lisp/faces.el (window-divider)
21381         (window-divider-first-pixel, window-divider-last-pixel): Change
21382         membership from `frames' to `window-divider' customization group.
21383         * lisp/frame.el (window-divider): New customization group.
21384         (window-divider-mode): New minor mode.
21385         (window-divider-default-bottom-width)
21386         (window-divider-default-right-width): New options.
21387         (frame--window-divider-previous-mode): New variable.
21388         (frame-window-divider-width-valid-p)
21389         (frame--window-divider-mode-apply)
21390         (frame--window-divider-mode-set-and-apply): New functions.
21391         * lisp/menu-bar.el (menu-bar-options-save): Save
21392         window-divider-mode settings.
21393         (menu-bar-window-divider-customize)
21394         (menu-bar-bottom-and-right-window-divider)
21395         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
21396         (menu-bar-no-window-divider): New functions.
21397         (menu-bar-showhide-window-divider-menu): New variable.
21398         (menu-bar-showhide-menu): Show/hide window divider menu.
21399         * lisp/mouse.el (mouse-split-window-vertically)
21400         (mouse-split-window-horizontally): Replace `error' by
21401         `user-error'.  Bind `window-combination-resize' to nil.
21402         (top-level): Add/reorder mouse key bindings on mode- and
21403         vertical-line.
21405 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
21407         Don't display ‘’ as `' under X in en_GB
21408         The curved quote setup code invokes (char-displayable-p ?‘),
21409         but this isn’t reliable until after the X frame replaces the
21410         terminal frame (Bug#20926).
21411         * lisp/international/mule-cmds.el (set-locale-environment):
21412         Move curved quote setup code from here ...
21413         * lisp/startup.el (command-line): ... to here, after creating
21414         the X frame.
21416 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
21418         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
21420         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
21421         to reverse the meaning (Bug#15631).
21423 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
21425         Be more tolerant to fonts named "Foobar-12"
21426         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
21427         don't barf; instead, request a new fontset to be generated.  This
21428         avoids unnecessarily rejecting fonts named against XLFD rules.  See
21429         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
21430         for the description of the original problem.
21431         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
21432         by a hyphen in a font's name.
21434         Fix value of posn-at-pont in R2L lines
21435         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
21436         coordinate of -1, for a newline in a right-to-left line that
21437         overflowed into the left fringe.
21439 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
21441         (cl--copy-slot-descriptor): Copy the `props' alist as well
21442         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
21443         Rename from cl--copy-slot-descriptor.
21444         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
21446 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21448         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
21449         (xterm-query-timeout): New var.
21450         (xterm--query): Use it.  Fallback on async method if we timeout before
21451         getting the first byte of the reply (bug#12354).
21453 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21455         Spelling fixes
21456         * lisp/character-fold.el (character-fold-search):
21457         * lisp/emacs-lisp/package.el (package-hidden-regexps):
21458         Fix typos.
21460 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
21462         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
21464 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21466         In strings, prefer plain ` and ' to \` and \'
21467         * lisp/allout.el (allout-insert-listified):
21468         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
21469         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
21470         (ls-lisp-string-lessp):
21471         * lisp/menu-bar.el (menu-bar-open):
21472         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
21473         * lisp/progmodes/compile.el (compile):
21474         * lisp/progmodes/etags.el (tags-loop-scan):
21475         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
21476         * lisp/subr.el (posn-actual-col-row):
21477         * lisp/term/pc-win.el (x-list-fonts):
21478         * lisp/textmodes/texinfmt.el (texinfmt-version):
21479         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
21480         * lisp/time.el (display-time-world-list):
21481         * lisp/tmm.el (tmm-menubar):
21482         * src/buffer.c (syms_of_buffer):
21483         * src/fileio.c (syms_of_fileio):
21484         Omit unnecessary and confusing backslash before quote.
21485         * lisp/erc/erc.el (erc-cmd-LASTLOG):
21486         * lisp/progmodes/flymake.el (flymake-fix-file-name):
21487         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
21488         Fix string that was intended to escape a backslash and not a quote.
21490 2015-06-30  Glenn Morris  <rgm@gnu.org>
21492         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
21494         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
21495         Replace hard-coded lists with wildcard + filter-out.
21497         * configure.ac (system-configuration-features): Add X11, NS.
21499         Improve reproducibility of generated loaddefs file
21500         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
21501         Make the return value the modtime of the input file (if no autoloads).
21502         (update-directory-autoloads): In the "no autoloads" section,
21503         use "most recent modtime" rather than "current time".
21505 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21507         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
21508         (Bug#20930)
21510 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
21512         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
21514         Add seq-min and seq-max
21515         Bump version number.
21516         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
21517         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
21519 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
21521         Make sure sleep-for always delays for as long as it's told
21522         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
21523         a loop, to ensure we always wait exactly the required amount of
21524         time.  (Bug#15990)
21526 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21528         Fix pointer signedness glitch
21529         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
21531 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
21533         Don't block changes in mouse pointer inside 'track-mouse'
21534         * etc/NEWS:
21535         * doc/lispref/frames.texi (Mouse Tracking): Document the special
21536         effect of setting 'track-mouse' to 'dragging'.
21537         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
21538         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
21539         * lisp/mouse-drag.el (mouse-drag-throw):
21540         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
21541         to avoid changes in the shape of the mouse pointer.
21542         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
21543         pointer shape when do_mouse_tracking has the value of 'dragging',
21544         not just any non-nil value.  (Bug#20934)
21545         (syms_of_xdisp): DEFSYM 'dragging'.
21547 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21549         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
21551         * lisp/emacs-lisp/package.el (package-compute-transaction):
21552         Don't assume version sorting.
21554         * lisp/emacs-lisp/package.el (package--save-selected-packages):
21555         Don't save before init time, to avoid overwriting configurations.
21556         (Bug#20855)
21558 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
21560         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
21561         references.
21563 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
21565         Update for the upcoming CFEngine 3.7 release: support macros and
21566         quoted context strings; reformat JSON; indent promise attributes 2
21567         units by default; give function parameter descriptions in the eldoc
21568         glue.
21569         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
21570         Autoload `json-pretty-print'.  Support new features in 3.7.
21571         (cfengine-parameters-indent): Set default promise attribute indent to
21572         2 more than the promise itself.
21573         (cfengine3-macro-regex): New variable to match the new macro syntax.
21574         (cfengine3-font-lock-keywords): Use it to highlight macros.
21575         (cfengine3-indent-line): Use it to indent macros to column 0.
21576         (cfengine3-class-selector-regex): Update for the new quoted strings
21577         format.
21578         (cfengine3-reformat-json-string): New function to reformat a JSON
21579         string using `json-pretty-print'.
21580         (cfengine3-format-function-docstring): Use function parameter
21581         description if it's provided by the cf-promises syntax dump.
21583 2015-06-29  Michael R. Mauger  <michael@mauger.com>
21585         Cygwin emacsclient handles w32 file names
21586         * lisp/server.el (server-process-filter): Allow Cygwin's
21587         emacsclient to be used as a file handler on MS-Windows.
21589 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21591         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
21592         (bug#20925).
21594 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
21596         * doc/lispref/text.texi (Sticky Properties): Improve wording.
21597         (Bug#20924)
21599         Allow font names that end in "-NN", where NN is a number
21600         * src/font.c (font_load_for_lface): If the font-spec didn't match
21601         any available fonts, try again without interpreting trailing "-NN"
21602         as the font size.  For the description of the original problem, see
21603         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
21605         .gdbinit followup to changes in !USE_LSB_TAG
21606         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
21607         !USE_LSB_TAG, as Emacs no longer does.
21609 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
21611         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
21612         Otherwise `s p' of f and F will stomp on each other's value.
21613         (Bug#20916)
21615 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
21617         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
21618         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
21620 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
21622         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
21623         as additional guess.
21625         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
21626         to a string.
21628 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
21630         apropos-library quoting fix
21631         * lisp/apropos.el (apropos-library): Quote library consistently
21632         with the rest of the quoting used by apropos.
21634         Clarify interpreter-mode-alist doc
21635         * lisp/files.el (interpreter-mode-alist):
21636         Reword to avoid confusing quoting that wasn't working anyway.
21638 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
21640         Sync with Tramp 2.2.12
21641         * doc/misc/trampver.texi:
21642         * lisp/net/trampver.el: Update release number.
21643         * test/automated/tramp-tests.el (tramp-test13-make-directory):
21644         Fix cleanup.
21646 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
21648         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
21650 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
21652         Bind grep-highlight-matches around the rgrep call
21653         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
21654         around the rgrep call (bug#20728).
21656         Put "--color" before the other options in grep-command
21657         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
21658         before the other options in grep-command (bug#20912).
21660         Add --color Grep option to the command dynamically
21661         * lisp/progmodes/grep.el (grep-template, grep-find-template):
21662         Update the description for <C>.  (Bug#20728)
21663         (grep-compute-defaults): Don't add the --color option to
21664         grep-options.  Only add it to grep-command.
21665         (grep-expand-keywords): Expand the env value opts into <C>.
21666         (grep-expand-template): Replace cf in the env with the opts list,
21667         that can include -i and --color.
21668         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
21669         "--color=always" from the template, because we don't have to.
21671 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
21673         cl-extra fixes for most-negative-fixnum
21674         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
21675         Don't mishandle an argument equal to most-negative-fixnum,
21676         whose absolute value equals itself.
21677         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
21679         Initialize cl--gensym-counter to 0
21680         Previously it was initialized to a random value, which made it
21681         harder to reproduce earlier Emacs runs.  The need for a random
21682         value went away when Emacs introduced and used the #: syntax for
21683         uninterned symbols (Bug#20862).
21684         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
21685         Document that cl--gensym-counter now starts with 0.
21686         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
21687         (cl--random-time): Move to near only remaining use.
21688         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
21690         Improve docstring for macroexp-let2
21691         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
21692         Improve as per suggestion by RMS in:
21693         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
21694         Also, rename args to match new doc string.
21696 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
21698         Fix VC test suite on MS-Windows
21699         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
21700         always starts with 3 slashes after the colon.
21701         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
21702         'w32-application-type' to invoke CVS on MS-Windows with properly
21703         formatted CVSROOT directory name.
21705         Add a new function w32-application-type
21706         * src/w32proc.c (Fw32_application_type): New function.
21708         Avoid error in TLS connections due to incorrect format
21709         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
21710         the call to 'error', instead of the unsupported %u.  Reported by
21711         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
21713 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
21715         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
21717 2015-06-26  Leo Liu  <sdl.web@gmail.com>
21719         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
21720         `with-output-to-string' in elisp.
21722         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
21723         with-output-to-string".
21724         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
21726 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
21728         Minor corrections in ELisp manual
21729         * doc/lispref/nonascii.texi (Character Properties): Correct
21730         inaccuracies in description of values of the Unicode properties.
21732         Fix invisible mouse pointers on Windows.
21733         * src/w32fns.c: Include windowsx.h.
21734         (w32_wnd_proc): If the mouse moved and the mouse pointer is
21735         invisible, make it visible again even when the main (Lisp)
21736         thread is busy.
21737         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
21738         garbaging the frame have the input thread call SetCursor.
21740 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
21742         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
21743         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
21744         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
21745         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
21746         (w32_toggle_invisible_pointer): New function.
21747         (w32_create_terminal): Add w32_toggle_invisible_pointer as
21748         toggle_invisible_pointer_hook for this terminal.
21750 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
21752         Doc fix for deletion commands
21753         'delete-char' does not respect the value of 'delete-active-region'.
21754         * doc/emacs/killing.texi (Deletion):
21755         Fix documentation for some single-char deletion commands.
21757         * doc/emacs/help.texi (Apropos):
21758         Improve documentation of 'apropos-do-all'.
21760         * doc/emacs/help.texi (Help Summary):
21761         Improve documentation of 'describe-mode'.
21763 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
21765         Fix submake dependency bug with .h files
21766         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
21767         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
21768         before the submake in $(libsrc) would spin off a subsubmake
21769         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
21771 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
21773         * lisp/character-fold.el (character-fold-table): Reuse `table'.
21775 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
21777         Translate undisplayable ‘ to `
21778         * doc/lispref/help.texi (Keys in Documentation):
21779         * lisp/international/mule-cmds.el (set-locale-environment):
21780         * lisp/term/w32console.el (terminal-init-w32console):
21781         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
21782         If ‘ is not displayable, transliterate it to `, not to '.  See:
21783         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
21785         Fix C99 incompatibilities in Cairo code
21786         * src/image.c (xpm_load) [USE_CAIRO]:
21787         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
21788         Fix pointer signedness problem.
21790 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
21792         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
21793         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
21794         `with-output-to-string' should have the same indent as `progn'.
21795         This is in line with the declaration of `with-output-to-string'.
21797 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
21799         Get ‘./configure; make -C src emacs’ to work
21800         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
21801         * lib-src/Makefile.in (../lib/libgnu.a):
21802         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
21804 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21806         Fix GC bugs --with-wide-int and Qnil == 0
21807         Use the same alignment for the !USE_LSB_TAG case as for the
21808         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
21809         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
21810         once we changed the representation of symbols so that Qnil == 0.
21811         Problem reported by Eli Zaretskii (Bug#20862).
21812         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
21813         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
21814         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
21815         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
21816         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
21817         This optimization in the !USE_LSB_TAG case is no longer valid when
21818         symbols are represented via offsets.  Change the only use to
21819         assume that pointers might hide in objects.
21820         * src/lisp.h (alignas) [!USE_LSB_TAG]:
21821         Require support in this case, too.
21822         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
21823         This is OK, because the !USE_LSB_TAG case now applies only when
21824         Lisp_Object is wider than void *, so there's no longer any need
21825         to shift the offset.  Not shifting the offset means that
21826         symbol representations have the same alignment as pointers,
21827         which the GC assumes.
21829 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
21831         * doc/lispintro/emacs-lisp-intro.texi (Data types):
21832         Improve documentation of 'substring'.
21834 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
21836         * lisp/character-fold.el (character-fold-table): Fix table generation.
21838 2015-06-24  Glenn Morris  <rgm@gnu.org>
21840         * nextstep/Makefile.in (all): Make it the first target.
21841         (../src/emacs${EXEEXT}): Add rule for making it.
21843 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
21845         * etc/NEWS: Fix mention to old function name.
21847         * lisp/character-fold.el: New file (Bug#20887)
21848         (character-fold-to-regexp): New function.
21849         * lisp/replace.el (replace-search): Check value of
21850         `character-fold-search'.
21851         * lisp/isearch.el: Move character-folding code to
21852         character-fold.el
21853         (isearch-toggle-character-fold): New command.
21854         (isearch-mode-map): Bind it to "\M-sf".
21855         (isearch-mode): Check value of `character-fold-search'.
21857 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21859         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
21860         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
21861         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
21863         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
21864         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
21866 2015-06-24  Glenn Morris  <rgm@gnu.org>
21868         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
21870 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21872         lisp/gnus/nnmaildir.el: Silence lexical warnings
21873         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
21874         functional style.
21875         (nnmaildir--update-nov): Remove unused var `numdir'.
21876         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
21877         (nnmaildir-request-group, nnmaildir-request-create-group)
21878         (nnmaildir-request-post, nnmaildir-request-move-article)
21879         (nnmaildir-request-accept-article, nnmaildir-active-number):
21880         Mark unused args.
21881         (nnmaildir-get-new-mail, nnmaildir-group-alist)
21882         (nnmaildir-active-file): Declare.
21883         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
21884         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
21885         `mark', `end', `new-mark', and `mark-sym'.
21886         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
21887         `nlist2'.
21888         (nnmaildir-request-expire-articles):
21889         Remove unused vars `article', `stop' and `nlist2'.
21890         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
21891         `end'.  Use nnmaildir--article when dyn-binding is needed.
21892         Give the value directly in the `let' for `del-mark', `del-action',
21893         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
21894         (nnmaildir-close-server): Declare those local vars that need to be
21895         dyn-bound.
21897 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21899         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
21901         Port selection info fix to clang
21902         * src/keyboard.h (kbd_buffer_store_event_hold):
21903         Don't assume C11 semantics for alignof (Bug#20756).
21905         Fix bug that munged selection info
21906         On some optimizing C compilers, copying a structure did not
21907         copy the padding bytes between elements, and the type punning
21908         between struct input_data and struct selection_input_data did
21909         not work.  Change the C code to use a proper union type instead.
21910         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
21911         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
21912         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
21913         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
21914         (mark_kboards):
21915         Use union buffered_input_event, not struct input_event.
21916         (clear_event, deliver_input_available_signal, process_special_events):
21917         Remove unnecessary forward decls.
21918         (kbd_buffer_store_buffered_event): New function, mostly just the
21919         old kbd_buffer_store_event_hold, except its argument is of type
21920         union buffered_input_event, not struct input_event.
21921         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
21922         not needed otherwise.  Argument is now of type
21923         struct selection_input_event *, not struct input_event *.
21924         All callers changed.
21925         (clear_event): Arg is now of type union buffered_input_event *,
21926         not struct input_event *.  All callers changed.
21927         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
21928         (union buffered_input_event): New type.
21929         (kbd_buffer_store_event_hold): Now an inline function,
21930         defined here.
21931         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
21932         (struct input_event): Use it.
21933         * src/xselect.c (struct selection_event_queue):
21934         Make elements be of type struct selection_input_event,
21935         not struct input_event.
21936         (selection_input_event_equal): New static function.
21937         (x_queue_event): Use it.
21938         (x_queue_event, x_decline_selection_request)
21939         (x_selection_current_request, x_reply_selection_request)
21940         (x_handle_selection_request, x_handle_selection_clear)
21941         (x_handle_selection_event): Use struct selection_input_event,
21942         not struct input_event.  All callers changed.
21943         (x_convert_selection): Omit unused first arg.  All callers changed.
21944         (Fx_disown_selection_internal): Omit unnecessary union.
21945         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
21946         rather than rolling our own equivalent.  Prefer sie.kind when
21947         setting up that kind of structure.
21948         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
21949         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
21950         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
21951         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
21952         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
21953         (SELECTION_EVENT_TIME, x_handle_selection_event):
21954         Arg is now of type struct selection_input_event *)
21955         not struct input_event *.  All callers changed.
21957 2015-06-23  Glenn Morris  <rgm@gnu.org>
21959         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
21961 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
21963         * lisp/isearch.el: Fold many unicode characters to ASCII.
21964         (isearch-character-fold-search, isearch--character-fold-extras)
21965         (isearch--character-fold-table): New variable.
21966         (isearch--character-folded-regexp): New function.
21967         (isearch-search-fun-default): Use them.
21968         * lisp/replace.el (replace-character-fold): New variable.
21969         (replace-search): Use it.
21970         * etc/NEWS: Document it.
21972 2015-06-23  Glenn Morris  <rgm@gnu.org>
21974         Check for an input event before showing a dialog box.  (Bug#20813)
21975         * lisp/subr.el (y-or-n-p):
21976         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
21977         as last-nonmenu-event.
21979 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
21981         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
21982         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
21983         (switch-to-prev-buffer, switch-to-next-buffer): Respect
21984         switch-to-visible-buffer independent of the windows history.
21986 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21988         * src/keyboard.c (last_timer_event): Remove unused var.
21990 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
21992         * test/automated/package-test.el (package-test-update-listing):
21993         Fix test.
21995 2015-06-23  Glenn Morris  <rgm@gnu.org>
21997         Revert 2014-06-25 nextstep/Makefile change.
21998         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
21999         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
22000         not as an order-only prerequisite.
22002         * configure.ac (--with-ns): Enable by default on OS X.
22004 2015-06-23  Leo Liu  <sdl.web@gmail.com>
22006         Fix shell-for/backward-command to exclude spaces
22007         * lisp/shell.el (shell-forward-command, shell-backward-command):
22008           Handle the 'move case from re-search-forward/backward.
22009           fixes debbugs:20873
22011 2015-06-22  Juri Linkov  <juri@linkov.net>
22013         * lisp/replace.el (query-replace-read-from): Add separator to
22014         the local binding of text-property-default-nonsticky.  (Bug#20690)
22016         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
22017         (Bug#20785)
22019 2015-06-22  Ken Brown  <kbrown@cornell.edu>
22021         Enable CPU profiling on Cygwin
22022         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
22023         change that undefined this.
22024         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
22025         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
22026           Cygwin.
22028         Improve diagnostics of profiler-cpu-start
22029         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
22030         return -1 if the sampling interval is invalid.
22031         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
22032         fails.  (Bug#20843)
22034 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
22036         * lisp/emacs-lisp/package.el: Exclude packages by name.
22037         (package-hidden-regexps): New variable.
22038         (package-menu--refresh): Use it.
22039         (package-menu-hide-package): New command.
22041         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
22043 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
22045         Fix debug-timer-check on systems without HAVE_TIMERFD
22046         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
22047         the expired timers, since wait_reading_process_output doesn't.
22048         (debug_timer_callback): Enlarge the tolerance to 20 msec.
22050         Fix RCS crashes in vc-test
22051         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
22052         ports of 'ci' on MS-Windows by always passing the -t- switch.
22054 2015-06-22  Glenn Morris  <rgm@gnu.org>
22056         * doc/emacs/package.texi (Packages):
22057         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
22059         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
22061 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
22063         Port tests to help-quote-translation
22064         * test/automated/ert-x-tests.el (ert-test-describe-test):
22065         * test/automated/package-test.el (package-test-describe-package)
22066         (package-test-signed): Allow straight quotes, too.
22068 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
22070         Make find-function-on-key use the current window
22071         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
22072         Extract from `find-function-on-key', add a second argument.
22073         (find-function-on-key): Use it (bug#19679).
22074         (find-function-on-key-other-window)
22075         (find-function-on-key-other-frame): New commands.
22077 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
22079         Revert "Define `map-elt' as a generalized variable"
22080         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
22082 2015-06-21  Ken Brown  <kbrown@cornell.edu>
22084         Drop support for CPU profiling on Cygwin
22085         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
22086         (Bug#20843)
22088 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22090         Fix some “nested” quoting confusion in doc strings
22091         * lisp/emacs-lisp/advice.el (ad-map-arglists):
22092         * lisp/kermit.el (kermit-clean-on):
22093         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
22094         * src/keyboard.c (Frecursive_edit):
22095         Use curved quotes when quoting text containing apostrophe,
22096         so that the apostrophe isn't curved in the output.
22098 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
22100         Define `map-elt' as a generalized variable
22101         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
22102         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
22103         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
22104         `setf' with `map-elt'.
22105         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
22107 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
22109         Improve error handling in tramp-adb.el
22110         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
22111         Improve error handling.
22113 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
22115         Reuse `alist-get' in map.el
22116         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
22117         elements.
22119 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
22121         Fix bytecomp-tests--warnings when $TMPDIR has a long name
22122         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
22123         Allow the warning to begin on the 3rd, not only 2nd line, which
22124         happens if temporary-file-directory has a very long name.
22126         Expect 2 icalendar tests to fail on MS-Windows
22127         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
22128         (icalendar-real-world): Make them expected failures on MS-Windows.
22130 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22132         Improve port of settings UI to older displays
22133         * lisp/cus-start.el (standard): Don't assume curved quotes are
22134         easily distinguishable when users are tinkering with a setting
22135         that affects how curved quotes are generated.
22137         Fix quoting in electric-quote-mode doc string
22138         * lisp/electric.el (electric-quote-mode): Fix quoting.
22139         This is a fallout from the recent change introducing
22140         ‘help-quote-translation’.
22142         Spelling fix
22144         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
22146         * src/doc.c (syms_of_doc): Remove unused symbols.
22148 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
22150         * lisp/window.el (window-state-put): Undedicate target window
22151         before putting STATE into it.  (Bug#20848)
22153 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22155         Merge from origin/emacs-24
22156         a5e6f33 Fixes: debbugs:20832
22157         b9f02cf Fixes: debbugs:20832
22159 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
22161         Fix file-in-directory-p when the directory is UNC
22162         * lisp/files.el (file-in-directory-p): Support files and
22163         directories that begin with "//".  (Bug#20844)
22165 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
22167         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
22168         in the minibuffer.  (Bug#20832)
22170 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
22172         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
22173         for adding new todo file is empty but modified.  (Bug#20832)
22175 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
22177         (filepos-to-bufferpos): Further tweaks to the utf-16 code
22178         * lisp/international/mule-util.el (filepos-to-bufferpos):
22179         Fix typo.  Move non-exact check to the utf-16 branch (the only one
22180         affected).  Don't use byte-to-position for the utf-16 case.
22182 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
22184         Minor fixes in filepos-to-bufferpos
22185         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
22186         test for utf-8-emacs.  Exempt single-byte encodings from the
22187         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
22188         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
22189         UTF-16 encoded files for CR-LF EOLs.
22191 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22193         Improve the optional translation of quotes
22194         Fix several problems with the recently-added custom variable
22195         help-quote-translation where the code would quote inconsistently
22196         in help buffers.  Add support for quoting 'like this', which
22197         is common in other GNU programs in ASCII environments.  Change
22198         help-quote-translation to use more mnemonic values: values are now the
22199         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
22200         traditional Emacs help-buffer quoting style `like this'.  Change the
22201         default behavior of substitute-command-keys to match what's done in
22202         set-locale-environment, i.e., quote ‘like this’ if displayable,
22203         'like this' otherwise.
22204         * doc/lispref/help.texi (Keys in Documentation): Document
22205         new behavior of substitute-command-keys, and document
22206         help-quote-translation.
22207         * doc/lispref/tips.texi (Documentation Tips):
22208         Mention the effect of help-quote-translation.
22209         * etc/NEWS: Mention new behavior of substitute-command-keys,
22210         and merge help-quote-translation news into it.
22211         When talking about doc strings, mention new ways to type quotes.
22212         * lisp/cedet/mode-local.el (overload-docstring-extension):
22213         Revert my recent change to this function, which shouldn't be
22214         needed as the result is a doc string.
22215         * lisp/cedet/mode-local.el (mode-local-print-binding)
22216         (mode-local-describe-bindings-2):
22217         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
22218         * lisp/cus-theme.el (describe-theme-1):
22219         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22220         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
22221         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
22222         (eieio-help-constructor):
22223         * lisp/emacs-lisp/package.el (describe-package-1):
22224         * lisp/faces.el (describe-face):
22225         * lisp/help-fns.el (help-fns--key-bindings)
22226         (help-fns--compiler-macro, help-fns--parent-mode)
22227         (help-fns--obsolete, help-fns--interactive-only)
22228         (describe-function-1, describe-variable):
22229         * lisp/help.el (describe-mode):
22230         Use substitute-command-keys to ensure a more-consistent quoting
22231         style in help buffers.
22232         * lisp/cus-start.el (standard):
22233         Document new help-quote-translation behavior.
22234         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
22235         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
22236         (help-xref-url-regexp):
22237         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
22238         * lisp/wid-edit.el (widget-documentation-link-regexp):
22239         Also match 'foo', in case we're in a help buffer generated when
22240         help-quote-translation is ?'.
22241         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
22242         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
22243         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
22244         (Fsubstitute_command_keys): Document and implement new behavior.
22245         (Vhelp_quote_translation): Document new behavior.
22247 2015-06-18  Glenn Morris  <rgm@gnu.org>
22249         * lisp/cus-start.el (help-quote-translation): Add :version.
22251         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
22253 2015-06-18  Alan Mackenzie  <acm@muc.de>
22255         Make translation of quotes to curly in doc strings optional.
22256         * src/doc.c (traditional, prefer-unicode): New symbols.
22257         (help-quote-translation): New variable.
22258         (Fsubstitute_command_keys): Make translation of quotes dependent on
22259         `help-quote-translation'; also translate curly quotes back to ASCII
22260         ones.
22261         * lisp/cus-start.el (top-level): Add a customization entry for
22262         `help-quote-translation'.
22264 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
22266         * lisp/emacs-lisp/package.el: Don't always propagate async errors
22267         (package--with-work-buffer-async): Only propagate the error if the
22268         callback returns non-nil.
22269         (package--download-one-archive): Return nil on the signature
22270         checking callback if we accept unsigned.
22271         (package--download-and-read-archives): Return non-nil on the
22272         archive download callback.
22274 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
22276         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
22277         * src/nsfns.m (Fx_create_frame):
22278         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
22279         image_cache_refcount before first x_default_parameter call.
22281 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
22283         Improve and extend filepos-to-bufferpos
22284         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
22285         Don't barf if F returns nil for some argument.
22286         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
22287         that every encoding of type 'charset' is single-byte.
22289 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
22291         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
22292         Properly delete packages.  (Bug#20836)
22294 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
22296         Update data files from just-released Unicode 8.0
22297         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
22298         status.
22299         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
22300         * admin/unidata/BidiMirroring.txt:
22301         * admin/unidata/BidiBrackets.txt:
22302         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
22304 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
22306         Document curved quotes a bit better
22307         * doc/emacs/basic.texi (Inserting Text):
22308         Mention C-x 8.  Change example to use curved quote rather
22309         than infinity, as this lets us give more ways to do it.
22310         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
22311         and quotation marks.
22312         * doc/emacs/text.texi (Quotation Marks):
22313         * doc/lispref/tips.texi (Documentation Tips):
22314         Add "curly quotes" and "curved quotes" to the index.
22315         * doc/emacs/text.texi (Quotation Marks):
22316         Give the C-x 8 shorthands for curved quotes.
22317         Cross-reference to "Quotation Marks".
22319 2015-06-17  Daiki Ueno  <ueno@gnu.org>
22321         Add pinentry.el for better GnuPG integration
22322         * lisp/pinentry.el: New file.
22323         * etc/NEWS: Add entry about pinentry.el.
22324         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
22325         (Bug#20550)
22327 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
22329         * lisp/emacs-lisp/package.el: Slightly better error reporting.
22331 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
22333         (define-minor-mode): Use setq-default for :global minor modes
22334         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
22335         Use setq-default for :global minor modes (bug#20712).
22337 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
22339         Avoid infloop in redisplay with tall images
22340         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
22341         down near ZV.  (Bug#20808)
22342         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
22343         instead of CHARPOS.
22345 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
22347         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
22348         Fix error reporting.
22350         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
22352         * lisp/emacs-lisp/package.el: Revert buffer after any operation
22353         Call `package-menu--post-refresh' after any operation that changes
22354         the package database (`package-install' and `package-delete').  To
22355         avoid performance issues in large transactions, these functions
22356         add `post-refresh' to `post-command-hook' instead of calling it
22357         immediately.
22358         (package-menu--mark-or-notify-upgrades): New function.
22359         (list-packages): Add it to `package--post-download-archives-hook'.
22360         (package-menu--post-refresh): Lose the upgrade-checking code, add
22361         code to remove itself from `post-command-hook'.
22362         (package-install, package-delete): Add it to `post-command-hook'.
22363         (package-menu-execute): Don't call `package-menu--post-refresh'.
22365 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
22367         Add missing function xref-location-group for elisp-mode.
22368         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
22370 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
22372         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
22373         The behavior now matches the description in the manual.  (Bug#20783)
22375 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
22377         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
22379 2015-06-17  Glenn Morris  <rgm@gnu.org>
22381         Generate char-script-table from Unicode source.  (Bug#20789)
22382         * admin/unidata/Makefile.in (AWK): New, set by configure.
22383         (all): Add charscript.el.
22384         (blocks): New variable.
22385         (charscript.el, ${unidir}/charscript.el): New targets.
22386         (extraclean): Also remove generated charscript.el.
22387         * admin/unidata/blocks.awk: New script.
22388         * admin/unidata/Blocks.txt: New data file, from unicode.org.
22389         * lisp/international/characters.el: Load charscript.
22390         * src/Makefile.in (charscript): New variable.
22391         (${charscript}): New target.
22392         (${lispintdir}/characters.elc): Depend on charscript.elc.
22393         (temacs$(EXEEXT)): Depend on charscript.
22395         * lisp/international/characters.el (char-script-table): Tweak
22396         some ranges to better match the source.  (Bug#20789#17)
22398         Remove "no-byte-compile: t" from a few files.
22399         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
22400         * lisp/obsolete/patcomp.el: No reason not to compile these.
22402 2015-06-16  Glenn Morris  <rgm@gnu.org>
22404         Fix some typos in copied Unicode data.  (Bug#20789)
22405         * lisp/international/characters.el (char-script-table):
22406         * lisp/international/fontset.el (script-representative-chars)
22407         (setup-default-fontset): Fix typos.
22409         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
22410         Don't print filename twice (it's in the prefix now).
22412         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
22413         No longer needed.
22415         Address a compilation warning.
22416         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
22417         Replace 't' with '_' in pcase.
22419         Address some check-declare warnings.
22420         * lisp/simple.el (tabulated-list-print):
22421         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
22422         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
22423         (ns-get-selection): Update declarations.
22425         Address some compilation warnings.
22426         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
22427         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
22428         Replace 't' with '_' in pcase.
22430         Address some compilation warnings.
22431         * lisp/face-remap.el (text-scale-adjust):
22432         * lisp/menu-bar.el (popup-menu-normalize-position):
22433         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
22434         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
22435         * lisp/emacs-lisp/generator.el (cps--transform-1):
22436         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
22437         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
22438         * lisp/progmodes/octave.el (octave-goto-function-definition)
22439         (octave-find-definition-default-filename):
22440         Replace 't' with '_' in pcase.
22442         * lisp/emacs-lisp/pcase.el (pcase--u1):
22443         Paper-over today's bootstrap failure.
22445 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
22447         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
22449         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
22451         Better confirmation message in `find-alternate-file' (Bug#20830)
22452         * lisp/files.el (find-alternate-file'): Improve the confirmation
22453         message to show the buffer name.
22455         Better docstring for null.  (Bug#20815)
22456         * src/data.c (null): Improves the docstring, saying what null returns
22457         when OBJECT is non-nil.
22459 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
22461         * lisp/net/newst-treeview.el: Use lexical-binding.
22463         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
22464         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
22465         New auxiliary function, extracted from filepos-to-bufferpos.
22466         Make sure it terminates.
22467         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
22468         Add support for the `exact' quality.
22470 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
22472         Identify feeds in newsticker treeview with :nt-feed property
22473         * lisp/net/newst-treeview.el:
22474         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
22476 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
22478         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
22479         (pcase--self-quoting-p): Floats aren't self-quoting.
22480         (pcase): Tweak docstring.
22481         (pcase--u1): Deprecate the t pattern.  Improve error detection for
22482         the nil pattern.
22483         (\`): Tweak docstring.  Signal an error for unrecognized cases.
22484         (bug#20784)
22486 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
22488         Fix infloop in filepos-to-bufferpos
22489         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
22490         offset calculation, and make it conditional on the eol-type of the
22491         file's encoding.  (Bug#20825)
22493 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
22495         Fix handling of image cache refcounts.  (Bug#20802)
22496         This backports Eli Zaretskii's solution of this problem for W32
22497         to X and NS.
22498         * src/nsfns.m (image_cache_refcount): Define unconditionally.
22499         (unwind_create_frame): If the image cache's reference count
22500         hasn't been updated yet, do that now.
22501         (Fx_create_frame): Set image_cache_refcount unconditionally.
22502         * src/xfns.c (image_cache_refcount): Define unconditionally.
22503         (unwind_create_frame): If the image cache's reference count
22504         hasn't been updated yet, do that now.
22505         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
22506         unconditionally.
22507         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
22508         X and NS.
22510 2015-06-16  Nils Ackermann  <nils@ackermath.info>
22512         Improve reftex-label-regexps default value
22513         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
22514         keyvals label regexp more strict to better cope with unbalanced
22515         brackets common in math documents.
22517 2015-06-16  Glenn Morris  <rgm@gnu.org>
22519         * doc/emacs/calendar.texi (Format of Diary File):
22520         Move "nonmarking" from here...
22521         (Displaying the Diary): ... to here.
22523         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
22524         Swap the order of these nodes.
22525         * doc/emacs/emacs.texi: Update detailed menu for the above change.
22527         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
22528         Update date of examples.
22529         (Diary, Format of Diary File): Move example from former to latter.
22530         Reduce duplication.
22532         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
22533         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
22534         Don't set no-byte-compile in the outputs.
22535         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
22537 2015-06-15  Glenn Morris  <rgm@gnu.org>
22539         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
22540         * doc/emacs/calendar.texi (Diary, Format of Diary File):
22541         Update for above diary-file change.
22543         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
22544         (apply-macro-to-region-lines): Use user-error.
22546         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
22547         (pages-directory-for-addresses): Doc fixes.
22549 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22551         * lisp/info.el: Cleanup bytepos/charpos issues
22552         * lisp/international/mule-util.el: Use lexical-binding.
22553         (filepos-to-bufferpos): New function.
22554         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
22555         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
22556         (Info-read-subfile, Info-search): Use 0-based file positions.
22558         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
22559         (perl--syntax-exp-intro-keywords): New var.
22560         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
22561         (bug#20800).
22563 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
22565         Fix quoting when making derived mode docstring
22566         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
22567         Nest regexp-quote inside format, not the reverse.
22568         Problem reported by Artur Malabarba in:
22569         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
22571 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
22573         Fix current-iso639-language on MS-Windows
22574         * lisp/international/mule-cmds.el (set-locale-environment):
22575         Downcase the locale name before interning it.  This is so the
22576         'current-iso639-language' on MS-Windows matches the ':lang'
22577         property of font-spec objects.
22579         Limit Symbola usage some more
22580         * lisp/international/fontset.el (setup-default-fontset): Limit
22581         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
22582         (Bug#20727)
22584 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
22586         * lisp/emacs-lisp/map.el (map-let): Better docstring.
22588 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
22590         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
22591         (help-fns-test-funny-names): Spelling fixes.
22593 2015-06-14  Glenn Morris  <rgm@gnu.org>
22595         * lisp/version.el (emacs-repository-version-git): Demote errors.
22596         Check result is a hash.
22598 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
22600         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
22601         Catch errors that happen before going async.  (Bug#20809)
22603 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
22605         Another improvement of documentation of set-fontset-font
22606         * doc/lispref/display.texi (Fontsets): Say explicitly that
22607         CHARACTER can be a single codepoint.
22608         * src/fontset.c (Fset_fontset_font): Doc fix.
22610         Another improvement for symbol and punctuation characters
22611         * lisp/international/fontset.el (setup-default-fontset): Exclude
22612         from Symbola character ranges for symbols and punctuation covered
22613         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
22614         installed and where its coverage of symbols and punctuation is
22615         known to be good.  (Bug#20727)
22617 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
22619         Some generic support for multi-mode indentation.
22620         * lisp/progmodes/prog-mode.el (prog-indentation-context):
22621         New variable.
22622         (prog-first-column, prog-widen): New convenience functions.
22624 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
22626         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
22627         Don't assume that `tabulated-list-printer' will leave point at the
22628         end of the buffer.  (Bug#20810)
22630 2015-06-13  Glenn Morris  <rgm@gnu.org>
22632         Tweaks for getting repository version; a bit more like it was for bzr
22633         * lisp/version.el (emacs-repository-version-git)
22634         (emacs-repository--version-git-1): New functions,
22635         split from emacs-repository-get-version.
22636         (emacs-repository-get-version): Make the second argument meaningful.
22638         * lisp/startup.el (command-line-1): Inform if skipping relative
22639         file names due to deleted PWD.
22641         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
22642         when starup directory is missing.  (Bug#18851)
22643         (errno.h): Include it.
22645 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
22647         Better fix for documenting `X as "`X"
22648         Fix suggested by Stefan Monnier.
22649         * lisp/help-fns.el (help-fns--signature):
22650         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
22651         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
22652         Don't treat `X specially, as help-fns--signature now handles this.
22654 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
22656         Improve the default fontset when Symbola is not installed
22657         * lisp/international/fontset.el (setup-default-fontset): Only
22658         prepend Symbola and FreeMono font specs for symbols and
22659         punctuation; do not replace the default spec for them.  This
22660         should have better results when Symbola/FreeMono are not
22661         installed.  (Bug#20727)
22663         Improve documentation of ':lang' in font specs
22664         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
22665         use of the ':lang' property of the font spec.
22666         * doc/emacs/frames.texi (Fonts): Document the language names that
22667         can be in the STYLE part of XLFD.
22668         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
22669         property.
22671         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
22673         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
22675         Revert last change in fontset.el
22676         * lisp/international/fontset.el (setup-default-fontset): Revert
22677         the change "Configure Symbola font only if installed", since font
22678         search is evidently not yet set up when this function is called.
22679         (Bug#20727)
22681 2015-06-12  Glenn Morris  <rgm@gnu.org>
22683         Ensure early startup warnings are visible at the end.  (Bug#20792)
22684         * lisp/emacs-lisp/warnings.el (display-warning):
22685         If startup isn't complete, delay the warning.
22686         * lisp/startup.el (normal-top-level, command-line):
22687         Let display-warning automatically handle the needed delays.
22688         Run delayed-warnings-hook.
22690         * lisp/version.el (emacs-repository-get-version):
22691         Avoid calling external executable if possible.  (Bug#20799)
22693 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22695         Document `X as "`X", not as "(` X)"
22696         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
22697         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
22699         * src/print.c (print_object): Minor simplification.
22701 2015-06-12  Glenn Morris  <rgm@gnu.org>
22703         * src/buffer.c (init_buffer): Add final newline to message.
22705 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22707         Configure Symbola font only if installed
22708         * lisp/international/fontset.el (setup-default-fontset):
22709         Don't specify the Symbola font if it's not installed.
22710         Likewise for FreeMono.  (Bug#20727)
22712 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
22714         Configure Symbola font only for symbols and punctuation
22715         * lisp/international/fontset.el (setup-default-fontset): Leave
22716         only symbols and punctuation in the fontset setup for Symbola
22717         font; remove "Greek and Coptic" and "Cyrillic Supplement".
22718         (Bug#20798)
22720 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
22722         Fix crash in fontset-info
22723         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
22724         non-nil.
22726 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22728         Port to Solaris 10 sparc + Sun C 5.13
22729         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
22730         Adjust to process.c change.
22731         * src/process.c (create_process): Declare volatile variables at
22732         top level of this function, so that they're less likely to be
22733         reused later in the function in the code executed by the vforked
22734         child.  Do not declare locals used only in the vforked child, as
22735         they might share memory with locals still live in the parent.
22736         Instead, use the same variables in the child as in the parent.
22737         This works around a subtle bug that causes a garbage collector
22738         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
22740 2015-06-12  Glenn Morris  <rgm@gnu.org>
22742         * lisp/startup.el (normal-top-level): Don't let *Messages* get
22743         a nil default-directory.
22745 2015-06-11  Glenn Morris  <rgm@gnu.org>
22747         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
22749         Some progress towards starting with PWD deleted.  (Bug#18851)
22750         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
22751         * lisp/startup.el (normal-top-level, command-line-1):
22752         * lisp/minibuffer.el (read-file-name-default):
22753         Handle default-directory being nil.
22755 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
22757         Fix "not a tty" bug on Solaris 10
22758         * configure.ac (PTY_OPEN): Define to plain 'open'
22759         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
22760         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
22761         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
22762         hosts that call grantpt which does its work via a setuid subcommand
22763         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
22764         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
22765         seems relevant in that case too.
22767 2015-06-11  Juri Linkov  <juri@linkov.net>
22769         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
22770         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
22771         (Bug#20785)
22773 2015-06-11  Glenn Morris  <rgm@gnu.org>
22775         * lisp/international/characters.el (char-script-table): Fix typo.
22777 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
22779         Fix quoting of help for functions with odd names
22780         While investigating Bug#20759, I discovered other quoting problems:
22781         C-h f mishandled characters like backslash and quote in function names.
22782         This fix changes the behavior so that 'C-h f pcase RET' now
22783         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
22784         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
22785         in src/lread.c's read1 function says that the backslash will be
22786         needed starting in Emacs 25, which implies that 'format' is
22787         correct and the old pcase documention was wrong to omit the backslash.
22788         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
22789         * lisp/help-fns.el (help-fns--signature):
22790         * lisp/help.el (help-add-fundoc-usage):
22791         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
22792         Use help--make-usage-docstring rather than formatting
22793         help-make-usage.
22794         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
22795         Return raw docstring.
22796         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
22797         raw docstring.  Take more care to distinguish raw from cooked dstrings.
22798         (describe-function-1): Let help-fns--signature substitute
22799         command keys.
22800         * lisp/help.el (help--docstring-quote): New function.
22801         (help-split-fundoc): Use it, to quote funny characters more
22802         systematically.
22803         (help--make-usage): Rename from help-make-usage, since this
22804         should be private.  Leave an obsolete alias for the old name.
22805         (help--make-usage-docstring): New function.
22806         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
22808 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
22810         * lisp/thingatpt.el (in-string-p): Revert last change,
22811         since in-string-p is not used in thingatpt.el but only from outside.
22812         Also, use lexical binding.
22814 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
22816         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
22817         * test/automated/let-alist.el (let-alist-cons): Test it.
22819 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
22821         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
22823 2015-06-10  Glenn Morris  <rgm@gnu.org>
22825         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
22827         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
22828         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
22829         * admin/gitmerge.el (gitmerge-commit-message):
22830         Exclude "skipped" messages from ChangeLog once again.
22832         Slight namespace cleanup for thingatpt.el.
22833         * lisp/thingatpt.el (thing-at-point--in-string-p)
22834         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
22835         (thing-at-point--read-from-whole-string): Rename from
22836         old versions without "thing-at-point--" prefix.
22837         Keep old versions as obsolete aliases.  Update all uses.
22839         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
22840         Move requiring of finder from here...
22841         (checkdoc-package-keywords): ... to here.
22843         Use 'user-error' in a few calendar files.
22844         * lisp/calendar/appt.el (appt-add):
22845         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
22846         (calendar-generate):
22847         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
22848         Replace 'error' with 'user-error'.
22850         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
22852         * lisp/files-x.el (add-file-local-variable):
22853         Special-case 'lexical-binding'.  (Bug#20641)
22855         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
22856         No longer autoload.
22857         * doc/misc/autotype.texi (Executables):
22858         Undocument executable-self-display.
22860         * lisp/progmodes/executable.el (executable-self-display):
22861         Use non-obsolete tail syntax.  (Bug#20779)
22862         (executable-self-display): Doc update.
22864 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
22866         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
22867         (finder-known-keywords): Silence byte-compiler.
22869 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22871         * lisp/simple.el (eval-expression): Macroexpand before evaluating
22872         (bug#20730).
22874         * lisp/progmodes/sh-script.el: Better handle nested quotes.
22875         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
22876         (sh-font-lock-quoted-subshell): Make sure double quotes within single
22877         quotes don't mistakenly end prematurely the surrounding string.
22879         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
22881 2015-06-09  Glenn Morris  <rgm@gnu.org>
22883         * test/automated/Makefile.in (ELFILES): Sort.
22885         * Makefile.in (SUBDIR_MAKEFILES):
22886         * lwlib/Makefile.in (WARN_CFLAGS):
22887         Use built-in Make functions rather than echo+sed.
22889 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
22891         Update char-script-table
22892         * lisp/international/characters.el (char-script-table): Update
22893         from Unicode 8.0 Draft.
22895         Improve font selection for punctuation and other symbols
22896         * src/fontset.c (face_for_char): If the character's script is
22897         'symbol', and the font used for ASCII face has a glyph for it, use
22898         the font for the ASCII face instead of searching the fontsets.
22899         This comes instead of NS-specific code that used the current
22900         face's font instead, which is now disabled due to undesirable
22901         consequences.  (Bug#20727)
22903 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
22905         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
22906         Skip past `#' to find BEG (bug#20771).
22907         * test/automated/elisp-mode-tests.el
22908         (elisp-completes-functions-after-hash-quote): New test.
22910 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
22912         Fix compilation warning/error in --without-x builds
22913         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
22914         code on HAVE_WINDOW_SYSTEM.
22916         Improve the default fontset wrt symbols
22917         * lisp/international/fontset.el (setup-default-fontset): Better
22918         setup of fontset-default for symbols: use Symbola and FreeMono.
22919         (Bug#20727)
22921 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
22923         Add new command checkdoc-package-keywords
22924         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
22925         New defcustom.
22926         (checkdoc-list-of-strings-p): Add doc.
22927         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
22928         non-nil, call `checkdoc-package-keywords'.
22929         (checkdoc-get-keywords): New defun.
22930         (checkdoc-package-keywords): New command.  Warns if the current file
22931         has package.el-style keywords that aren't in `finder-known-keywords'.
22932         * etc/NEWS: Add entry.
22934 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
22936         Avoid crashes when key-binding is called from a timer
22937         * src/keymap.c (Fkey_binding): Don't segfault if called with an
22938         empty vector as KEY.  (Bug#20705)
22940         Fix a thinko in arc-mode.el
22941         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
22942         non-Zip64 case.  (Bug#20769)
22944 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
22946         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
22948 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
22950         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
22951         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
22952         "*warn*", print the warning to the standard output.  (bug#20754)
22954 2015-06-07  Glenn Morris  <rgm@gnu.org>
22956         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
22958         * src/font.c (syms_of_font) <font-log>: Doc fix.
22960         Remove the obsolete leading "*" from some C doc strings.
22961         * src/coding.c (syms_of_coding):
22962         * src/font.c (syms_of_font): Remove leading "*" from docs.
22963         * lisp/cus-start.el (enable-character-translation): Add it.
22965 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
22967         Move gen_origin from program to data
22968         That way, 'make change-history' needs to change only ChangeLog.2,
22969         instead of having to change two files.
22970         * ChangeLog.2: Add commit info for range that this file covers.
22971         * Makefile.in (new_commit_regexp): New macro.
22972         (change-history-nocommit): Simplify, by putting what used to be
22973         the gen_origin value into the data (ChangeLog.2) rather than
22974         into the program (gitlog-to-emacslog).
22975         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
22976         the input file (e.g., ChangeLog.2) rather than by having a
22977         constant in the program.  Substitute it into the output.
22979 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
22981         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
22982         function name (bug#20759).
22984 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
22986         Adapt 'struct timespec' to next release of MinGW runtime
22987         * nt/inc/ms-w32.h (struct timespec): Don't declare if
22988         __struct_timespec_defined is defined.
22990 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
22992         Merge from gnulib
22993         This incorporates:
22994         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
22995         2015-06-05 stdio: Don't redefine gets when using C++
22996         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
22997         2015-06-02 file-has-acl: fix build on Mac OS X 10
22998         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
22999         2015-06-01 pthread_sigmask: discount system version if a simple macro
23000         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
23001         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
23002         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
23003         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
23004         * lib/gnulib.mk: Regenerate.
23006 2015-06-06  Juri Linkov  <juri@linkov.net>
23008         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
23009         before calling grep-compute-defaults because now it affects the
23010         command lines computed in grep-compute-defaults.  (Bug#20728)
23012 2015-06-06  Glenn Morris  <rgm@gnu.org>
23014         Address some compilation warnings.
23015         * lisp/international/mule-cmds.el (w32-get-console-codepage)
23016         (w32-get-console-output-codepage):
23017         * lisp/progmodes/elisp-mode.el (xref-collect-references):
23018         * lisp/version.el (cairo-version-string): Declare.
23019         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
23021 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
23023         Fix display when a font claims large values of ascent and descent
23024         This fixes bug#20628.
23025         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
23026         coordinate of a hollow cursor glyph when the original glyph's
23027         ascent is too small.
23028         (get_font_ascent_descent, normal_char_ascent_descent)
23029         (normal_char_height): New functions.
23030         (handle_single_display_spec, append_space_for_newline)
23031         (calc_pixel_width_or_height, produce_stretch_glyph)
23032         (calc_line_height_property): Use normal_char_ascent_descent and
23033         normal_char_height.
23034         (x_produce_glyphs): When font-global values of ascent and descent
23035         are too large, use per-character glyph metrics instead, if
23036         possible.  But don't allow the glyph row's ascent and descent
23037         values become smaller than the values from the metrics of the
23038         font's "normal" character.
23039         * src/xftfont.c (xftfont_draw):
23040         * src/w32font.c (w32font_draw): Correct the values of ascent and
23041         descent used to draw glyphless characters' hex code in a box.
23042         * src/xterm.c (x_draw_glyph_string_background):
23043         * src/xdisp.c (x_produce_glyphs):
23044         * src/w32term.c (x_draw_glyph_string_background):
23045         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
23046         to detect fonts whose global ascent and descent values are too
23047         large to be used in layout decision, and redraw the background
23048         when that happens.
23049         * src/dispextern.h (FONT_TOO_HIGH): New macro.
23050         (get_font_ascent_descent): Add prototype.
23051         * src/xterm.c (x_new_font):
23052         * src/w32term.c (x_new_font):
23053         * src/nsterm.m (x_new_font):
23054         * src/font.c (font_open_entity):
23055         * src/composite.c (composition_gstring_width):
23056         Use get_font_ascent_descent to obtain reasonable values for ascent
23057         and descent of a font.
23059 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
23061         Add assertion in adjust_point_for_property
23062         * src/keyboard.c (adjust_point_for_property): Add eassert for
23063         current buffer being shown in selected window.
23065 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
23067         Replace uses of in-string-p; make it obsolete
23068         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
23069         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
23071 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
23073         Fix Dired display of an explicit list of files by ls-lisp.el
23074         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
23075         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
23076         correct for when displaying individual files separately, not as
23077         part of listing a directory, in which case these values are not
23078         recomputed by 'ls-lisp-insert-directory', but used verbatim.
23080         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
23082 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
23084         Do not adjust point in a non-selected window
23085         * src/keyboard.c (command_loop_1): Do not adjust point when
23086         current buffer is not shown in selected window (Bug#20590).
23088         * etc/DEBUG: Mention 'maybe_call_debugger'
23090 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
23092         Fix a unit test for map.el
23093         * test/automated/map-tests.el (test-map-let): Fix the test to work
23094         with the new syntax of `map-let'.
23096         * lisp/emacs-lisp/map.el (map-let): Better docstring.
23098         Better syntax for the map pcase pattern
23099         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
23100         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
23102         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
23104         Fix a byte-compiler error in map-put and map-delete
23105         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
23106         called with a symbol.
23108 2015-06-05  Glenn Morris  <rgm@gnu.org>
23110         * admin/gitmerge.el (gitmerge-commit-message):
23111         Revert to including "skipped" messages in ChangeLog once again.
23113 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
23115         Use string> instead of equiv lambda with string<
23116         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
23117         lambda with string<.
23119 2015-06-05  Glenn Morris  <rgm@gnu.org>
23121         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
23122         (map--delete-array): Fix typo.
23124         * test/automated/map-tests.el: Replace "assert" with "should".
23126         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
23127         (SUBDIRS_REL): Derive from SUBDIRS.
23129         Tweak some build messages.
23130         * lisp/Makefile.in ($(lisp)/loaddefs.el):
23131         * lisp/cus-dep.el (custom-make-dependencies):
23132         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
23133         * lisp/international/titdic-cnv.el (batch-titdic-convert):
23134         Don't say how to compile.
23136 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
23138         Omit U+0332 COMBINING LOW LINE in previous change
23139         It turns out that it does not work on Ubuntu 15.04.
23141         Fix transliteration of Bahá'í months
23142         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
23143         Improve quality of Latin transliteration of Bahá'í month names.
23145         Fix curved quotes in a few places
23146         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
23147         The strings in question are not doc strings, so this partially
23148         undoes the recent change that assumed they were doc strings.
23149         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23150         * lisp/info.el (Info-finder-find-node):
23151         Use curved quotes.
23152         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
23153         Also allow curved quotes in doc strings.
23155 2015-06-04  Glenn Morris  <rgm@gnu.org>
23157         * lisp/Makefile.in (AM_V_at): Add missing definition.
23159         * lisp/Makefile.in: Quieten output a bit.
23160         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
23161         Don't echo directories, since the commands we invoke print them.
23163         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
23164         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
23165         (SUBDIRS_SUBDIRS): New variables.
23166         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
23167         Remove.
23168         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
23169         (update-subdirs, compile-main, compile-clean):
23170         Replace "setwins" usage with new "SUBDIRS" variables.
23172         * lisp/vc/compare-w.el (compare-windows-get-window-function):
23173         Fix :version tag.
23175 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23177         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
23179         Undo removal of x_clear_area call on expose for GTK3 or cairo
23180         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
23181         Clear exposed area.  (Bug#20677)
23183 2015-06-04  Glenn Morris  <rgm@gnu.org>
23185         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
23187         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
23189         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
23190         Rename from quail-lao-update-translation, since lao.el defines that.
23192 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
23194         Handle new-style advice in find-funct
23195         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
23196         Handle new-style advice.  Return the symbol's function definition.
23197         (Bug#20718)
23198         (find-function-library): Update accordingly.
23200 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
23202         Merge branch 'map'
23204         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
23206         Add new function string-greaterp
23207         * lisp/subr.el (string-greaterp): New function.  Also aliased to
23208         `string>'.
23209         * test/automated/subr-tests.el (string-comparison-test): Add unit
23210         tests for `string>'and `string<'.
23211         * src/fns.c (string-lessp): Better docstring.
23213 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
23215         Fix timezone-related functions on MS-Windows
23216         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
23217         'xputenv', even if no reallocation of tzvalbuf was necessary.
23218         This fixes a bug in timezone-related functions on MS-Windows.
23219         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
23221 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
23223         Don't pass raw directory name to 'error'
23224         * lisp/files.el (basic-save-buffer-2): Avoid format error if
23225         a directory name contains a string like "%s".
23227 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
23229         Override 'grep --color=always'
23230         * lisp/progmodes/xref.el (xref-collect-matches):
23231         Override --color=always in grep-find-template.
23233 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
23235         Fix error introduced recently in file-notify-tests.el
23236         * test/automated/file-notify-tests.el
23237         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
23238         (file-notify--deftest-remote): Revert previous patch, not
23239         necessary anymore.
23241 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
23243         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
23244         Starting from a display string after a newline, point went to the
23245         previous line.  Also, fix an inadvertent use of a buffer position
23246         with FETCH_BYTE.  (Bug#20701)
23248 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
23250         Instrument file-notify-test.el in order to catch hydra error
23251         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
23252         Wrap body by `ignore-case', in order to trap non-local errors.
23254 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23256         Undo previous changes in non-toolkit scroll bar drawing
23257         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
23258         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
23260 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
23262         * .gitignore: Also ignore doc/*/*/*.html and .ps.
23264         Support quotes 'like this' in info files
23265         This is possible when 'makeinfo --disable-encoding' is used
23266         in Texinfo 5.
23267         * lisp/calc/calc-help.el (calc-describe-thing):
23268         * lisp/gnus/gnus-art.el (gnus-button-alist):
23269         * lisp/info.el (Info-find-index-name):
23270         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
23271         Also support quotes 'like this'.
23272         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
23273         * lisp/finder.el (finder-font-lock-keywords): Remove var that
23274         hasn't been used in years, instead of bothering to fix its quoting.
23276 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
23278         * .gitignore: Remove !test/etags/html-src/*.html.
23279         It's no longer needed, since *.html was removed.  Sort.
23281 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
23283         Restore <D> instead of '.' in grep-find-template
23284         * lisp/cedet/semantic/symref/grep.el
23285         (semantic-symref-grep-use-template): Update a comment.
23286         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
23287         instead of '.' in grep-find-template (bug#20719).
23288         (rgrep): Pass nil as the directory to rgrep-default-command.
23289         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
23290         default value for DIR.
23291         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
23292         workaround.
23294 2015-06-02  Glenn Morris  <rgm@gnu.org>
23296         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
23298         * configure.ac (emacs_config_features): Add Cairo.
23300         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
23302 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
23304         Ensure that autorevert works for remote files in file-notify-tests.el
23305         * test/automated/file-notify-tests.el (file-notify--test-desc):
23306         New defvar.
23307         (file-notify--test-remote-enabled)
23308         (file-notify-test00-availability, file-notify-test01-add-watch)
23309         (file-notify-test02-events): Use it.
23310         (file-notify--test-event-test): Check proper descriptor.
23311         (file-notify-test03-autorevert): Ensure that
23312         `visited-file-modtime' has changed.  (Bug#20392)
23314 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
23316         Add a pcase pattern for maps and `map-let' based on it
23317         * lisp/emacs-lisp/map.el (map-let): New macro.
23318         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
23319         * test/automated/map-tests.el: New test for `map-let'.
23321 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
23323         Reuse rgrep mechanics in xref-find-regexp
23324         * lisp/progmodes/grep.el (rgrep-default-command):
23325         Extract from `rgrep'.
23326         * lisp/progmodes/xref.el (xref-collect-references): Split from
23327         `xref-collect-matches'.  Only handle the case of symbol search.
23328         (xref-collect-matches): Instead of Semantic Symref, use
23329         `rgrep-default-command', to take advantage of its directory and
23330         file ignore settings.
23331         (xref--collect-match): Remove the last argument, leaving the
23332         regexp construction up to the caller.
23333         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
23334         Change to take the xref-collect- function to use as an argument.
23335         (elisp-xref-find): Update accordingly.
23336         * lisp/progmodes/etags.el (etags--xref-find-matches)
23337         (etags-xref-find): Same.
23339         Move xref-elisp-location to elisp-mode.el
23340         * lisp/progmodes/xref.el (xref-elisp-location)
23341         (xref-make-elisp-location, xref-location-marker): Remove here.
23342         (xref--xref): Don't limit the type of the location slot.
23343         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
23344         Define as a cl-struct here.
23345         (xref-location-marker): Move here.
23347 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
23349         Minor tweaks for .gitignore
23350         * .gitignore: Don't ignore versioned *.html and *.ps files.
23351         Don't ignore admin/notes/tags that might be ignored as TAGS
23352         on case-insensitive filesystems.  (Bug#20710)
23354 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
23356         Generate curved quotes in ert doc
23357         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
23358         (ert-results-mode-menu)
23359         (ert-results-pop-to-backtrace-for-test-at-point)
23360         (ert-results-pop-to-messages-for-test-at-point)
23361         (ert-results-pop-to-should-forms-for-test-at-point)
23362         (ert-describe-test):
23363         Quote ‘like this’, not `like this', when generating doc strings
23364         and the like.
23365         * test/automated/ert-x-tests.el (ert-test-describe-test):
23366         Allow quoting ‘like this’.
23368 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
23370         Add test for previous commit
23371         * test/automated/replace-tests.el: New file.
23372         (query-replace--split-string-tests): Add test for previous commit.
23374         Avoid confusion in query-replace history when replacing NUL chars
23375         * lisp/replace.el (query-replace--split-string): New function.
23376         (query-replace-read-from): Rely on the 'separator' property
23377         instead of searching for the NUL character (Bug#20690).
23379 2015-06-02  Glenn Morris  <rgm@gnu.org>
23381         Merge from origin/emacs-24
23382         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
23384         * admin/gitmerge.el (gitmerge-commit-message):
23385         Exclude "skipped" messages from ChangeLog.
23387 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
23389         Sync with Tramp repository
23390         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
23391         messages.
23392         (tramp-handle-make-auto-save-file-name): When calling
23393         `make-auto-save-file-name' internally, make sure it uses Unix-like
23394         behavior, not Windows-like behavior.
23395         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
23396         the local case, because "chown" might fail on w32.
23397         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
23398         for XEmacs.
23400 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
23402         MS-Windows followup for batch stdout/stderr output changes
23403         * lisp/international/mule-cmds.el (set-locale-environment):
23404         In batch mode, use console codepages for keyboard and terminal
23405         encoding.  (Bug#20545)
23407         Update .gitattributes for DOS EOL files
23408         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
23409         CRLF end-of-line format.
23411         NS equivalents of xterm.c and w32term.c changes
23412         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
23413         glyph string background also when the font in use claims
23414         preposterously large global height value.  Helps to remove
23415         artifacts left from previous displays when glyphless characters
23416         are displayed as hex code in a box.
23417         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
23418         value for FRAME_LINE_HEIGHT, even when a font claims very large
23419         value for its height.
23421 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
23423         Avoid grave accent quoting in stderr diagnostics
23424         A few Emacs diagnostics go directly to stderr, and so can't easily
23425         contain curved quotes (as non-UTF-8 locales might mishandle them).
23426         Instead of bothering to add support for this rarity, reword the
23427         diagnostics so that they don't use grave accent to quote.
23428         * src/alloc.c (mark_memory): Fix comment.
23429         * src/buffer.c (init_buffer):
23430         * src/dispnew.c (init_display):
23431         * src/emacs.c (main, sort_args):
23432         * src/lread.c (dir_warning):
23433         * src/term.c (init_tty):
23434         * src/unexmacosx.c (unexec):
23435         * src/xfns.c (select_visual):
23436         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
23437         Reword stderr diagnostics to avoid quoting `like this'.
23438         * src/unexmacosx.c: Include errno.h.
23439         * src/xfns.c (select_visual): Encode value for locale.
23441 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
23443         Treat batch stdout/stderr like standard display
23444         Calls like (print FOO) could generate improperly encoded or
23445         hard-to-read output if FOO contains characters outside the system
23446         locale.  Fix this by treating batch stdout and stderr like
23447         interactive standard display, when it comes to transliterating and
23448         encoding characters (Bug#20545).
23449         * doc/emacs/mule.texi (Communication Coding):
23450         * doc/lispref/display.texi (Active Display Table):
23451         * doc/lispref/nonascii.texi (Locales):
23452         * etc/NEWS:
23453         * src/coding.c (syms_of_coding):
23454         * src/dispnew.c (syms_of_display):
23455         Document this.
23456         * src/print.c: Include disptab.h.
23457         (printchar_to_stream): New function, with much of the guts of the
23458         old Fexternal_debugging_output, except this one also uses the
23459         standard display table.
23460         (printchar, strout, Fexternal_debugging_output): Use it.
23462 2015-05-31  Glenn Morris  <rgm@gnu.org>
23464         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
23466 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
23468         Remove DEFSYMs that aren't used at the C level.  Also:
23469         * src/decompress.c (Qzlib_dll):
23470         * src/font.c (Qunicode_sip):
23471         * src/frame.c (Qtip_frame):
23472         * src/ftfont.c (Qserif):
23473         * src/gnutls.c (Qgnutls_dll):
23474         * src/xml.c (Qlibxml2_dll):
23475         Move from here ...
23476         * src/w32fns.c (syms_of_w32fns): ... to here,
23477         as these are used only on MS-Windows.
23479 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
23481         Use another default value for tramp-histfile-override
23482         * lisp/net/tramp-sh.el (tramp-histfile-override):
23483         Use ".tramp_history" as default.
23484         Fixes bug#20446
23486 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
23488         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
23490 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
23492         * etc/NEWS: Add an entry about map.el.
23494         Improve the docstring of functions in map.el
23495         Since a map is not a data structure but a concept, adding information
23496         about the possible types of maps can be useful information.
23497         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
23498         each public function.
23500 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
23502         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
23503         specific tests depending on the type of the map.
23505         * lisp/emacs-lisp/map.el: Better docstrings.
23507 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
23509         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
23511 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
23513         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
23515         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
23517         Fix a false negative in `map-elt' with alists and values being nil
23518         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
23519         found but its associated value is nil, do not return the default
23520         value.
23521         * test/automated/map-tests.el: Add a regression test.
23523 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
23525         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
23527         Do not signal an error when trying to delete a key from an array
23528         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
23529         the key is present to avoid signaling an error.
23530         * test/automated/map-tests.el: Add a test for deleting non-existing
23531         keys from maps.
23533         * lisp/emacs-lisp/map.el: Better docstring.
23535         Minor improvement in map-elt
23536         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
23537         doing a lookup in arrays, but check the boundaries of the array
23538         instead.
23539         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
23540         and a negative integer as key.
23542 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
23544         * test/automated/map-tests.el: Refactoring of test methods.
23546         * test/automated/map-tests.el: Renamed from map-test.el.
23548 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
23550         * lisp/emacs-lisp/map.el (map-into): Better error message.
23552         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
23554         Throw an error when converting a map into an unknown map type
23555         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
23556         not valid.
23557         * test/automated/map-tests.el: Add a regression test.
23559         New library map.el similar to seq.el but for mapping data structures.
23560         * test/automated/map-tests.el: New file.
23561         * lisp/emacs-lisp/map.el: New file.
23563 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
23565         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
23566         there's no explicit tag name (bug#20629).
23568 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23570         Remove format2
23571         * src/editfns.c, src/lisp.h (format2): Remove.
23572         It is more trouble than it's worth, now that we have CALLN.
23573         This is just a minor refactoring.
23574         * src/buffer.c (Fkill_buffer):
23575         * src/dbusbind.c (XD_OBJECT_TO_STRING):
23576         * src/fileio.c (barf_or_query_if_file_exists):
23577         Adjust to format2 going away.
23579         Don't misencode C-generated messages
23580         Also, be more consistent about calls to 'Fmessage' vs 'message'.
23581         * src/alloc.c (Fgc_status):
23582         Prefer AUTO_STRING to build_string for Fmessage call.
23583         * src/data.c (Fmake_variable_buffer_local)
23584         (Fmake_local_variable, Fmake_variable_frame_local):
23585         * src/doc.c (store_function_docstring):
23586         Use Fmessage, not message, since the argument can contain
23587         non-ASCII characters, and this can cause the resulting message
23588         to be incorrectly encoded for the current environment.
23589         * src/fns.c (maybe_resize_hash_table):
23590         * src/xselect.c (x_clipboard_manager_save_all):
23591         Use message, not Fmessage, since Fmessage's power isn't needed here.
23592         * src/process.c (Fmake_network_process): Reword message to avoid %s.
23593         * src/xdisp.c (vmessage): Document restrictions on message contents.
23594         (message_nolog) [false]: Remove unused code.
23596         Use \r rather than ^M in string literals
23597         This is less likely to cause problems on platforms that
23598         use CRLF (or CR!) termination for lines.
23600         Update .gitattributes to match current sources
23601         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
23602         * .gitattributes: Accommodate tests that insist on DOS format.
23603         Remove test/automated/data/decompress/foo-gzipped.
23604         Add etc/e/eterm-color.
23606 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
23608         * doc/emacs/mule.texi (Modifying Fontsets):
23609         Document face-ignored-fonts.  (Bug#20628)
23611         Add etags test for the new -Q option
23612         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
23613         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
23614         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
23615         test-case changes below.
23616         * test/etags/ETAGS.good_6: New file.
23617         * test/etags/cp-src/x.cc: New file.
23618         * test/etags/Makefile (CPSRC): Add x.cc.
23619         (check): Add one more test, for -Q.
23621 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
23623         Use list for the tags completion table, not obarray
23624         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
23625         list instead of an obarray
23626         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
23627         (tags-completion-table): Combine those lists.
23628         (tags-completion-table): Update the docstring.
23630 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
23632         Restore EOL format testing in etags
23633         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
23634         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
23635         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
23636         test-case changes below.
23637         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
23638         * test/etags/cp-src/c.C (B): Add back stray CR character.
23639         * test/etags/c-src/dostorture.c: Add back.
23640         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
23642 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
23644         Declare Emacs on MS-Windows to be DPI-aware
23645         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
23646         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
23647         This avoids Windows entering compatibility mode for Emacs,
23648         which causes fonts to look less nice.
23650 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
23652         Improve Tramp traces
23653         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
23654         * lisp/net/tramp.el (tramp-debug-message): Use it.
23656 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23658         backup-buffer minor reworking of internals
23659         * lisp/files.el (backup-buffer): Rework to avoid a couple of
23660         unused locals inadvertently introduced in the previous change.
23662         backup-buffer now reports .emacs.d/%backup% ills
23663         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
23664         fails due to disk space exhaustion or whatever, do not pretend
23665         that it succeeded.  More generally, do a better job of checking
23666         for I/O failures, and limit the scope of the condition-case to
23667         just the operations where file errors should be caught and ignored
23668         (Bug#20595).  Also, don't bother trying to delete later backups if
23669         an earlier deletion fails, as this is a sign of trouble and it's
23670         better to stop when there's trouble.
23672         copy-file now truncates output after writing
23673         * src/fileio.c (Fcopy_file): Truncate output after writing rather
23674         than before.  This is more likely to work than truncation before
23675         writing, if the file system is out of space or the user is over
23676         disk quota (Bug#20595).  Also, check for read errors.
23678 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
23680         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
23681         Don't load descriptors from directories above the package directories.
23683 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
23685         Merge from gnulib
23686         This incorporates the following (Bug#20681):
23687         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
23688         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
23689         * lib/set-permissions.c: Copy from gnulib.
23691 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
23693         Improve Tramp traces
23694         * lisp/net/tramp.el (tramp-call-process-region): New defun.
23695         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
23697 2015-05-29  Glenn Morris  <rgm@gnu.org>
23699         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
23701 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
23703         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
23704         The signature was changed in the cairo branch, merged on 2015-05-23.
23705         This oversight broke compiling only the non-toolkit X version.
23707 2015-05-29  Samer Masterson  <samer@samertm.com>
23709         * doc/lispref/os.texi: Update initial-buffer-choice docs.
23711 2015-05-29  Glenn Morris  <rgm@gnu.org>
23713         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
23714         Mark as an expected failure.
23716 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
23718         Change package test to look for curved quotes
23719         * test/automated/package-test.el (package-test-describe-package)
23720         (package-test-signed): Search for curved single quotes as well as
23721         for grave accent and apostrophe.
23723 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
23725         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
23726         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
23728 2015-05-28  Samer Masterson  <samer@samertm.com>
23730         Show files when `initial-buffer-choice' is non-nil
23731         * lisp/startup.el (command-line-1): When Emacs is given a file as an
23732         argument and `initial-buffer-choice' is non-nil, display both the file
23733         and `initial-buffer-choice'.  For more than one file, show
23734         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
23735         commands out of the command line arg parser.
23736         (initial-buffer-choice): Clarify docstring.
23738 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
23740         Fix last commit
23741         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
23742         (gnulib module qcopy-acl): Add back, as it is harmless.  This
23743         minimizes differences wrt lib/gnulib.mk.
23745         Fix the MS-Windows build as followup to gnulib update
23746         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
23747         set-permissions.c, as they don't compile on MinGW.
23748         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
23750 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
23752         Revert my change to gnus-art.el
23753         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
23754         It wasn't that important, and it caused a Gnus build to fail.  See:
23755         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
23757         New minor mode Electric Quote
23758         This lets you easily insert quotes ‘like this’ by typing
23759         quotes `like this', and similarly you can easily insert
23760         quotes “like this” by typing quotes ``like this'' (Bug#20545).
23761         * doc/emacs/basic.texi (Inserting Text):
23762         * doc/emacs/modes.texi (Minor Modes):
23763         * etc/NEWS: Document it.
23764         * doc/emacs/text.texi (Quotation Marks): New section.
23765         * lisp/electric.el (electric-quote-comment)
23766         (electric-quote-string, electric-quote-paragraph):
23767         New custom vars.
23768         (electric--insertable-p)
23769         (electric-quote-post-self-insert-function): New functions.
23770         (electric-quote-mode, electric-quote-local-mode): New minor modes.
23771         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
23772         Add curved single quotes to electric-pair-text-pairs.
23773         Set electric-quote-string in this buffer.
23775         A few more doc string fixes (Bug#20385)
23777         Accept curved quotes in doc strings
23778         * lisp/info-look.el (info-lookup-guess-custom-symbol):
23779         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
23781         Generate curved quotes in pseudo-info nodes
23782         * lisp/info.el (Info-virtual-index-find-node)
23783         (Info-virtual-index, Info-apropos-find-node, info-apropos):
23784         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
23786         Fix minor quoting problems in doc strings
23787         Most of these fixes involve escaping grave accents that are
23788         actually intended to be grave accents, not left quotes.
23789         (Bug#20385)
23791         Support curved quotes in doc strings
23792         Emacs's traditional doc string style has been to quote symbols
23793         `like this'.  This worked well on now-obsolete terminals where
23794         ` and ' were symmetric quotes, but nowadays curved quotes
23795         ‘like this’ look better.  Support quoting the new way too.
23796         (Bug#20385)
23797         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
23798         ‘like-this’ as well as `like-this'.
23799         * etc/NEWS: Mention this.
23800         * lisp/cedet/mode-local.el (overload-docstring-extension)
23801         (mode-local-print-binding, mode-local-describe-bindings-2):
23802         * lisp/cus-theme.el (describe-theme-1):
23803         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23804         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
23805         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
23806         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
23807         (eieio-help-constructor):
23808         * lisp/emacs-lisp/package.el (describe-package-1):
23809         * lisp/faces.el (describe-face):
23810         * lisp/help-fns.el (help-fns--key-bindings)
23811         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
23812         (help-fns--interactive-only, describe-function-1):
23813         (describe-variable):
23814         * lisp/help.el (describe-mode):
23815         * lisp/international/mule-cmds.el (describe-input-method)
23816         (describe-language-environment):
23817         * lisp/international/mule-diag.el (describe-character-set)
23818         (print-coding-system-briefly, list-input-methods)
23819         (list-input-methods-1):
23820         Insert curved quotes rather than grave accent and apostrophe.
23821         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
23822         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23823         (checkdoc-proper-noun-region-engine):
23824         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
23825         (lisp-cl-font-lock-keywords-2):
23826         * lisp/finder.el (finder-font-lock-keywords):
23827         * lisp/gnus/gnus-art.el (gnus-button-alist):
23828         * lisp/help-fns.el (help-do-arg-highlight)
23829         (describe-function-1, describe-variable):
23830         * lisp/help-mode.el (help-xref-symbol-regexp)
23831         (help-xref-info-regexp, help-xref-url-regexp):
23832         * lisp/help.el (describe-mode):
23833         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
23834         * lisp/wid-edit.el (widget-documentation-link-regexp):
23835         Parse symbols quoted ‘like-this’ as well as `like-this'.
23836         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
23837         Add "‘" and "’" to electric-pair-text-pairs.
23838         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
23839         (elisp-completion-at-point, elisp--preceding-sexp):
23840         Also treat "‘" and "’" as quoting chars.
23842         substitute-command-keys now curves quotes
23843         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
23844         * doc/lispref/help.texi (Keys in Documentation):
23845         * etc/NEWS: Document this.
23846         * src/doc.c (Fsubstitute_command_keys): Implement it.
23848 2015-05-28  Glenn Morris  <rgm@gnu.org>
23850         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
23851         (rmail-summary-by-topic, rmail-summary-by-senders):
23852         No longer strip leading/trailing whitespace.
23854         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
23855         (f90-no-block-limit): Add "enum".  (Bug#20680)
23856         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
23857         New tests.
23859 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
23861         * lisp/isearch.el (isearch--current-buffer): Give a default value.
23862         Un-revert changes mistakenly dropped by f9fabb2b.
23864 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
23866         Merge from gnulib
23867         This incorporates:
23868         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
23869         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
23870         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
23871         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
23872         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
23873         2015-05-26 stdio: fix probe on mingw under gcc 5.1
23874         * admin/merge-gnulib (GNULIB_MODULES):
23875         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
23876         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
23877         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
23878         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
23879         Get latest versions from gnulib.
23880         * lib/get-permissions.c, lib/set-permissions.c: New files.
23881         * lib/gnulib.mk, m4/gnulib-comp.m4:
23882         Regenerate.
23883         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
23885 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
23887         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
23888         process here.
23889         (vc-do-command): Rather than here (bug#20608).
23891 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
23893         Avoid gratuitous delete-dups in face-at-point
23894         * lisp/faces.el (face-at-point): Do not compute the properly
23895         ordered, duplicate-free list if only a single value is
23896         requested anyway.  (Bug#20519)
23898         Show the exact C-x 8 RET invocation in describe-char
23899         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
23900         invocation instead of a template.  (Bug#20522)
23902 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
23904         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
23905         (package-menu--post-refresh): Call `tabulated-list-print' with the
23906         UPDATE argument.  This only affects the refresh action, the revert
23907         action still erases tags.
23908         (package-menu-get-status): Change `assq' to `assoc'.
23909         (package-menu--mark-upgrades-1): New function.
23910         (package-menu--mark-upgrades-pending): New variable.
23911         (package-menu-mark-upgrades): Use them to delay marking until
23912         after refresh is done.
23913         (package-menu--post-refresh): Call mark-upgrades-1 if
23914         mark-upgrades-pending is non-nil.
23916 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
23918         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
23919         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
23920         (commit 3953c4be2816537be95520605d45b866dc731f4b).
23922 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
23924         * lisp/isearch.el (isearch--current-buffer): New var.
23925         (isearch-update): Set cursor-sensor-inhibit here.
23926         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
23927         (bug#20532).
23929         Change inhibit-point-motion-hooks to t
23930         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
23931         to t and document it as obsolete.
23933 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
23935         Support ZIP files that use Zip64 extensions
23936         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
23937         format of central directory offsets used by Zip64 extensions.
23938         (Bug#20665)
23940 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
23942         New test tramp-test30-make-auto-save-file-name
23943         * test/automated/tramp-tests.el
23944         (tramp-test30-make-auto-save-file-name): New test.
23945         (tramp-test31-special-characters)
23946         (tramp-test31-special-characters-with-stat)
23947         (tramp-test31-special-characters-with-perl)
23948         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
23949         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
23950         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
23951         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
23953         Improve tramp-handle-make-auto-save-file-name
23954         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
23955         (tramp-handle-make-auto-save-file-name): Let native
23956         `make-auto-save-file-name' use `auto-save-file-name-transforms',
23957         if `tramp-auto-save-directory' is not set.
23959 2015-05-27  Glenn Morris  <rgm@gnu.org>
23961         No longer set dired-directory in eshell.  (Bug#16477)
23962         * lisp/eshell/esh-mode.el (eshell-mode):
23963         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
23965         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
23967         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
23968         * lisp/progmodes/cc-mode.el (c-mode-help-address):
23969         Change to submit@debbugs.
23970         (c-mode-bug-package): New constant.
23971         (mail-position-on-field): Declare.
23972         (c-submit-bug-report): Insert X-Debbugs-Package header.
23973         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
23974         Mention debbugs.gnu.org.
23976 2015-05-26  Glenn Morris  <rgm@gnu.org>
23978         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
23979         (rmail-summary-by-recipients, rmail-summary-by-topic)
23980         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
23981         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
23983 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
23985         Handle curved quotes in info files
23986         * lisp/calc/calc-help.el (calc-describe-thing):
23987         * lisp/info.el (Info-find-index-name)
23988         (Info-try-follow-nearest-node, Info-fontify-node):
23989         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
23990         In info files, process quotes ‘like this’ the same way we process
23991         quotes `like this'.  This catches a few places we missed earlier.
23993 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
23995         xref-prompt-for-identifier: Use a list value
23996         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
23997         value, to be interpreted as a list of commands.
23998         (xref--prompt-p): New function.
23999         (xref--read-identifier): Use it.
24001 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
24003         Teach MS-Windows font back-end return per-glyph ascent/descent
24004         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
24005         values.
24006         * src/w32font.c (w32font_text_extents): Compute, cache, and
24007         accumulate per-glyph ascent and descent values, instead of copying
24008         global values from the font.  If the values are not available from
24009         the font data, i.e., non-TTF fonts, fall back on font-global values.
24010         (compute_metrics): Compute and return per-glyph ascent and descent
24011         values, if returned by GetGlyphOutlineW, falling back on
24012         font-global values.  (Bug#20628)
24013         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
24014         height of rectangle to be drawn, to be compatible with
24015         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
24016         box, when per-glyph ascent/descent values are used.
24018 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
24020         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
24021         Don't sort if sorter is nil.
24023 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
24025         Fix Bug#20621
24026         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
24027         are major modes which set `auto-save-mode' on their own rules;
24028         Tramp shall not overwrite such settings.
24030 2015-05-26  Glenn Morris  <rgm@gnu.org>
24032         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
24033         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
24034         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
24035         Doc updates.
24036         (vc-dir-mode): Remove unnecessary autoload.
24038 2015-05-25  Philipp Stephani  <phst@google.com>
24040         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
24041         (xterm--extra-capabilities-type): Add `getSelection'.
24042         (xterm--query): Add `no-async' argument.
24043         (xterm--init-activate-get-selection): New function.
24044         (terminal-init-xterm): Use it.
24045         (xterm--init-modify-other-keys): Rename from
24046         terminal-init-xterm-modify-other-keys.
24047         (xterm--init-bracketed-paste-mode): Rename from
24048         terminal-init-xterm-bracketed-paste-mode.
24049         (xterm--init-activate-set-selection): Rename from
24050         terminal-init-xterm-activate-set-selection.
24051         (xterm--selection-char): New function.
24052         (gui-backend-set-selection): Use it.  Use the &context to only apply
24053         this method in terminals where we enabled the feature.
24054         (gui-backend-get-selection): New method.
24056 2015-05-25  Daniel Colascione  <dancol@dancol.org>
24058         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
24059         keyword constants to C++.
24061 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
24063         Make TAGS files more portable to MS-Windows
24064         * etc/NEWS: Document this.
24065         * lib-src/etags.c (readline_internal) [DOS_NT]:
24066         Don't treat CRs differently from GNUish hosts.
24067         * lisp/progmodes/etags.el (etags-goto-tag-location):
24068         Adjust STARTPOS to account for the skipped CRs in dos-style files.
24070 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
24072         Improve fix of bug#20634 in tramp-sh.el
24074 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
24076         Fix a typo in last commit
24077         * lib-src/etags.c (C_entries): Fix a typo.
24078         * test/etags/ETAGS.good_1:
24079         * test/etags/ETAGS.good_2:
24080         * test/etags/ETAGS.good_3:
24081         * test/etags/ETAGS.good_4:
24082         * test/etags/ETAGS.good_5:
24083         * test/etags/CTAGS.good: Update due to the change in etags.c.
24085         Fix tagging of class members in C-like OO languages
24086         * lib-src/etags.c (longopts): Add new option --class-qualify and
24087         its shorthand -Q.
24088         (print_help): Add help text for --class-qualify.
24089         (main): Add handling of -Q.
24090         (consider_token, C_entries) <omethodparm>: Append argument types
24091         to Objective C methods only if --class-qualify was specified.
24092         Qualify C++, Objective C, and Java class members with their class
24093         names only if --class-qualify was specified.
24094         (C_entries): If --class-qualify was not specified, remove the
24095         namespace and class qualifiers from tag names of C++ methods.
24096         This allows to use etags.el as xref back-end without the
24097         tag-symbol-match-p method, which greatly increases the number of
24098         potentially false positives.  (Bug#20629)
24099         * doc/man/etags.1: Update to document the new --class-qualify
24100         option.
24101         * test/etags/ETAGS.good_1:
24102         * test/etags/ETAGS.good_2:
24103         * test/etags/ETAGS.good_3:
24104         * test/etags/ETAGS.good_4:
24105         * test/etags/ETAGS.good_5:
24106         * test/etags/CTAGS.good: Update due to changes in etags.c.
24108 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
24110         (cl-generic-define-method): Side effects are evil (bug#20644)
24111         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
24112         cons-cells that might be used as keys in an `equal' hash-table.
24114 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
24116         Make erc timestamps visible again
24117         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
24118         Make timestamps visible again (if requested).
24120 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
24122         Fix last change in etags.c that broke tagging compresed files
24123         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
24124         quoting of decompression shell command for MS-Windows/MS-DOS.
24126 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
24128         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
24129         (Bug#20639)
24131 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
24133         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
24134         Fix typo in "Inhibit `epa-file-handler' in Tramp"
24135         (commit 89035e247591c8d688fce922b7079881aa110f33).
24137 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
24139         Fix IPv6 addresses in Tramp
24140         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
24141         Add square brackets around host name.
24143 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
24145         Inhibit `epa-file-handler' in Tramp (Bug#20634)
24146         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
24147         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
24148         `epa-file-handler'.
24150 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
24152         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
24153         (pcase-let): Document the behavior in case the pattern doesn't match.
24155 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
24157         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
24158         (tabulated-list-print): New optional argument, UPDATE.  If
24159         non-nil, the list is printed by only adding and deleting the
24160         changed entries, instead of erasing the whole buffer.  This method
24161         is much faster when few or no entries have changed.
24162         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
24163         * etc/NEWS: Document it.
24165         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
24166         (tabulated-list--get-sorter): New function.
24167         (tabulated-list-print): Restore window-line when remember-pos is
24168         passed and optimize away the `nreverse'.
24170 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
24172         Simpilify etags TEX mode scanning
24173         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
24174         Remove static vars.
24175         (TeX_commands): Deduce escapes here instead.
24176         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
24177         This removes the need for a reset_input call.
24179         Improve etags I/O error reporting
24180         * lib-src/etags.c:
24181         Don't include sys/types.h and sys/stat.h; no longer needed.
24182         (infilename): New static var.
24183         (process_file_name): Don't call 'stat'.  Instead, just open the
24184         file for reading and report any errors.  Don't bother making
24185         a copy of the file argument; it's not needed.  Be more careful to
24186         use the failing errno when reporting an error.
24187         Quote the real name better (though no perfectly)
24188         when passing it to the shell.
24189         (reset_input): New function, which reports I/O errors.
24190         All uses of 'rewind' changed to use this function.
24191         (perhaps_more_input): New function, which also checks for
24192         I/O errors.  All uses of 'feof' changed to use this function.
24193         (analyze_regex): Report an error if fclose fails.
24194         (readline_internal): Report an error if getc fails.
24195         (etags_mktmp): Return an error if close fails.
24197         etags.c: avoid side effects in 'if'
24198         * lib-src/etags.c (process_file_name, Perl_functions)
24199         (TEX_decode_env): Hoist side effects into previous statement.
24201         .gitignore tweaks
24202         * .gitignore: Ignore all *.stamp files.  Sort.
24203         Ignore [0-9]*.txt (commonly used name for git patches)
24204         and /vc-dwim-log-* (vc-dwim temporary).
24206 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
24208         Fix last change in etags.c, which failed the test suite
24209         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
24210         before the last change.
24212 2015-05-23  Glenn Morris  <rgm@gnu.org>
24214         Remove charset map files from repository, generate in first bootstrap
24215         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
24216         (all): Create the stamp file.
24217         (extraclean): Delete the stamp file.
24218         * src/Makefile.in (lispintdir, charsets): New variables.
24219         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
24220         New rules.
24221         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
24222         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
24223         * etc/charsets/*.map: Remove from repository.
24225 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
24227         Cleanup etags.c to use locale-independent code
24228         Although this doesn't alter behavior (as etags doesn't use
24229         setlocale), the new version is more clearly locale-independent and
24230         the executable is a bit smaller on my platform.
24231         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
24232         Include <c-ctype.h> instead of <ctype.h>.
24233         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
24234         (begtk, midtk):
24235         Remove; no longer needed.
24236         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
24237         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
24238         c_islower, c_tolower, respectively.
24239         (notinname, begtoken, intoken, endtoken): Rewrite as functions
24240         instead of macros, and initialize the tables at compile-time
24241         rather than at run-time.
24243         Put default action first in src/Makefile
24244         * src/Makefile.in (all): Put this rule before lisp.mk.
24245         That way, plain 'make' works in the src directory again.
24247 2015-05-23  Glenn Morris  <rgm@gnu.org>
24249         * Makefile.in: Fix extraclean rule.
24250         (extraclean_dirs): New.
24251         (extraclean): Use it.
24253 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
24255         Avoid compiler warning in image.c on MS-Windows
24256         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
24257         warning in image.c.
24259 2015-05-23  Glenn Morris  <rgm@gnu.org>
24261         Fix --without-toolkit-scroll-bars builds.
24262         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
24263         Add new argument to x_clear_area1.
24264         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
24265         Update x_clear_area arguments.
24267         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
24268         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
24269         Change to included version.
24270         (LOCAL, local, totalclean): Remove.
24271         (extraclean): Delete all generated files.
24273 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
24275         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
24276         CVS/Entries exists.
24278         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
24280         * lisp/progmodes/etags.el (tags-completion-at-point-function):
24281         Don't trust the find-tag function.
24283 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
24285         Pacify --enable-gcc-warnings
24286         * src/frame.h (x_query_color): Remove redundant extern decl.
24287         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
24288         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
24289         (ftcrfont_text_extents, ftcrfont_draw):
24290         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
24291         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
24292         (x_ins_del_lines, frame_highlight, frame_unhighlight)
24293         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
24294         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
24295         (x_update_window_begin, x_connection_closed)
24296         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
24297         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
24298         (*x_gc_get_ext_data, x_extension_initialize)
24299         (x_cr_accumulate_data):
24300         Remove redundant static decl.  Many of these GCC doesn't complain
24301         about, but we might as well clean out the duplication while we're
24302         in the neighborhood.
24303         * src/xterm.c (x_fill_trapezoid_for_relief):
24304         Remove decl of nonexistent function.
24306 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
24308         Replace gui-method macros with cl-generic with &context
24309         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
24310         (gui-method-declare, gui-call): Remove.
24311         (frame-creation-function): Use cl-defgeneric.
24312         (make-frame): Adjust callers.
24313         * lisp/menu-bar.el (menu-bar-edit-menu):
24314         Use gui-backend-selection-exists-p.
24315         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
24316         (gui-backend-get-selection): New cl-generic to replace
24317         gui-get-selection method.
24318         (gui-backend-set-selection): New cl-generic to replace
24319         gui-set-selection method.
24320         (gui-selection-owner-p): New cl-generic to replace
24321         gui-selection-owner-p method.
24322         (gui-backend-selection-exists-p): New cl-generic to replace
24323         gui-selection-exists-p method.  Adjust all callers.
24324         * lisp/server.el (server-create-window-system-frame): Don't ignore
24325         window-system spec even when unsupported.
24326         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
24327         * lisp/startup.el (handle-args-function, window-system-initialization):
24328         Use cl-defgeneric.
24329         (command-line): Adjust calls accordingly.
24330         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
24331         a window-system-initialization method.
24332         (handle-args-function, frame-creation-function): Use cl-defmethod.
24333         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
24334         (gui-get-selection): Use cl-defmethod on the new functions instead.
24335         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
24336         a gui-backend-get-selection method.
24337         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
24338         Use cl-defmethod on the new functions instead.
24339         (msdos-window-system-initialization): Turn into
24340         a window-system-initialization method.
24341         (frame-creation-function, handle-args-function): Use cl-defmethod.
24342         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
24343         a window-system-initialization method.
24344         (handle-args-function, frame-creation-function): Use cl-defmethod.
24345         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
24346         (gui-get-selection): Use cl-defmethod on the new functions instead.
24347         * lisp/term/x-win.el (x-window-system-initialization): Turn into
24348         a window-system-initialization method.
24349         (handle-args-function, frame-creation-function): Use cl-defmethod.
24350         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
24351         (gui-get-selection): Use cl-defmethod on the new functions instead.
24352         * lisp/term/xterm.el (xterm--set-selection): Turn into
24353         a gui-backend-set-selection method.
24354         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
24355         (Fns_selection_owner_p): Remove unused arg `terminal'.
24356         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
24358 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
24360         Revert "Fix etags Bug#20629 that broke C++ support"
24361         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
24363 2015-05-23  Jan D  <jan.h.d@swipnet.se>
24365         Fix etags Bug#20629 that broke C++ support
24366         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
24367         Revert commit from Sun May 10 (Bug#20629).
24369         Merge branch 'cairo'.
24370         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
24371         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
24373         Merge branch 'master' into cairo
24375         Fixes to compile cairo branch without cairo
24376         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
24377         first argument.
24378         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
24379         USE_CAIRO.
24381 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
24383         * lisp/emacs-lisp/package.el: Always update selected-packages.
24384         (package--update-selected-packages): New function.
24385         (package-menu-execute): Use it before starting the transaction,
24386         this way the list of selected packages is updated even when the
24387         transaction fails.
24388         (package-menu--perform-transaction): Don't edit selected-packages.
24390 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
24392         Fix etags reading of compressed files
24393         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
24394         Include fcntl.h, for O_CLOEXEC.
24395         (process_file_name): Don't use 'popen', whose streams cannot be
24396         rewound.  Instead, uncompress the file to a temporary file,
24397         created by 'etags_mktmp', and read from that as usual.
24398         (etags_mktmp): New function.
24399         * test/etags/ETAGS.good_1:
24400         * test/etags/ETAGS.good_2:
24401         * test/etags/ETAGS.good_3:
24402         * test/etags/ETAGS.good_4:
24403         * test/etags/ETAGS.good_5: Update to be consistent with latest
24404         changes in etags.c regarding reading compressed files.
24406         Improve documentation of 'set-fontset-font'
24407         * doc/lispref/display.texi (Fontsets): Document the value of nil
24408         for the 3rd argument of 'set-fontset-font'.
24410         Fix documentation of forward-line
24411         * src/cmds.c (Fforward_line): Clarify the return value if the line
24412         at end of accessible portion of the buffer has no newline.
24413         * doc/lispref/positions.texi (Text Lines): Document what happens
24414         if the line at end of accessible portion of buffer has no newline.
24415         (Bug#20587)
24417 2015-05-22  Glenn Morris  <rgm@gnu.org>
24419         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
24421         * admin/charsets/mapconv (LC_ALL): Set to C.
24423         * Makefile.in: Add admin/charsets into top-level clean rules.
24424         (clean): Add admin/charsets.
24425         (maybeclean_dirs): New variable.
24426         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
24428         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
24430 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
24432         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
24434 2015-05-22  Glenn Morris  <rgm@gnu.org>
24436         Generate admin/charsets Makefile via configure, and make more portable
24437         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
24438         (admin/charsets/Makefile): Generate it.
24439         * admin/charsets/Makefile.in: Rename from Makefile.
24440         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
24441         New variables, set by configure.
24442         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
24443         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
24444         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
24445         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
24446         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
24447         (all): Declare PHONY.
24448         (local): New PHONY target.
24449         (map_template): New template.  Use to define short PHONY aliases.
24450         (*.map): Add directory prefixes to targets and prerequisites.
24451         Respect make verbosity.
24452         (JISC6226.map): Replace non-portable sed append without newline.
24453         (install): Remove rule.
24454         (clean): Only delete temporary sedscript.
24455         (bootstrap-clean, distclean, maintainer-clean, extraclean)
24456         (totalclean): New PHONY rules.
24457         * admin/charsets/mapconv (BASE): Replace basename with expr.
24458         (FILE): Add "mapfiles" subdirectory.
24459         (AWK): New variable.  Use throughout in place of "awk".
24460         (main): Use "gunzip -c" in place of "zcat".
24461         Don't leave whitespace before "p", for older sed.
24462         * admin/charsets/mapfiles/PTCP154: Add final newline,
24463         to make older sed versions happy.
24465 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
24467         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
24468         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
24469         (auto-revert-notify-watch-descriptor): Use defvar-local.
24470         (find-file-hook, auto-revert-tail-mode)
24471         (auto-revert-notify-add-watch): Use setq-local.
24472         (auto-revert-notify-add-watch): Don't call make-local-variable on
24473         kill-buffer-hook (bug#20601).
24475 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24477         Change defgeneric so it doesn't completely redefine the function
24478         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
24479         previously defined methods.
24480         (cl-generic-define-method): Let-bind purify-flag instead of
24481         using `fset'.
24482         (cl--generic-prefill-dispatchers): Only define during compilation.
24483         (cl-method-qualifiers): Remove redundant alias.
24484         (help-fns-short-filename): Silence byte-compiler.
24485         * test/automated/cl-generic-tests.el:
24486         Adjust to new defgeneric semantics.
24488 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
24490         * lisp/emacs-lisp/package.el (package-menu-execute):
24491         Remove reference to remove-dups.
24493 2015-05-21  kwhite  <kwhite@gnu.org>
24495         * lisp/erc/erc.el: Hide network/channel messages.
24496         (erc-network-hide-list, erc-channel-hide-list): New lists to define
24497         message types per network/channel.
24498         (erc-add-targets): New function to parse list of targets.
24499         (erc-hide-current-message-p): Modify to check for new targets.
24501 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
24503         Don't quote nil and t in doc strings
24504         This is as per "Tips for Documentation Strings" in the elisp manual.
24505         For consistency, do the same in diagnostics and comments.
24507 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
24509         Fix a minor problem with mouse-face on mode line
24510         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
24511         mouse face also if the mouse pointer hovers above mode-line glyphs
24512         that don't come from any Lisp string.  (Bug#20620)
24514 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
24516         * lisp/emacs-lisp/package.el: Fix selected-package logic.
24517         (package-menu-execute): Mark as selected all non-upgrade packages
24518         being installed.
24519         (package-menu--perform-transaction): Don't mark anything.
24521         * lisp/emacs-lisp/package.el: Mode-line progress report.
24522         (package-menu--transaction-status): New variable.
24523         (package-menu-mode, package-menu--perform-transaction): Use it.
24525         * lisp/emacs-lisp/package.el: Better transaction messages.
24526         (package-menu--partition-transaction): New function.
24527         (package-menu--prompt-transaction-p, package-menu-execute):
24528         Use it.
24529         (package-menu--perform-transaction): Don't do any messaging.
24531         * lisp/emacs-lisp/package.el: Revert async package transactions.
24532         (package-menu-async): Update doc.
24533         (package-install-from-archive, package-download-transaction)
24534         (package-install, package-menu--perform-transaction)
24535         (package-menu-execute): Remove asynchronous functionality.
24537 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
24539         Revert doc string changes to f90.el
24540         Problem reported by Glenn Morris in:
24541         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
24542         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
24543         Revert recent changes to doc strings, as it's intended that they
24544         use grave accent, not quote.
24546 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
24548         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
24549         Improve parameter name.
24551         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
24553 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24555         Don't require help-fns when not needed
24556         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
24557         * lisp/emacs-lisp/elint.el:
24558         Don't require help-fns at the top level
24559         * lisp/emacs-lisp/advice.el (ad-arglist):
24560         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
24561         Don't require help-fns.  (Bug#17001)
24563 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
24565         Fix slash collapsing in etags on MS-Windows
24566         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
24567         MS-Windows code from the Posix code, and support collapsing both
24568         forward- and back-slashes on MS-Windows.  Fixes a regression found
24569         by the test suite.
24571         Improve documentation of glyphless-char-display
24572         * doc/lispref/display.texi (Glyphless Chars): Improve
24573         documentation of glyphless character display.
24575         Fix "acronym" display of glyphless characters on w32
24576         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
24577         ignore "acronym" substitutes of 1 character for glyphless characters.
24579 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
24581         Add an automated test for let-when-compile
24582         * test/automated/subr-tests.el (let-when-compile): New test.
24584         Add let-when-compile macro instead of using pcase-let
24585         * lisp/subr.el (let-when-compile): New let-like macro that makes its
24586         bindings known to macros like `eval-when-compile' in the body.
24587         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
24588         a `let-when-compile'.  Also comment out the unused lexical var
24589         `el-kws-re'.
24590         The change greatly improves readability, while providing almost the
24591         same (even shorter) byte code: instead of pre-evaluating 10 variables,
24592         tossing them into a list, and destructuring that list a full screen
24593         page later, the variables are simply bound as they are evaluated,
24594         wrapped individually in `eval-when-compile'.
24596 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
24598         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
24599         (package-delete-button-action): New function.
24600         (describe-package-1): Add Delete button.
24602         * lisp/emacs-lisp/package.el: Better dependency description.
24603         (package--used-elsewhere-p): New optional arg, ALL, and return
24604         package-desc objects instead of names.
24605         (package-delete): Update accordingly.
24606         (describe-package-1): Describe which packages require the package.
24608 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
24610         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
24611         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
24612         Fix doc-string.
24614         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
24615         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
24616         (switch-to-buffer): If the selected window is strongly dedicated
24617         to its buffer, signal error before prompting for buffer name.
24618         Handle `switch-to-buffer-in-dedicated-window'.
24619         * doc/lispref/windows.texi (Switching Buffers):
24620         Document `switch-to-buffer-in-dedicated-window'.
24622 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24624         Prefer "this" to “this” in doc strings
24625         This mostly just straightens quotes introduced in my previous patch.
24626         Suggested by Dmitry Gutov in:
24627         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
24628         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
24629         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
24630         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
24631         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
24632         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
24633         Prefer straight double quotes to curved double quotes in doc strings.
24635         Fix minor quoting problems in doc strings
24636         These were glitches regardless of how or whether we tackle the
24637         problem of grave accent in doc strings.
24638         * lisp/calc/calc-aent.el (math-restore-placeholders):
24639         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
24640         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
24641         * lisp/leim/quail/hebrew.el ("hebrew-new")
24642         ("hebrew-biblical-sil"):
24643         * lisp/leim/quail/thai.el ("thai-kesmanee"):
24644         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
24645         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
24646         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
24647         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
24648         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
24649         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
24650         (semantic-tag-components):
24651         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
24652         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
24653         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
24654         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
24655         * lisp/emacs-lisp/generator.el (iter-next):
24656         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
24657         (gnus-article-mode-syntax-table):
24658         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
24659         * lisp/net/soap-client.el (soap-wsdl-get):
24660         * lisp/net/telnet.el (telnet-mode):
24661         * lisp/org/org-compat.el (org-number-sequence):
24662         * lisp/org/org.el (org-remove-highlights-with-change)
24663         (org-structure-template-alist):
24664         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
24665         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
24666         (handwrite-12pt, handwrite-13pt):
24667         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
24668         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
24669         * lisp/progmodes/verilog-mode.el (verilog-tool)
24670         (verilog-string-replace-matches, verilog-preprocess)
24671         (verilog-auto-insert-lisp, verilog-auto-insert-last):
24672         * lisp/textmodes/makeinfo.el (makeinfo-options):
24673         * src/font.c (Ffont_spec):
24674         Fix minor quoting problems in doc strings, e.g., missing quote,
24675         ``x'' where `x' was meant, etc.
24676         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
24677         Fix minor quoting problem in other string.
24678         * lisp/leim/quail/ethiopic.el ("ethiopic"):
24679         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
24680         Omit unnecessary quotes.
24681         * lisp/faces.el (set-face-attribute, set-face-underline)
24682         (set-face-inverse-video, x-create-frame-with-faces):
24683         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
24684         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
24685         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
24686         * lisp/net/tramp.el (tramp-methods):
24687         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
24688         * lisp/textmodes/artist.el (artist-ellipse-right-char)
24689         (artist-ellipse-left-char, artist-vaporize-fuzziness)
24690         (artist-spray-chars, artist-mode, artist-replace-string)
24691         (artist-put-pixel, artist-text-see-thru):
24692         * lisp/vc/ediff-util.el (ediff-submit-report):
24693         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
24694         Use double-quotes rather than TeX markup in doc strings.
24695         * lisp/skeleton.el (skeleton-pair-insert-maybe):
24696         Reword to avoid the need for grave accent and apostrophe.
24697         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
24698         Don't use grave and acute accents to quote.
24700 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
24702         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
24703         Silence compiler.
24705 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24707         Try to port new etags tests to MS-Windows
24708         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
24709         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
24710         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
24711         Adjust to test-case changes below.
24712         * test/etags/Makefile (CSRC): Remove dostorture.c.
24713         Whatever it was trying to test, wasn't working portably.
24714         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
24715         just a line-ending problem.
24716         * test/etags/c-src/dostorture.c: Remove.
24717         * test/etags/cp-src/c.C: Remove stray CR.
24718         * test/etags/html-src/algrthms.html: Remove trailing CRs.
24719         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
24720         but if someone edits it later it should stay UTF-8-compatible.
24722 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
24724         Fix display of overlapping window-specific overlays
24725         * src/keyboard.c (adjust_point_for_property): When adjusting point
24726         due to display strings, ignore overlays that are specific to
24727         windows other than the currently selected one.
24728         * src/xdisp.c (handle_single_display_spec): If the display
24729         property comes from an overlay, arrange for buffer iteration to
24730         resume only after the end of that overlay.  (Bug#20607)
24732 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
24734         New command icomplete-force-complete-and-exit
24735         * lisp/icomplete.el (icomplete-force-complete-and-exit):
24736         New command
24737         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
24738         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
24739         (icomplete-minibuffer-map): Bind C-j to it.
24740         (icomplete-forward-completions, icomplete-backward-completions):
24741         Mention the new command in the docstring.
24742         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
24743         Revert the previous fix for bug#17545.
24745 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
24747         Fix last commit
24749         In Elisp manual explain how to override window manager positioning
24750         (Bug#20552)
24751         * doc/lispref/frames.texi (Position Parameters): Give example of
24752         how to override a window manager positioning decision.
24754         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
24755         * src/frame.c (Fdelete_frame): In doc-string mention that frame
24756         can't be deleted if it has a surrogate minibuffer.
24757         * doc/lispref/frames.texi (Minibuffers and Frames)
24758         (Deleting Frames): Explain "surrogate minibuffer frames".
24760         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
24762 2015-05-18  Glenn Morris  <rgm@gnu.org>
24764         Add option to ignore commit lines matching a pattern in ChangeLog
24765         * build-aux/gitlog-to-changelog: Add --ignore-line option.
24766         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
24768 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
24770         Don't skip new etags tests on non-UTF-8 hosts
24771         Problem reported by Eli Zaretskii for MS-Windows.
24772         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
24773         (LC_ALL): Set to C if the current locale isn't UTF-8.
24774         (.PHONY): Remove ediff_1 thru ediff_5.
24775         (check): Always run.
24777 2015-05-18  Glenn Morris  <rgm@gnu.org>
24779         * lisp/calculator.el (calculator-funcall):
24780         * lisp/textmodes/artist.el (artist-spray-random-points):
24781         Use standard degree/radian conversion utilities.
24783         Further lisp-complete-symbol related cleanup.
24784         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
24785         Unadvertise non-functional argument.  Replace obsolete alias.
24787 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
24789         Add a test case for Maven warning ouput
24790         * test/automated/compile-tests.el
24791         (compile-tests--test-regexps-data): Add a case for Maven warning
24792         ouput.
24793         (compile--test-error-line): Check the compilation message type, if
24794         it's specified in the test data.
24796 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
24798         Update Maven compilation-mode entry to distinguish warnings
24799         * lisp/progmodes/compile.el
24800         (compilation-error-regexp-alist-alist): Update Maven entry to
24801         distinguish warnings (bug#20556).
24803 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
24805         * test/automated/sgml-mode-tests.el: New file.
24807 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
24809         Improve handling of the first Git revision
24810         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
24811         there's no next entry, delete until the end of the buffer.
24812         (log-view-end-of-defun-1): Stop at eob.
24813         * lisp/vc/vc-annotate.el
24814         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
24815         when previous-revision is nil.
24816         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
24817         with `--' to avoid ambiguity.
24818         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
24819         returned revision string.
24820         (vc-git-annotate-time): Expect `^' before the first revision.
24821         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
24822         REV1 is nil, and REV2 is not.
24823         * lisp/vc/vc.el: Update the description of the `diff' function.
24825 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
24827         Allow checkdoc to be called in batch
24828         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
24829         is non-nil, echo the error with `warn'.
24830         How it can be used in -batch:
24831         (with-current-buffer (find-file "checkdoc.el")
24832           (checkdoc-current-buffer t))
24834 2015-05-18  Glenn Morris  <rgm@gnu.org>
24836         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
24838 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24840         * admin/notes/unicode: New section "binary files".
24842         Change new etags test to use UTF-8 encoding
24843         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
24844         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
24845         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
24846         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
24847         * test/etags/html-src/softwarelibero.html:
24848         Switch to UTF-8 encoding.
24849         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
24850         Remove Makefile, as it's too incestuous to have the test input
24851         include the build procedure.
24852         (UTF8_LOCALE, UTF_ENCODING): New macros.
24853         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
24854         (check): Skip if not UTF-8.
24855         (.PHONY): New rule.
24856         (FRC): Remove, as superseded by .PHONY.  All uses removed.
24857         (regexfile): Prefer printf to echo when outputting oddball chars.
24858         (.PRECIOUS): Remove, as these files are not built.
24860         Rename 'foo-gzipped' to 'foo.gz'
24861         * test/automated/data/decompress/foo.gz:
24862         Rename from test/automated/data/decompress/foo-gzipped,
24863         to make it easier for other tools to tell that it's compressed.
24864         * test/automated/zlib-tests.el (zlib--decompress):
24865         Adjust to renamed file.
24867 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
24869         Set up default-directory
24870         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
24871         binding for `v'.
24872         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
24873         appropriate value for default-directory.
24875 2015-05-17  Samer Masterson  <samer@samertm.com>
24877         * lisp/eshell/em-term.el (eshell-term-sentinel):
24878         No-op by default, only kills term buffer if
24879         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
24880         (eshell-destroy-buffer-when-process-dies): New custom to preserve
24881         previous behavior.
24883         eshell: Introduce new buffer syntax
24884         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
24885         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
24886         needed (Bug#19319).
24887         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
24888         (eshell-get-target): Remove shorthand-specific code.
24889         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
24890         '#<buffer-name>'.
24892 2015-05-17  Jan D  <jan.h.d@swipnet.se>
24894         Merge branch 'master' into cairo
24896 2015-04-26  Jan D  <jan.h.d@swipnet.se>
24898         Merge branch 'master' into cairo
24900         Add PBM support for cairo
24901         * src/image.c (xcolor_to_argb32): New function.
24902         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
24903         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
24904         XImagePtr if ! USE_CAIRO.
24905         (pbm_load): Add cairo support.
24907 2015-04-12  Jan D  <jan.h.d@swipnet.se>
24909         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
24910         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
24911         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
24912         x_free_cr_resources.
24914         Handle specified bg in images.  Use generic libpng code for PNGs.
24915         * src/image.c (get_spec_bg_or_alpha_as_argb)
24916         (create_cairo_image_surface): New functions when USE_CAIRO.
24917         (xpm_load): Call the above functions.  Handle XPM without mask
24918         when USE_CAIRO.
24919         (png_load_body): Handle USE_CAIRO case.
24920         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
24921         instead.
24922         (jpeg_load_body): Call create_cairo_image_surface.
24923         (gif_load, svg_load_image): Handle specified background, call
24924         create_cairo_image_surface.
24925         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
24927 2015-04-11  Jan D  <jan.h.d@swipnet.se>
24929         Support GIF and TIFF with cairo
24930         * configure.ac: Allow jpeg with cairo.
24931         Allow tiff and gif with cairo.
24932         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
24933         (tiff_load): Create cairo image surface if USE_CAIRO.
24934         (gif_load): Ditto.
24936         Support JPEG with USE_CAIRO
24937         * configure.ac: Allow jpeg with cairo.
24938         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
24940 2015-04-05  Jan D  <jan.h.d@swipnet.se>
24942         Support RSVG and cairo
24943         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
24944         * src/dispextern.h (struct image): Add cr_data2 if cairo.
24945         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
24946         (x_clear_image): Free cr_data and cr_data2 if set.
24947         (xpm_load): Assign data to cr_data2.
24948         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
24950 2015-04-03  Jan D  <jan.h.d@swipnet.se>
24952         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
24953         * configure.ac (HAVE_RSVG): Move after cairo.
24954         (USE_CAIRO): Disable rsvg, don't disable Xpm.
24955         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
24956         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
24957         don't return early.
24958         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
24959         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
24960         and create a surface.
24962         Tool tips for menus did not show any text.
24963         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
24964         tip frames, the geometry may be wrong.
24966         Merge branch 'master' into cairo, fixes tooltips not shown.
24968         Merge branch 'master' into cairo
24970         Add CAIRO_CFLAGS to lwlib/Makefile.in
24971         * Makefile.in (CAIRO_CFLAGS): Add.
24973 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24975         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
24977 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24979         Draw outermost line using black relief and erase corners also for cairo.
24980         * src/xterm.c [USE_CAIRO]: Include math.h.
24981         (enum corners) [USE_CAIRO]: New enum.
24982         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
24983         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
24984         than 1, draw the outermost line using the black relief.
24986         * src/xterm.c (x_fill_trapezoid_for_relief):
24987         Remove unnecessary cairo_close_path.
24989 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24991         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
24993         * src/xterm.c (x_draw_stretch_glyph_string):
24994         Call x_reset_clip_rectangles instead of XSetClipMask.
24996         Use int instead of unsigned int for width and height args.
24997         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
24998         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
24999         width and height args.
25001         Modernize k&r cairo-related function declarations.
25002         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
25003         (xg_print_frames_dialog): Modernize k&r declarations.
25004         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
25005         (Fx_print_frames_dialog): Modernize k&r declarations.
25006         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
25007         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
25008         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
25009         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
25010         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
25011         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
25012         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
25013         (x_clear_area): Modernize k&r declarations.
25015         Implement wave-style variant of underlining for cairo.
25016         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
25017         (x_draw_underwave) [USE_CAIRO]: Use it.
25019         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
25020         instead of XFillRectangle.
25022 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25024         Fix fringe bitmap initialization for cairo
25025         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
25026         data for cairo image surface.
25027         * src/xterm.c (x_cr_define_fringe_bitmap):
25028         Call cairo_surface_mark_dirty.
25030 2015-02-11  Jan D  <jan.h.d@swipnet.se>
25032         Add cairo drawing
25033         * configure.ac (with-cairo): New option.
25034         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
25035         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
25036         Output "Does Emacs use cairo?".
25037         * lisp/version.el (emacs-version): Add cairo version.
25038         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
25039         (FONT_OBJ): Add comment about ftcrfont.
25040         (ALL_CFLAGS): Add CAIRO_CFLAGS.
25041         (LIBES): Add CAIRO_LIBS.
25042         * src/dispextern.h (struct image): Add cr_data for cairo.
25043         (x_cr_init_fringe): Declare.
25044         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
25045         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
25046         * src/fringe.c (x_cr_init_fringe): New function name that shares code
25047         with w32_init_fringe.
25048         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
25049         * src/ftfont.c (ftfont_info_size); New global variable.
25050         (ftfont_open2): New extern function almost the same as old ftfont_open,
25051         but takes the font_object as argument.
25052         (ftfont_open): Build font object and call ftfont_open2.
25053         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
25054         * src/gtkutil.c (xg_clear_under_internal_border)
25055         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
25056         Only queue_draw if not cairo.  Change args to x_clear_area.
25057         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
25058         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
25059         (xg_print_frames_dialog): New functions for printing.
25060         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
25061         (xg_print_frames_dialog): Declare.
25062         * src/image.c: Add defined (USE_CAIRO) for PNG.
25063         Add !defined USE_CAIRO for W32 PNG code.
25064         (x_clear_image): If cairo, destroy the surface in cr_data.
25065         (png_load): Add new cairo compatible implementation.
25066         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
25067         * src/xfns.c: New section Printing.
25068         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
25069         (x-print-frames-dialog): New printing functions.
25070         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
25071         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
25072         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
25073         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
25074         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
25075         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
25076         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
25077         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
25078         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
25079         Declare.
25080         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
25081         (max_fringe_bmp, fringe_bmp): New variables.
25082         (x_gc_get_ext_data, x_extension_initialize)
25083         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
25084         (x_set_cr_source_with_gc_foreground)
25085         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
25086         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
25087         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
25088         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
25089         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
25090         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
25091         (x_update_begin): Create cairo surface if needed.
25092         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
25093         (x_update_end): Paint cairo drawing surface to xlib surface.
25094         (x_clear_under_internal_border, x_after_update_window_line): Adjust
25095         arguments to x_clear_area.
25096         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
25097         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
25098         of XSetClipMask.
25099         (x_set_glyph_string_clipping)
25100         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
25101         instead of XSetClipRectangles.
25102         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
25103         Use x_fill_rectangle instead of XFillRectangle.
25104         (x_draw_glyph_string_foreground)
25105         (x_draw_composite_glyph_string_foreground)
25106         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
25107         instead of XDrawRectangle.
25108         (x_draw_relief_rect): Add code for USE_CAIRO.
25109         Call x_reset_clip_rectangles instead of XSetClipMask.
25110         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
25111         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
25112         instead of XSetClipMask.
25113         (x_draw_image_foreground, x_draw_image_foreground_1):
25114         x_draw_rectangle instead of XDrawRectangle.
25115         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
25116         XFillRectangle.
25117         (x_draw_image_glyph_string): If img has cr_data, use it as
25118         a cairo surface.
25119         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
25120         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
25121         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
25122         x_reset_clip_rectangles instead of XSetClipMask.
25123         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
25124         (x_clear_area1): New function that calls XClearArea.
25125         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
25126         non-cairo.
25127         (x_clear_frame): x_clear_window instead of XClearWindow.
25128         (x_scroll_run): Set frame garbaged if cairo.
25129         (XTmouse_position): Initialize *part to 0.
25130         (x_scroll_bar_create): Adjust arguments to x_clear_area.
25131         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
25132         x_fill_rectangle instead of XFillRectangle.
25133         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
25134         arguments to x_clear_area.
25135         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
25136         (handle_one_xevent): Adjust arguments to x_clear_area.
25137         Destroy cairo surface for frame if ConfigureNotify.
25138         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
25139         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
25140         x_reset_clip_rectangles instead of XSetClipMask.
25141         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
25142         x_reset_clip_rectangles instead of XSetClipMask.
25143         (x_clear_frame_area): Adjust arguments to x_clear_area.
25144         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
25145         (x_term_init): Call x_extension_initialize if cairo.
25146         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
25147         x_cr_destroy_fringe_bitmap for cairo.
25148         (x_initialize): Call x_cr_init_fringe for cairo.
25149         * src/xterm.h: Add include of cairo header files.
25150         (x_bitmap_record): Add img if cairo.
25151         (x_gc_ext_data): New struct for cairo.
25152         (x_display_info): Add ext_codes for cairo.
25153         (x_output): Add cr_context and cr_surface for cairo.
25154         (x_clear_area): Change arguments from Display*/Window to frame pointer.
25155         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
25156         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
25157         (x_cr_draw_frame, x_cr_export_frames): Declare.
25159 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
25161         Fix integer-valued `mouse-highlight' (Bug#20590)
25162         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
25164 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
25166         MS-Windows followup for ASCIIfication of curved quotes
25167         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
25168         test for curved quotes being displayable, after switching the
25169         terminal encoding.  (Bug#20545)
25171 2015-05-17  Jan D  <jan.h.d@swipnet.se>
25173         Add comment that x_shift_glyphs_for_insert is never called
25174         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
25175         Add comment that this function is never called.
25177 2015-05-16  Glenn Morris  <rgm@gnu.org>
25179         * src/lisp.mk: Remove from repository and generate at build-time.
25180         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
25181         (shortlisp_filter): New variable.
25182         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
25183         (distclean): Remove lisp.mk.
25184         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
25185         * lisp/loadup.el: Tweak layout to make it easier to parse.
25186         * make-dist: Do not distribute src/lisp.mk.
25188 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
25190         Display shorter dates in Git annotate output
25191         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
25192         format (when not overridden with vc-git-annotate-switches).
25193         (vc-git-annotate-time): Support the short format, as well as ISO
25194         8601 that has been used until now (bug#5428).
25196 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25198         ASCIIfy curved quotes on displays lacking them
25199         * lisp/international/mule-cmds.el (set-locale-environment):
25200         If curved quotes don't work, display straight ASCII approximations
25201         (Bug#20545).
25203 2015-05-16  Glenn Morris  <rgm@gnu.org>
25205         Small src/Makefile simplification
25206         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
25207         * src/Makefile.in (lisp): Derive from shortlisp.
25208         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
25210 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
25212         * lisp/help-mode.el (help-go-forward): Doc fix.
25213         (Bug#20577)
25215         * doc/lispref/debugging.texi (Profiling): Improve indexing.
25216         (Bug#20576)
25218 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
25220         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
25221         have one fewer `not'.
25223         * lisp/vc/vc-git.el (vc-git-diff-switches)
25224         (vc-git-annotate-switches, vc-git-resolve-conflicts)
25225         (vc-git-program, vc-git-root-log-format): Remove the redundant
25226         :group declarations.
25228 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
25230         Removes the predicate from lisp-complete-symbol (Bug#20456)
25231         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
25232         and remove it from the docstring.
25234 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
25236         Add new option vc-git-resolve-conflicts
25237         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
25238         (vc-git-find-file-hook): Add to after-save-hook only when the
25239         above is non-nil.
25240         (vc-git-resolve-when-done): Update to honor the new variable.
25241         (Bug#20292)
25243 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
25245         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
25246         (tabulated-list-init-header): Document new behavior.
25247         (tabulated-list-print-fake-header): Do nothing if
25248         `tabulated-list--header-string' is nil.
25249         (tabulated-list--header-string): Add a docstring.
25250         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
25251         * etc/NEWS: Document it.
25253 2015-05-15  Leo Liu  <sdl.web@gmail.com>
25255         Revert "Fix cps--gensym"
25256         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
25257         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
25259 2015-05-15  Glenn Morris  <rgm@gnu.org>
25261         Replace AC_SUBST_FILE in configure with include in Makefiles
25262         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
25263         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
25264         (AUTO_DEPEND): New output variable.
25265         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
25266         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
25267         (lwlib_deps_frag): Replace by conditional include.
25268         * lwlib/autodeps.mk: Remove file.
25269         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
25270         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
25271         (oldxmenu_deps_frag): Replace by conditional include.
25272         * oldXMenu/autodeps.mk: Remove file.
25273         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
25274         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
25275         (lisp_frag): Replace by an include.
25276         (deps_frag): Replace by conditional include.
25277         * src/autodeps.mk: Remove file.
25279         Tweak japanese.el's loading of dependencies
25280         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
25281         * lisp/language/japanese.el: Use require rather than load.
25282         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
25283         Provide a feature.
25284         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
25285         Provide a feature in the generated file.
25287 2015-05-15  Jan D  <jan.h.d@swipnet.se>
25289         Fix NS warnings
25290         * src/nsmenu.m (ns_popup_dialog)
25291         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
25292         * src/nsfns.m (Fx_create_frame): Remove unused variables.
25293         (Fns_read_file_name): Initialize fname, remove ret.
25294         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
25295         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
25296         Remove unused variable.
25297         (init): Add parantesis in if.
25298         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
25300 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
25302         Fix a enum conversion warning in macfont.m
25303         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
25304         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
25306 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
25308         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
25309         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
25311 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
25313         * lisp/cus-start.el: Add ns-confirm-quit.
25315         Fix warnings on OSX 10.10
25316         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
25317         OSX versions.
25318         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
25319         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
25320         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
25321         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
25322         setScalesWhenResized for OSX < 10.6.
25323         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
25324         * src/nsterm.m (ns_copy_bits): New function that does not use
25325         deprecated NSCopyBits.
25326         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
25327         (runAlertPanel): New function.
25328         (applicationShouldTerminate:): Call runAlertPanel.
25329         (initFrameFromEmacs, toggleFullScreen:): Only call
25330         useOptimizedDrawing for OSX < 10.10.
25331         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
25332         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
25333         (draggingEntered:): Returns NSDragOperation.
25334         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
25336 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
25338         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
25339         (package--init-file-ensured): New variable.
25340         (package-initialize, package--ensure-init-file): Use it.
25342 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
25344         Honor :fore/background for XBM on NS (Bug#14969)
25345         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
25346         initFromXBM takes bg, fg args, remove flip arg.
25347         (ns_image_from_XBM): Add bg, fg args.
25348         * src/image.c (x_create_bitmap_from_data)
25349         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
25350         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
25351         initFromXBM.  Remove flip arg.
25352         (initFromSkipXBM): Move code to initFromXBM.
25353         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
25354         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
25355         always false.
25356         Remove bit flipping (bitPat, swt), generated incorrect images when
25357         width/height wasn't a multiple of 8.
25358         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
25359         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
25360         remove flip arg.
25362 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
25364         * lisp/emacs-lisp/package.el: Be more careful with the init file.
25365         (package--ensure-init-file): Check that user-init-file is set,
25366         exists, is readable, and is writable.  (Bug#20584)
25367         Also expand the docstring.
25369 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
25371         Sync with upstream verilog-mode revision 6232468
25372         * lisp/progmodes/verilog-mode.el
25373         (verilog-font-lock-grouping-keywords-face)
25374         (verilog-highlight-grouping-keywords): Fix use of face when
25375         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
25376         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
25377         parent is reset, bug906.  Reported by Ken Schmidt.
25378         (verilog-auto-inout-module): Add fourth regexp argument to
25379         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
25380         Reported by John Tillema.
25381         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
25382         modport if signal attachment is itself a modport.  Reported by
25383         Matthew Lovell.
25384         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
25385         always_comb and always_latch, bug844.  Reported by Greg Hilton.
25386         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
25387         with many curly-bracket pairs, bug663.
25388         (verilog-set-auto-endcomments): Fix end comments for functions of
25389         type void, etc.  Reported by Alex Reed.
25390         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
25391         caused by indent-line-to deleting tabls pre 24.5.
25392         (verilog-nameable-item-re): Fix nameable items that can have an
25393         end-identifier to include endchecker, endgroup, endprogram,
25394         endproperty, and endsequence.  Reported by Alex Reed.
25395         (verilog-label-be): When auto-commenting a buffer, consider
25396         auto-comments on all known keywords (not just a subset thereof).
25397         Reported by Alex Reed.
25398         (verilog-auto-end-comment-lines-re)
25399         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
25400         Automatically comment property/endproperty blocks to match other
25401         similar blocks like sequence/endsequence, function/endfunction, etc.
25402         Reported by Alex Reed.
25403         (verilog-set-auto-endcomments): Detect the function- or task-name
25404         when auto-commenting blocks that lack an explicit portlist.
25405         Reported by Alex Reed.
25406         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
25407         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
25408         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
25409         is nil, fix indenting initial/final to match always statements,
25410         bug825.  Reported by Tim Clapp.
25411         (verilog-extended-complete-re): Fix indentation of DPI-C imports
25412         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
25413         Mao and Jason Forkey.
25414         (verilog-read-decls): Fix parsing typed interfaces.  Fix
25415         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
25416         Fix localparam not being ignored in AUTOINSTPARAM,
25417         bug889.  Reported by Shannon Hill.
25418         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
25419         bug793.  Reported by Pierre-David Pfister.
25420         (verilog-auto-arg-format, verilog-auto-arg-ports):
25421         Add verilog-auto-arg-format to support newlines in AUTOARG.
25422         Reported by Jie Xiao.
25423         (verilog-batch-execute-func): Do not batch re-auto files loaded by
25424         Local Variables.  Fix printing "no changes to be saved" with
25425         verilog-batch.  Reported by Dan Dever.
25426         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
25427         interface-only modules, bug721.  Reported by Dean Hoyt.
25428         Author: Alex Reed <acreed4@gmail.com>
25429         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
25430         Don't treat '<keyword>:<identifier>' as the start of a labeled
25431         statement, bug905.  Reported by Enzo Chi.
25432         (verilog-directive-re, verilog-compiler-directives)
25433         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
25434         directives (plus some extras) when determining indentation, bug
25435         901.  Reported by Bernd Beuster.
25436         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
25437         iff expression doesn't start with word-character, bug900.
25438         (verilog-optional-signed-range-re, verilog-optional-signed-re):
25439         Fix incorrect indentation/alignment of unsigned declarations,
25440         bug897.
25441         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
25442         always constructs, bug895.
25443         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
25444         Reported by Eric Mastromarchi.
25445         (verilog-beg-of-statement): Fix indenting for some forms of
25446         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
25447         continued assignment incorrect if first line ends with ']', bug437.
25448         Reported by Dan Dever.  Fix indention of cover inside an
25449         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
25450         blocks, bug842.
25451         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
25452         Reported by Kaushal Modi.
25453         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
25454         (verilog-backward-token): Fix indenting sensitivity lists with
25455         named events, bug840.  Reed.
25456         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
25457         nil not honoring 'forever', 'foreach', and 'do' keywords.
25459 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
25461         Check for invalid GTK+ monitor scales
25462         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
25463         INT_MAX for too-large scales.  All callers changed to assume the
25464         result is valid (Bug#20432).
25465         (xg_frame_set_char_size, xg_update_scrollbar_pos):
25466         Calculate scale only if needed.
25467         Show ASCII approximations instead.
25469 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
25471         Fix daemon crashes when linum-mode is turned on early on
25472         * src/window.c (Fwindow_end): Don't try calling display engine
25473         functions on initial-frame frame.  (Bug#20565)
25475         Fix selective diff browsing in Ediff
25476         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
25477         Go to the beginning of the region before searching for the
25478         ediff-regexp-focus-* regexps.  (Bug#20568)
25480 2015-05-14  Jan D  <jan.h.d@swipnet.se>
25482         Fixes bug#20142
25483         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
25484         arrive in the main loop, even for Gtk 3 (Bug#20142).
25486         Don't access display after i/o error (Bug#19147).
25487         * src/xterm.c (x_connection_closed): Add third arg ioerror.
25488         If ioerror, set display to 0 (Bug#19147).
25489         (x_error_quitter): Call x_connection_closed with third arg false.
25490         (x_io_error_quitter): Call x_connection_closed with third arg true.
25492         Handle GTK_SCALE, fixes Bug#20432.
25493         * src/gtkutil.c (xg_get_gdk_scale): New function.
25494         (xg_frame_set_char_size)
25495         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
25496         (xg_get_default_scrollbar_height)
25497         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
25498         when setting sizes (Bug#20432).
25500 2015-05-13  Leo Liu  <sdl.web@gmail.com>
25502         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
25504 2015-05-13  Glenn Morris  <rgm@gnu.org>
25506         Fix bootstrap (void function cl-member).
25507         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
25508         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
25510 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
25512         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
25513         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
25514         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
25515         Avoid defalias for closures which are not immutable.
25516         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
25517         the dispatchers table with various entries.
25518         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
25519         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
25521 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
25523         Improve tagging of C bindings in DEFVAR_*
25524         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
25525         from DEFVAR_*.
25527 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25529         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
25531 2015-05-12  Glenn Morris  <rgm@gnu.org>
25533         * lisp/progmodes/tcl.el (tcl-filter):
25534         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
25536         Add basic VC push support
25537         * lisp/vc/vc.el (vc-push): New autoloaded command.
25538         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
25539         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
25540         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
25541         (vc-bzr-push): New.
25542         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
25543         (vc-git-pull): Reimplement using vc-git--pushpull.
25544         (vc-git-push): New.
25545         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
25546         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
25547         * doc/emacs/maintaining.texi (Pulling / Pushing):
25548         Rename from "VC Pull".  Mention pushing.
25549         (VC With A Merging VCS, VC Change Log): Update xrefs.
25550         (Branches): Update menu.
25551         * doc/emacs/emacs.texi: Update menu.
25552         * etc/NEWS: Mention this.
25554 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
25556         Improve the seq pcase pattern and the `seq-let' macro
25557         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
25558         object is a sequence, and binds each element of ARGS to the
25559         corresponding element of the sequence.
25561 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
25563         Fix tags created from DEFVAR_* declarations in C
25564         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
25565         to make tags extracted from DEFVAR_* declarations more accurate.
25567         Add a test suite for etags
25568         * test/etags/: New test suite, adapted from
25569         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
25570         whose original author is Francesco Potortì <pot@gnu.org>.
25572         Fix tagging of symbols in C enumerations
25573         * lib-src/etags.c (consider_token): Don't tag symbols in
25574         expressions that assign values to enum constants.  See
25575         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
25576         for details.
25577         (C_entries): Reset fvdef to fvnone after processing a preprocessor
25578         conditional and after a comma outside of parentheses.
25580 2015-05-12  Glenn Morris  <rgm@gnu.org>
25582         * lisp/url/url-handlers.el (url-file-name-completion)
25583         (url-file-name-all-completions): Silence compiler.
25585         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
25587         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
25589 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
25591         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
25592         (cl--generic-mandatory-args): Remove.
25593         (cl--generic-split-args): New function.
25594         (cl-generic-define, cl--generic-lambda): Use it.
25595         (cl-generic-define-method): Use it as well, and add support for
25596         context args.
25597         (cl--generic-get-dispatcher): Handle &context dispatch.
25598         (cl--generic-cache-miss): `dispatch-arg' can now be a
25599         context expression.
25600         (cl--generic-dispatchers): Pre-fill.
25601         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
25602         New test.
25604 2015-05-11  Glenn Morris  <rgm@gnu.org>
25606         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
25608 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
25610         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
25611         * lisp/term/rxvt.el: Require term/xterm.
25612         (rxvt-function-map): Use xterm-rxvt-function-map.
25613         (rxvt-standard-colors): Move before first use.
25614         (terminal-init-rxvt): Use xterm--push-map and
25615         xterm-register-default-colors.
25616         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
25617         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
25618         Move shared bindings between rxvt and xterm to it.
25619         (xterm-function-map): Use it.  Move the xterm-paste binding to
25620         xterm-rxvt-function-map (bug#20444).
25621         (xterm-standard-colors): Move before first use.
25622         (xterm--push-map): New function.
25623         (xterm-register-default-colors): Take standard colors as argument.
25624         (terminal-init-xterm): Use it.  Adjust call to
25625         xterm-register-default-colors.
25627 2015-05-11  Glenn Morris  <rgm@gnu.org>
25629         * lisp/term/x-win.el: Quieten --without-x compilation.
25630         (x-own-selection-internal, x-disown-selection-internal)
25631         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
25632         Declare.
25634         * Makefile.in (emacslog): Remove srcdir.
25635         (ChangeLog): Update for the above.
25637 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25639         python.el: better limit for looking-back calls
25640         * lisp/progmodes/python.el (python-shell-accept-process-output):
25641         Use last comint prompt start as limit for looking-back.
25643 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
25645         CEDET (srecode-insert-fcn): Fix use of oref on a class
25646         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
25647         on a class.  Reported by Pierre Lorenzon.
25648         (srecode-template-inserter-point): Remove declaration.
25650         CEDET (srecode-create-dictionary): Avoid obsolete object name
25651         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
25652         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
25654 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
25656         C-x 8 shorthands for curved quotes, Euro, etc.
25657         Although C-x 8 lets you insert arbitrary Unicode characters,
25658         it's awkward to use this to insert commonly used symbols such as curved
25659         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
25660         characters commonly found in English text and in basic math.
25661         For example, assuming the Alt key works on your keyboard and iso-transl
25662         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
25663         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
25664         (Bug#20499)
25665         * doc/emacs/mule.texi (Unibyte Mode):
25666         A few other printing characters now work too.
25667         * etc/NEWS: Document this.
25668         * lisp/international/iso-transl.el (iso-transl-char-map):
25669         Also support the following characters:
25670         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
25672 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
25674         Add xref-find-regexp
25675         * lisp/progmodes/xref.el (xref-find-function): Describe the
25676         `matches' action.
25677         (xref-find-regexp): New command, using it.
25678         (xref-collect-references): Rename to xref-collect-matches.
25679         (xref--collect-reference): Rename to xref--collect-match.
25680         (xref-collect-matches, xref--collect-match): Accept new argument,
25681         KIND.  Update accordingly.
25682         (xref--regexp-to-extended): New function.
25683         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
25684         `matches' action.
25685         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
25686         * lisp/progmodes/etags.el (etags-xref-find):
25687         Support the `matches' action.
25688         (etags--xref-find-matches): New function.
25690 2015-05-10  Glenn Morris  <rgm@gnu.org>
25692         * Makefile.in: Fixes for recent change-history changes.
25693         (change-history-nocommit): Update footer regexp.
25694         Ensure output script stays executable.
25696 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
25698         New version of `seq-let' based on a pcase pattern
25699         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
25700         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
25702 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
25704         Add basic HTML5 tags and a template
25705         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
25706         (html-tag-alist): Add HTML5 tags.
25707         (html-tag-help): Add new tags descriptions.
25708         (html-navigational-links): Template for nav links.
25709         (html-html5-template): Template for a HTML5 page.
25711 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
25713         semantic/symref/grep: Don't use word boundaries
25714         * lisp/cedet/semantic/symref/grep.el
25715         (semantic-symref-perform-search): Instead of wrapping input in
25716         word boundaries, check that the characters before and after are
25717         not word constituents.
25719         semantic/symref/grep: Support regexp search
25720         * lisp/cedet/semantic/symref.el
25721         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
25722         the search type is regexp.
25723         * lisp/cedet/semantic/symref/grep.el
25724         (semantic-symref-perform-search): Support the regexp search type.
25725         Pass -E to Grep when it's used.
25727         semantic-symref-regexp: Allow to input an arbitrary string
25728         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
25729         Allow to input an arbitrary string interactively.
25731         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
25732         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
25733         Remove tag-symbol-match-p from the default value
25734         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
25736         Declare find-tag obsolete
25737         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
25738         xref-find-definitions.
25740 2015-05-10  Jan D  <jan.h.d@swipnet.se>
25742         Draw composite string correctly (Bug#20537)
25743         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
25744         New function.
25745         (ns_draw_glyph_string): Call it.
25747 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
25749         Avoid infloop in ERC
25750         * lisp/simple.el (line-move-to-column): Ignore field boundaries
25751         while computing line beginning position.  (Bug#20498)
25753 2015-05-08  Glenn Morris  <rgm@gnu.org>
25755         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
25756         * build-aux/gitlog-to-emacslog: Check called from right directory.
25757         (srcprefix): Remove.
25759         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
25760         * Makefile.in (ChangeLog): No longer pass "distprefix".
25761         * make-dist: Update "make ChangeLog" syntax for the above change.
25763         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
25764         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
25766         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
25768         Add command-line option-parsing to gitlog-to-emacslog
25769         * build-aux/gitlog-to-emacslog: Add command-line options.
25770         By default, refuse to remove an existing output file.
25771         * Makefile.in (CHANGELOG): Update default.
25772         (ChangeLog): Do not test for existing file.
25773         (change-history-nocommit): Ensure temp file does not exist.
25775         Quieten --without-x compilation
25776         * lisp/term/common-win.el: Provide a feature.
25777         * lisp/term/x-win.el (term/common-win): Require it.
25779         * lisp/dired-aux.el (dired-do-print): Require lpr.
25781         Quieten compilation, eg in --without-x builds
25782         * lisp/dired-aux.el (lpr-printer-switch):
25783         * lisp/frame.el (tool-bar-height):
25784         * lisp/linum.el (font-info):
25785         * lisp/window.el (font-info, overflow-newline-into-fringe)
25786         (tool-bar-height):
25787         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
25788         * lisp/gnus/gnus-util.el (iswitchb-mode):
25789         * lisp/mail/rmailmm.el (libxml-parse-html-region):
25790         * lisp/net/nsm.el (gnutls-peer-status)
25791         (gnutls-peer-status-warning-describe):
25792         * lisp/net/shr.el (libxml-parse-xml-region):
25793         * lisp/url/url-http.el (gnutls-peer-status): Declare.
25795 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
25797         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
25798         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
25799         `subclass' since they're never called with a class.
25800         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
25801         srecode-dictionary-child-p.
25803 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25805         * lisp/help.el (help--binding-locus): Document argument POSITION.
25806         (Bug#20530)
25808 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
25810         Merge from gnulib
25811         * doc/misc/texinfo.tex: Get latest version.
25813 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
25815         ffap.el (ffap-read-file-or-url): Fix completing-read call
25816         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
25817         `completing-read' should be a symbol.
25819 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
25821         Verify file modifications by other programs
25822         * src/filelock.c (lock_file): Check whether the file was modified
25823         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
25825         Fix keyboard macros that include function keys
25826         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
25827         keys in the macro before returning.  (Bug#20454)
25829 2015-05-08  Glenn Morris  <rgm@gnu.org>
25831         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
25832         "Copyright-paperwork-exempt".  (Bug#20324)
25834         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
25835         (log-edit-rewrite-tiny-change): New variable.
25836         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
25837         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
25838         * etc/NEWS: Mention this.
25840         * lisp/calc/calc.el (math-zerop): Declare.
25842         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
25844 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25846         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
25847         Support the case when BINDINGS is a single tuple.  (Bug#20525)
25849         * etc/NEWS: Fix typo in previous commit
25850         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
25852 2015-05-07  Jan D  <jan.h.d@swipnet.se>
25854         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
25855         Output URL to Gtk+ bug (Bug#20452).
25857         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
25859 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25861         * lisp/emacs-lisp/package.el: New "external" package status.
25862         An external package is any installed package that's not built-in
25863         and not from `package-user-dir', which usually means it's from an
25864         entry in `package-directory-list'.  They are treated much like
25865         built-in packages, in that they cannot be through the Package Menu
25866         deleted and are not considered for upgrades.
25867         (package-desc-status): Identify if a package is installed outside
25868         `package-user-dir'.
25869         (package-menu--print-info-simple)
25870         (package-menu--status-predicate): Add support for it.
25871         * etc/NEWS: Document it.
25873 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25875         * lisp/mail/rmail.el: Use lexical-binding.
25876         (rmail-bury): Remove unused var `buffer-to-bury'.
25877         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
25878         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
25879         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
25880         (rmail-insert-inbox-text): Remove unused var `movemail'.
25881         (rmail-add-mbox-headers): Remove unused var `limit'.
25882         (rmail-undelete-previous-message): Remove unused var `value'.
25883         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
25884         `resent-reply-to'.
25885         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
25886         (rmail-restore-desktop-buffer): Rename arguments.
25888 2015-05-06  Glenn Morris  <rgm@gnu.org>
25890         * Makefile.in (change-history-commit): Add missing piece of previous.
25892         Avoid unnecessary bumping of Makefile.in's timestamp
25893         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
25894         (emacslog): New variable.
25895         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
25896         (unchanged-history-files): Use $emacslog rather than Makefile.in.
25897         (change-history-nocommit): Store hash in $emacslog.
25898         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
25899         * admin/update_autogen (changelog_files): Update for the above.
25901         * Makefile.in: Don't always insist on removing existing "ChangeLog".
25902         (CHANGELOG): New variable.
25903         (no-ChangeLog): Remove.
25904         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
25905         (change-history-nocommit): Use a temp file rather than insisting
25906         on deletion of any existing "ChangeLog".
25908         * build-aux/gitlog-to-emacslog: Allow specification of output.
25910         * admin/update_autogen: Add option to update ChangeLog.
25911         (usage): Mention -H.
25912         (changelog_flag, changelog_n, changelog_files): New variables.
25913         (main): Check for -H, and maybe run change-history-nocommit.
25915 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25917         * lisp/subr.el (delete-dups): Pre-size the hashtable.
25919         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
25920         cl--arglist-args is defined (bug#20517).
25922 2015-05-06  Glenn Morris  <rgm@gnu.org>
25924         * Makefile.in (change-history-nocommit): New.
25926 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
25928         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
25929         timer when it is non-nil
25930         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
25932 2015-05-06  Glenn Morris  <rgm@gnu.org>
25934         Quieten CEDET compilation
25935         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
25936         Invert fboundp test to quieten on current Emacs.
25937         * lisp/cedet/ede/config.el (ede-shell-run-something)
25938         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
25939         (semanticdb-refresh-table): Declare.
25940         (ede-preprocessor-map): Require semantic/db.
25942         Quieten cc-mode compilation
25943         * lisp/progmodes/cc-awk.el (c-forward-sws):
25944         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
25945         Declare.
25947 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
25949         * lisp/subr.el (delete-dups): Avoid nreverse.
25951 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
25953         * lisp/subr.el (delete-dups): Make it destructive again.
25955 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25957         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
25959 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25961         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
25962         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
25963         (testcover--read): Rename from testcover-read.  Change calling
25964         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
25965         is gone.
25966         (testcover-start): Use add-function.  Move edebug-all-defs binding to
25967         testcover--read.
25968         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
25969         (testcover-mark): Remove unused var `item'.
25970         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
25972 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
25974         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
25975           use a hash table.  This can result in ~500 times speed-up for typical
25976           collections of size 5000, like that of `load-library'.
25978 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25980         CEDET: Avoid `oref' on classes in a few more cases
25981         * lisp/cedet/ede/generic.el (ede-find-target):
25982         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
25983         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
25984         var `prefix'.
25986         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
25987         (grepflags, greppattern): Declare.
25988         (semantic-symref-perform-search): Remove unused var `pat'.
25990         CEDET (srecode-compile-inserter): Avoid `oref' on classes
25991         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
25992         Avoid `oref' on classes (bug#20491).
25993         (srecode-compile-split-code): Remove unused var `key'.
25995 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
25997         Clean up pulse.el a little
25998         * lisp/cedet/pulse.el (pulse): Remove.
25999         (pulse-momentary-timer): Save instead of the stop time.
26000         (pulse-momentary-highlight-overlay):
26001         Call pulse-momentary-unhighlight first thing.
26002         Treat pulse-momentary-overlay as a single value, not a list.
26003         Save the created timer.  Only pass the stop time to the timer.
26004         (pulse-tick): Update accordingly.
26005         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
26006         single value.  Cancel the timer.
26008 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
26010         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
26011         Support the biblatex journaltitle field.
26013 2015-05-05  Glenn Morris  <rgm@gnu.org>
26015         Minor declare-function improvement
26016         * lisp/emacs-lisp/bytecomp.el
26017         (byte-compile-macroexpand-declare-function):
26018         Handle declarations after calls.  (Bug#20509)
26020         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
26022         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
26024 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
26026         Pulse using a timer
26027         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
26028         (pulse-momentary-highlight-overlay): Set up the timer instead of
26029         calling `pulse'
26030         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
26031         (pulse-tick): New function.
26032         (pulse-momentary-unhighlight): Cut off the stop time.
26033         (pulse-delay): Update the docstring WRT to not using sit-for.
26035         Add semantic/symref/grep file patterns for ruby-mode
26036         * lisp/cedet/semantic/symref/grep.el
26037         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
26038         Clarify the docstring.
26040         Don't require match
26041         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
26042         match.  That doesn't work for every command, and some identifier
26043         completion tables are bound to be imperfect anyway.
26045 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
26047         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
26048         (semantic-grammar--template-expand): New function.
26049         (semantic-grammar-header, semantic-grammar-footer): Use it.
26050         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
26051         (semantic-grammar-file-regexp): Refine regexp.
26052         (semantic-grammar-eldoc-get-macro-docstring):
26053         Use elisp-get-fnsym-args-string when available.
26054         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
26055         instead of the old eldoc-* names.
26056         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
26057         from elisp-mode.el.  Tweak calling convention.
26058         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
26059         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
26060         elisp--get-fnsym-args-string.
26061         (elisp--highlight-function-argument): Add `prefix' arg.
26062         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
26063         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
26065 2015-05-05  Glenn Morris  <rgm@gnu.org>
26067         * lisp/help-fns.el (describe-function-1):
26068         Handle builtins with advertised calling conventions.  (Bug#20479)
26070 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
26072         Merge branch 'seq-let'
26074         Update `seq-let' documentation
26075         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
26076         with the support of  `&rest'.
26078         Add support for &rest in `seq-let'
26079         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
26080         in the argument list.
26081         * test/automated/seq-tests.el: Add a test for parsing and binding
26082         `&rest' in `seq-let'.
26084 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
26086         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
26087         Add missing increment (Bug#20467).
26088         (eieio-object-value-create): Adjust to new slots representation
26089         (Bug#20467).
26090         (eieio-object-value-create): Fix missed adjustment to new
26091         representation of slots metadata.
26093 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
26095         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
26097 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
26099         Work around "Attempt to modify read-only object"
26100         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
26101         elisp--xref-find-definitions, to work around "Attempt to modify
26102         read-only object" error.
26104         Only skip some variables that have function counterparts
26105         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26106         Only skip minor-mode-named variable if it's defined in a Lisp
26107         file, and it's in minor-mode-list (bug#20506).
26108         * test/automated/elisp-mode-tests.el
26109         (elisp-xref-finds-both-function-and-variable)
26110         (elisp-xref-finds-only-function-for-minor-mode): New tests.
26112 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26114         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
26115         previous change.
26116         (xref--insert-xrefs): Buttonize the whole line, including the
26117         number at the beginning.
26119         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26120         Make sure we're inside the let bindings.
26121         * test/automated/elisp-mode-tests.el
26122         (elisp-completes-functions-after-let-bindings): New test.
26124 2015-05-04  Glenn Morris  <rgm@gnu.org>
26126         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
26127         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
26128         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
26129         Remove outdated declarations.
26131         Replace instances of "(eval-when-compile (autoload ...))"
26132         * lisp/gnus/gnus-art.el (nneething-get-file-name):
26133         Declare rather than autoload.
26134         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
26135         Remove pointless autoload.
26136         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
26137         (gnus-topic-create-topic, gnus-topic-enter-dribble):
26138         Declare rather than autoload.
26139         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
26140         (mailcap-extension-to-mime): Autoload at run-time.
26141         * lisp/gnus/mm-util.el (latin-unity-massage-name)
26142         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
26143         (latin-unity-representations-present-region):
26144         Declare rather than autoload.
26145         * lisp/gnus/mml-smime.el (epg-make-context)
26146         (epg-passphrase-callback-function): Autoload at run-time.
26147         (epg-context-set-signers, epg-context-result-for)
26148         (epg-new-signature-digest-algorithm)
26149         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
26150         (epg-sign-string, epg-encrypt-string)
26151         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
26152         (epg-configuration, epg-expand-group, epa-select-keys):
26153         Declare rather than autoload.
26154         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
26155         Autoload at run-time.
26156         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
26157         (gnus-registry-get-id-key, gnus-registry-action):
26158         Declare rather than autoload.
26159         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
26160         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
26161         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
26162         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
26163         (spam-stat-split-fancy): Remove pointless autoloads.
26164         * lisp/net/mairix.el: Load gnus-util when compiling.
26165         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
26166         (message-field-value): Declare rather than autoload.
26167         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
26168         Check gnus-alive-p is fbound.
26169         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
26170         (vm-check-for-killed-summary, vm-error-if-folder-empty)
26171         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
26172         Declare rather than autoload.
26174         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
26176         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
26177         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
26179         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
26181         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
26183         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
26184         * lisp/emacs-lisp/package.el (epg-signature-status):
26185         Fix declarations.
26187         * lisp/play/gametree.el (gametree-show-children-and-entry)
26188         (gametree-apply-layout, gametree-mouse-show-subtree)
26189         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
26191         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
26192         Handle cl-defgeneric, cl-defmethod.
26194 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26196         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
26197         Highlight both type and symbol name.
26199         Insert, highlight and align line numbers in xref output
26200         * lisp/progmodes/etags.el (xref-location-line): Specialize for
26201         xref-etags-location.
26202         * lisp/progmodes/xref.el (xref-location-line): New generic method.
26203         (xref-file-location): Add reader for the line slot.
26204         (xref--location-at-point): Skip to the `xref-location' property.
26205         (xref--collect-reference): Drop the line number from description.
26206         (xref--insert-xrefs): Insert, highlight and align line numbers.
26208 2015-05-04  Daniel Colascione  <dancol@dancol.org>
26210         * lisp/simple.el (save-mark-and-excursion--save)
26211         (save-mark-and-excursion--restore): Fix previous commit
26212         (255a011f0ecf004b31c59945b10154b10fac3af1).
26214 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26216         Don't pulse the indentation, or the newline
26217         * lisp/cedet/pulse.el (pulse-lighten-highlight)
26218         (pulse-reset-face): Fall back to the inherited background
26219         attribute in FACE.
26220         (pulse-momentary-highlight-region): Add autoload cookie.
26221         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
26222         indentation, or the newline, if the line's non-empty
26223         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
26225 2015-05-04  Daniel Colascione  <dancol@dancol.org>
26227         Add `save-mark-and-excursion', which has the old
26228         `save-excursion' behavior
26229         * doc/lispref/positions.texi (Excursions):
26230         Document `save-mark-and-excursion'.
26231         * lisp/font-lock.el (font-lock-fontify-block):
26232         Use `save-mark-and-excursion' instead of `save-excursion',
26233         restoring Emacs 24 behavior.
26234         * lisp/simple.el (save-mark-and-excursion--save)
26235         (save-mark-and-excursion--restore): New functions.
26236         (save-mark-and-excursion): New user macro.
26237         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
26238         in `save-excursion' documentation.
26240 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26242         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26243         Classify lone symbol inside let varlist as variable.
26244         * test/automated/elisp-mode-tests.el
26245         (completest-variables-in-let-bindings): New test.
26247         Add xref-pulse-on-jump
26248         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
26249         Add autoload cookie.
26250         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
26251         (xref--maybe-pulse): New function.
26252         (xref-pop-marker-stack, xref--pop-to-location)
26253         (xref--display-position): Use it.
26254         (xref--location-at-point): Use back-to-indentation.
26256 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
26258         lisp/org/org-{macs,list}.el: Fix lexical warnings
26259         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
26260         (org-list-get-next-item, org-list-get-prev-item)
26261         (org-list-get-children): Mark unused arg `struct'.
26262         (org-list-use-alpha-bul-p): Remove unused var `bul'.
26263         (org-toggle-checkbox): Mark unused var.
26264         (org-update-checkbox-count): Remove unused var `box-num'.
26265         (org-adapt-indentation): Declare.
26266         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
26267         (org-list-send-list): Remove unused var `txt'.
26268         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
26269         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
26270         * lisp/org/org-macs.el: Use `declare'.
26271         (org-with-limited-levels): Declare dyn-bound vars.
26273 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
26275         Fix minor issues with CEDET on MS-Windows
26276         * lisp/cedet/semantic/symref/idutils.el
26277         (semantic-symref-parse-tool-output-one-line): Fix the search
26278         regexp to match MS-Windows file names with drive letters.
26279         (Bug#19468)
26280         * lisp/cedet/semantic/symref/grep.el
26281         (semantic-symref-grep-use-template): Remove "--color=always" from
26282         Grep switches on MS-Windows.
26283         (semantic-symref-grep-shell): Use shell-file-name as the default
26284         value, so this works not only on Posix platforms.
26285         (semantic-symref-perform-search): Use shell-quote-argument instead
26286         of literal '..' for portable quoting of Grep command-line
26287         argument.  Use shell-command-switch instead of a literal "-c".
26288         * lisp/cedet/semantic/bovine/gcc.el
26289         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
26290         for an absolute file name in a portable way.
26292 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
26294         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
26295         (package-import-keyring, package-refresh-contents)
26296         (package-compute-transaction, package--save-selected-packages)
26297         (package-install-from-archive, package-delete)
26298         (package-menu--perform-transaction): Use `inhibit-message' instead.
26299         (package--compile): Set `warning-minimum-level' to :error.
26301 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
26303         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
26304         (terminal-init-screen): Use it (bug#20356).
26305         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
26306         (xterm--extra-capabilities-type): New const.
26307         (xterm-extra-capabilities): Use it.
26308         (xterm--version-handler): Lower the pseudo-version for `screen'.
26310 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
26312         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
26313         Always insert a newline at the end (to avoid mouse-face background
26314         tail at the last line).
26316         elisp-completion-at-point: Prioritize being quoted over funpos
26317         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26318         Only consider function position when not inside quoted form
26319         (bug#20425).
26320         * test/automated/elisp-mode-tests.el: New file.
26322         Stop vc-print-log from jumping to the top
26323         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
26324         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
26325         is not specified.
26326         (vc-incoming-outgoing-internal): Always pass nil.
26327         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
26328         call it, and don't set vc-sentinel-movepoint (bug#15322).
26329         (vc-print-root-log): Don't fetch the root working revision, nor
26330         pass it to vc-print-log-internal.
26332 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
26334         Fix display of keyboard layouts for right-to-left scripts
26335         * lisp/international/quail.el (quail-insert-kbd-layout):
26336         Force left-to-right paragraph direction.
26338 2015-05-02  K. Handa  <handa@gnu.org>
26340         * src/cmds.c (internal_self_insert): When we insert spaces for
26341         padding, set point before the padding spaces, not after them.
26343 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
26345         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
26347 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
26349         Fix etags-xref-find for references
26350         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
26351         Use `cl-mapcan'.
26352         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
26353         directory if no tags tables are loaded (bug#19468).
26355 2015-05-02  Philipp Stephani  <phst@google.com>
26357         Update the options in whitespace-style defcustom
26358         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
26359         `repeat' because the option is really set-like.  Add missing
26360         options.  Reorder options to match the order in the
26361         documentation.  (Bug#20346)
26363 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
26365         Fix error diagnostics of c-macro-expand
26366         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
26367         too early if no start-marker string was found -- that generally
26368         means cpp exited abnormally, and we still want to show its error
26369         messages to the user.
26371         Don't require Texinfo 5.0 for Emacs documentation
26372         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
26373         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
26374         "@codequoteundirected on", respectively, to avoid requiring
26375         Texinfo 5.x for Emacs documentation.
26377 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
26379         * lisp/files.el (pwd):
26380         When called with a prefix argument, insert the current default
26381         directory at point.
26383 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
26385         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
26386         * lisp/isearch.el (isearch-mode-map): Don't inhibit
26387         function-key-map remapping for backspace (bug#20466).
26389 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
26391         Implement xref-find-references in etags and elisp-mode
26392         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
26393         (elisp-xref-find): Use it.
26394         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
26395         * lisp/progmodes/xref.el (xref-collect-references):
26396         (xref--collect-reference): New functions.
26398 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
26400         Prefer plain characters to Texinfo circumlocutions
26401         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
26402         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
26404         Fix single-quoting style in PDF manuals
26405         The PDF versions of the GNU manuals used curved single quotes to
26406         represent grave accent and apostrophe, which made it a pain to cut
26407         and paste code examples from them.  Fix the PDF versions to use
26408         grave accent and apostrophe for Lisp source code, keystrokes, etc.
26409         This change does not affect the info files, nor does it affect
26410         ordinary uses of curved single quotes in PDF.
26411         * doc/emacs/docstyle.texi: New file, which specifies treatment for
26412         grave accent and apostrophe, as well as the document encoding.
26413         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
26414         * doc/lispintro/emacs-lisp-intro.texi:
26415         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
26416         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
26417         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
26418         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
26419         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
26420         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
26421         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
26422         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
26423         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
26424         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
26425         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
26426         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
26427         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
26428         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
26429         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
26430         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
26431         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
26432         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
26433         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
26434         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
26435         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
26436         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
26437         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
26438         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
26439         * doc/misc/woman.texi:
26440         Use it instead of '@documentencoding UTF-8', to lessen the need for
26441         global changes like this in the future.
26442         * doc/emacs/Makefile.in (EMACS_XTRA):
26443         * doc/lispintro/Makefile.in (srcs):
26444         * doc/lispref/Makefile.in (srcs):
26445         Add dependency on docstyle.texi.
26446         * doc/misc/Makefile.in (style): New macro.
26447         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
26448         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
26449         Use it.
26451 2015-05-01  Glenn Morris  <rgm@gnu.org>
26453         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
26455         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
26456         (help-fns--signature): Declare.
26458         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
26460 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
26462         New macro seq-let, providing destructuring support to seq.el
26463         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
26464         to `cl-destructuring-bind' but works on all sequence types supported
26465         by `seq.el'.  Bump version number to 1.6.
26466         * test/automated/seq-tests.el: Add tests for seq-let.
26467         * doc/lispref/sequences.texi: Add documentation for seq-let.
26469 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
26471         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
26473 2015-05-01  Glenn Morris  <rgm@gnu.org>
26475         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
26477 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
26479         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
26480         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
26481         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
26482         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
26483         (Bug#20445).
26485 2015-05-01  K. Handa  <handa@gnu.org>
26487         * lisp/international/mule-cmds.el (input-method-use-echo-area):
26488         Change :type to 'boolean.
26490 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26492         Start using proportional fonts in eww by default
26493         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
26494         it seems to work well.
26496         Fix links in tables in shr
26497         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
26498         makes (some) links in tables not work.
26500 2015-05-01  Jan D  <jan.h.d@swipnet.se>
26502         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
26504 2015-04-30  Glenn Morris  <rgm@gnu.org>
26506         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
26507         Update for 2015-02-08 change to indirect-function.
26509         * lisp/term/ns-win.el (ns-get-selection-internal):
26510         Remove declaration for function deleted 2014-10-21.
26512         * lisp/dom.el: Load subr-x when compiling, for when-let.
26514         Silence some compilation warnings
26515         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
26516         * lisp/emulation/cua-base.el (delete-active-region):
26517         * lisp/net/net-utils.el (w32-get-console-output-codepage):
26518         * lisp/term/ns-win.el (ns-own-selection-internal)
26519         (ns-disown-selection-internal, ns-selection-owner-p)
26520         (ns-selection-exists-p, ns-get-selection):
26521         Declare for compiler.
26523         Function declaration updates prompted by 'make check-declare'
26524         * lisp/emacs-lisp/package.el (lm-homepage):
26525         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
26526         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
26527         * lisp/gnus/mml.el (libxml-parse-html-region):
26528         * lisp/gnus/nnrss.el (libxml-parse-html-region):
26529         * lisp/net/eww.el (libxml-parse-html-region):
26530         * lisp/net/shr.el (libxml-parse-html-region):
26531         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
26532         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
26533         * lisp/vc/vc-git.el (vc-annotate-convert-time):
26534         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
26535         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
26536         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
26537         Update declaration.
26539         Remove compatibility code for 20-year old function renaming
26540         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
26541         Make it an obsolete alias.
26542         (idlwave-shell-filter): Change all uses to comint-output-filter.
26544 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
26546         Add ace-window face config
26547         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
26548         configuration.
26550 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
26552         Unclutter 'make doc' output a bit
26553         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
26554         Use make subst rather than sh IFS to split target string apart.
26555         This makes 'make' output easier to follow.
26557         Merge from gnulib
26558         * doc/misc/texinfo.tex: Update from gnulib.
26560 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26562         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
26563         (package-menu--print-info): Obsolete.
26564         (package-menu--print-info-simple): New function.
26565         (package-menu--refresh): Use it, simplify code, and improve
26566         performance.
26567         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
26568         Tiny performance improvement.
26570         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
26572 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
26574         Omit -Wstrict-overflow workaround in GCC 5
26575         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
26576         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
26578         Merge from gnulib
26579         This incorporates:
26580         2015-04-29 extern-inline: no need for workaround in GCC 5.1
26581         2015-04-26 file-has-acl: port to CentOS 6
26582         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
26584 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
26586         Set next-error-* in xref--xref-buffer-mode
26587         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
26588         Set `next-error-function' and `next-error-last-buffer'.
26589         (xref--next-error-function): New function.
26590         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
26592 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26594         python.el: Fix warnings on looking-back calls missing LIMIT
26595         * lisp/progmodes/python.el (python-shell-accept-process-output):
26596         Pass LIMIT arg to looking-back.
26598 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26600         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
26601         (package--download-and-read-archives): Use pushnew instead of
26602         append.  If something terrible happened during a previous
26603         download, simply refreshing should now make things work again.
26605 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
26607         Introduce etags-xref-find-definitions-tag-order
26608         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
26609         New variable.
26610         (etags--xref-find-definitions): Use it (bug#19468).
26612 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
26614         PATH- and completion-related fixes in Eshell on MS-Windows
26615         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
26616         MS-Windows, prepend "." to list of directories produced from PATH,
26617         as Windows always implicitly searches the current directory first.
26618         (eshell-force-execution): Make it have a non-nil default value on
26619         MS-Windows and MS-DOS.
26620         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
26621         eshell-force-execution is non-nil, complete on readable files and
26622         directories, not only executables.  When running on MS-Windows,
26623         prepend "." to list of directories produced from PATH, as Windows
26624         always implicitly searches the current directory first.
26626 2015-04-29  Sam Steingold  <sds@gnu.org>
26628         Bury RCIRC buffers when there is no activity
26629         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
26630         (rcirc-bury-buffers): New function.
26631         (rcirc-next-active-buffer): When there is no new activity, use
26632         `rcirc-bury-buffers' to hide all RCIRC buffers.
26634 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
26636         Fix DBUS query result parsing for secrets-search-items
26637         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
26638         parsing.  The function assumed that return value of the
26639         SearchItems method called on a collection is a list of two lists,
26640         however this is true only when no collection is specified.  GNOME
26641         had used to incorrectly return a list of two lists in both cases,
26642         but this was already fixed:
26643         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
26644         incorrect information in the secrets-search-items’ docstring.
26645         (Bug#20449)
26647 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26649         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
26650         Use `inhibit-message' instead of hiding the previous message
26651         with (message nil).
26653 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
26655         Remove the deprecated INTERNAL_FIELD macro by expanding it
26656         * src/lisp.h (INTERNAL_FIELD): Remove.
26657         (DEFVAR_KBOARD): Modify accordingly.
26658         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
26659         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
26660         * src/buffer.c (compact_buffer): Use BVAR.
26662 2015-04-29  Glenn Morris  <rgm@gnu.org>
26664         Replace an obsolete function alias
26665         * lisp/isearch.el (isearch-yank-x-selection):
26666         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
26667         (mouse-drag-secondary-moving):
26668         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
26669         Replace obsolete alias x-get-selection with gui-get-selection.
26671 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
26673         * lisp/mail/rmailsum.el: Use lexical-binding.
26675 2015-04-29  Glenn Morris  <rgm@gnu.org>
26677         * test/automated/package-test.el (package-test-update-archives-async):
26678         Skip test on hydra.nixos.org.
26680 2015-04-28  Glenn Morris  <rgm@gnu.org>
26682         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
26683         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
26684         (foldout-mouse-hide-or-exit): Use new names for outline functions.
26686         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
26687         Update for 2014-06-26 hideif.el change.
26689         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
26690         (rmail--decode-and-apply): New function.
26691         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
26693         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
26695 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26697         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
26698         (package-menu--refresh): Delegate obsolete-hiding to
26699         `package--remove-hidden'.
26700         (package--remove-hidden): Disregard high-priority package if it is
26701         older than the installed one.
26703 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
26705         Update source file encoding list
26706         Update admin/notes/unicode, along with coding system cookies in
26707         other files, so that the two match each other better.
26708         * admin/notes/unicode: lisp/language/ethio-util.el and
26709         lisp/language/ethiopic.el also use utf-8-emacs.
26710         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
26711         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
26712         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
26713         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
26714         * etc/refcards/sk-survival.tex:
26715         Add "coding: utf-8" so that this file is not mishandled in a
26716         Latin-1 or Big-5 locale.
26717         * lisp/international/robin.el, lisp/org/ox-ascii.el:
26718         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
26719         * lisp/language/ethio-util.el: Fix trailer.
26721 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
26723         Fix synchronous invocation of Ispell
26724         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
26725         value to ispell-process-directory before calling ispell-init-process.
26726         Don't call set-process-coding-system if ispell-async-processp is nil.
26727         (Bug#20448)
26729 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26731         * lisp/emacs-lisp/package.el: Skip space and comments in init file
26732         (package--ensure-init-file): Insert snippet at first
26733         non-whitespace non-comments line.  Respects local-vars at the top
26734         of the file.
26736 2015-04-28  Glenn Morris  <rgm@gnu.org>
26738         * lisp/mail/rmail.el (rmail-copy-headers):
26739         Handle rmail-nonignored-headers being nil.  (Bug#18878)
26741         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
26743         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
26744         Don't get confused by a bzrlib version mismatch warning.
26746 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
26748         Change default location of EUDC options file
26749         * etc/NEWS: Document change to EUDC options file's default location.
26750         * lisp/net/eudc-vars.el (eudc-options-file): Use
26751         `locate-user-emacs-file' to change default options file location.
26753 2015-04-27  Glenn Morris  <rgm@gnu.org>
26755         * test/automated/package-test.el (package-test-update-archives-async):
26756         Try to handle the test server script dying.
26758 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26760         * lisp/saveplace.el (save-place-mode): New minor mode.
26761         (save-place): Redefine as an obsolete alias.
26763         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
26764         * lisp/midnight.el: Use lexical-binding.
26765         (midnight-mode): Make it a proper minor mode.
26766         (midnight-buffer-display-time): Make arg non-optional.
26767         (midnight-find): Remove.
26768         (clean-buffer-list-kill-never-regexps)
26769         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
26770         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
26771         contain functions.
26772         (clean-buffer-list): Use cl-find.
26773         Allow clean-buffer-list-kill-never-regexps to contain functions.
26775 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
26777         Bump version of seq.el to 1.5
26778         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
26779         from seq-doseq.  Bump version number of seq.el.
26781 2015-04-27  Glenn Morris  <rgm@gnu.org>
26783         * lisp/mail/rmail.el (rmail-reply):
26784         Decode subject before matching "Re:" prefix.  (Bug#20396)
26786 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
26788         * lisp/emacs-lisp/package.el: Small improvements
26789         (package--with-work-buffer-async): More informative error.
26790         (package-install-user-selected-packages): Rename to
26791         `package-install-selected-packages'.
26793 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26795         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
26796         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
26797         (eieio--class-make): Remove leftover `tag'.
26799 2015-04-27  Glenn Morris  <rgm@gnu.org>
26801         * lisp/gnus/message.el (gnus-extract-address-components):
26802         Remove bogus declaration that was masking previous problem.
26804 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
26806         * lisp/gnus/message.el (message-insert-formatted-citation-line):
26807         Fix typo.  (Bug#20318)
26809 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26811         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
26813         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
26814         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
26815         the buffer in yet another frame.
26816         (reftex-toc-visit-location): Make sure toc-window has focus at the end
26817         when `final' is nil.
26818         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
26819         silence warnings.  Use `--' to clarify that it's internal.
26820         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
26821         (reftex-toc-promote): Clarify unused argument.
26822         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
26823         Add `reftex--' prefix.  Fix all users.
26824         (reftex-toc-promote-prepare): Use _ for dummy variable.
26825         (reftex-toc-restore-region): Rename `m.
26827 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
26829         Fix a typo in bibtex.el
26830         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
26831         last change.  (Bug#20429)
26833         Fix redisplay of frame after loading new fonts
26834         * src/xdisp.c (redisplay_internal): When retrying redisplay of
26835         a frame because new fonts were loaded, disable all redisplay
26836         optimizations on that frame by calling SET_FRAME_GARBAGED.
26837         (Bug#20410)
26839 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26841         * lisp/info.el (Info-menu): Properly provide the `default'
26842         (Bug#20391)
26844         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
26845         Catch errors from documentation (bug#20418).
26846         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
26848 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26850         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
26851         Remove redundant ":group 'package".
26853 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
26855         Fix a typo in rmail.el
26856         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
26857         last commit.  (Bug#20429)
26859 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
26861         Introduce xref-prompt-for-identifier
26862         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
26863         (xref--read-identifier): Use it
26864         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
26866 2015-04-26  João Távora  <joaotavora@gmail.com>
26868         `tex-insert-quote' after single `'' opens quotes instead of closing
26869         Without this, it's very hard to precede double quotes with the
26870         apostrophe character, i.e. insert the sequence '``
26871         (quote-backquote-backquote), commonly useful in portuguese, for
26872         instance.
26873         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
26874         preceding chars making `tex-insert-quote' be in the "opening" context.
26876 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
26878         Pass `id' to `completing-read' as def instead of initial input
26879         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
26880         `completing-read' as the default value instead of initial input
26881         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
26883 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
26885         Don't freeze with unreadable processes
26886         Don't freeze if an exiting process can't be read from.  (Bug#19860).
26887         This fixes a bug I introduced in
26888         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
26889         "* process.c: Add sanity checks for file descriptors."
26890         Dmitry Gutov did most of the legwork in finding the problem.
26891         * src/process.c (wait_reading_process_output):
26892         Treat non-running processes that can't be read from
26893         the same as other non-running processes.
26895 2015-04-25  Alan Mackenzie  <acm@muc.de>
26897         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
26898         * lisp/subr.el (remove-yank-excluded-properties): Put
26899         `with-silent-modifications' around only the last three lines of code.
26901 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26903         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
26904         (package--all-keywords): Deleted variable.
26906         * etc/NEWS: Document package-hiding functionality.
26908 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
26910         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
26912         Clarify the doc string of 'replace-regexp-in-string'
26913         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
26915         Improve doc string of 'insert-buffer-substring'
26916         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
26918         MS-Windows followup for the recent gnulib update
26919         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
26920         acl-internal.c.
26922 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
26924         Spelling fixes
26926         Merge from gnulib
26927         This incorporates:
26928         2015-04-24 file-has-acl: new module, split from acl
26929         2015-04-24 manywarnings: add GCC 5.1 warnings
26930         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
26931         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
26932         2015-04-15 acl: On Linux, check for acls without libacl
26933         2015-04-14 tempname: avoid unused parameter warnings (trivial)
26934         * lib/acl-internal.c: New file, from gnulib.
26935         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
26936         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
26937         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
26938         Update from gnulib.
26940         Port --enable-gcc-warnings to GCC 5.1 x86-64
26941         * lib-src/ebrowse.c (dump_sym):
26942         * lib-src/hexl.c (main):
26943         * src/ccl.c (ccl_driver):
26944         * src/character.c (string_escape_byte8):
26945         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
26946         * src/gnutls.c (Fgnutls_boot):
26947         * src/gtkutil.c (xg_check_special_colors):
26948         * src/image.c (x_build_heuristic_mask):
26949         * src/print.c (safe_debug_print, print_object):
26950         * src/term.c (produce_glyphless_glyph):
26951         * src/xdisp.c (get_next_display_element)
26952         (produce_glyphless_glyph):
26953         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
26954         Don't use a signed format to print an unsigned integer, or vice
26955         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
26956         * src/image.c (png_load_body, jpeg_load_body):
26957         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
26959 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
26961         Add new faces to tsdh-light-theme
26962         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
26963         definitions for Info-quoted, ace-jump-face-foreground,
26964         hl-paren-face, show-paren-match, and show-paren-mismatch.
26966 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
26968         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
26970 2015-04-24  Glenn Morris  <rgm@gnu.org>
26972         * build-aux/gitlog-to-emacslog:
26973         Use raw log format rather than wrapped one.
26975 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26977         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
26978         (seq-doseq): Fix out-of-scope binding.
26979         Don't call `seq-length at every iteration.
26980         Reduce `if's from 3 to 2 per iteration.
26981         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
26983 2015-04-24  Glenn Morris  <rgm@gnu.org>
26985         * lisp/textmodes/text-mode.el (text-mode-hook):
26986         Move text-mode-hook-identify to default.
26988         * lisp/mouse.el (minor-mode-menu-from-indicator):
26989         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
26991         * lisp/help-fns.el (describe-function): More type checking.
26992         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
26994         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
26995         (Bug#20325)
26997 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
26999         shr: strip leading whitespace when expanding URLs
27000         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
27002 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
27004         Clarify "co-authored" some more
27006         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
27008         Clarify doc strings of functions that search for properties
27009         * src/textprop.c (Fnext_char_property_change)
27010         (Fprevious_char_property_change)
27011         (Fnext_single_char_property_change)
27012         (Fprevious_single_char_property_change, Fnext_property_change)
27013         (Fnext_single_property_change, Fprevious_property_change)
27014         (Fprevious_single_property_change): Clarify doc strings wrt return
27015         value and the optional LIMIT argument.  (Bug#20411)
27017 2015-04-24  Glenn Morris  <rgm@gnu.org>
27019         * test/automated/message-mode-tests.el (message-mode-propertize):
27020         Handle non-writable HOME; eg on hydra.nixos.org.
27022 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
27024         Avoid starting threads by w32-shell-execute
27025         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
27026         local file names, before invoking ShellExecute.  (Bug#20220)
27028 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
27030         Fix following doc-links in `widget-documentation-link-action'
27031         * lisp/wid-edit.el (widget-documentation-link-action): Make
27032         following doc-links less simplistic (Bug#20398).
27034 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27036         Improve EUDC manual
27037         * doc/misc/eudc.texi (Troubleshooting):
27038         New LDAP troubleshooting subsection.
27040 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
27042         Omit needless "\ " after multibyte then newline
27043         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
27044         (print_object): When print-escape-multibyte is non-nil and a
27045         multibyte character is followed by a newline or formfeed, followed
27046         by a hex digit, don't output a needless "\ " before the hex digit.
27047         * test/automated/print-tests.el (print-hex-backslash): New test.
27049 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
27051         Add a new `inhibit-message' variable
27052         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
27053         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
27054         `inhibit_message' is non-zero.
27055         * etc/NEWS: Add an entry.
27056         * doc/lispref/display.texi: Add an entry for `inhibit-message',
27057         mention it in `message'.
27059 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
27061         Fix last fix in `display-buffer-record-window'.
27062         * lisp/window.el (display-buffer-record-window): Fix last fix.
27064 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
27066         Minor edits in CONTRIBUTE
27067         * CONTRIBUTE: Rearrange instructions about log messages.
27068         Use "Git" capitalized all over.
27069         Use 2 spaces between sentences.
27071 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
27073         * lisp/files.el (basic-save-buffer): Fix argument.
27075         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
27076         In case `(and (null custom-file) init-file-had-error)' do the same
27077         thing we'd do if `(null user-init-file)', which is to either error out
27078         or return nil.  This is in line with `custom-save-all' which would
27079         throw an error in that situation.  (Bug#20355)
27081         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
27082         (package-menu-hide-low-priority): New variable, see its doc.
27083         (package-archive-priorities): Update doc.
27084         (package-desc-priority): New function.
27085         (package-desc-priority-version): Use it.
27086         (package--remove-hidden): New function.
27087         (package-menu--refresh): Use it.
27089         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
27090         (package-menu--hide-obsolete): New variable.
27091         (package--remove-hidden): Use it.
27092         (package-menu-hide-obsolete): New interactive function to toggle
27093         the variable.
27094         (package--quick-help-keys): Document it.
27095         (package-menu-async): Add :version tag.
27096         (package-menu-mode-map): Bind package-menu-hide-obsolete.
27097         (package-desc-status): Indicate non-installed obsolete packages as
27098         avail-obso.
27099         (package-menu-mark-install): Allow installation of avail-obso.
27100         (package-menu--status-predicate): Sort avail-obso with available.
27102 2015-04-22  Alan Mackenzie  <acm@muc.de>
27104         On C-y, stop some text property entries being written into buffer-undo-list
27105         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
27106         `with-silent-modifications'.
27108 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
27110         In display-buffer-record-window record selected window if necessary
27111         * lisp/window.el (display-buffer-record-window): Store selected window
27112         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
27114 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
27116         Fix reftex-citation bug
27117         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
27118         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
27119         integration is enabled and there are no citations in the document
27120         so far.
27122 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
27124         Add or reset based on the presence of MERGE_HEAD
27125         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
27126         `vc-git-resolve-when-done' to `after-save-hook' in either case.
27127         (vc-git-conflicted-files): Add a TODO.
27128         (vc-git-resolve-when-done): Depending on the presence of
27129         MERGE_HEAD, either update the resolved file in the index, or
27130         remove it from there.  (Bug#20292)
27132 2015-04-21  Glenn Morris  <rgm@gnu.org>
27134         * lisp/custom.el (custom-declare-group): No need to purecopy
27135         custom-current-group-alist members following recent change to set
27136         it to nil before dumping.
27138         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
27139         (Bug#20399)
27141 2015-04-21  Daniel Colascione  <dancol@dancol.org>
27143         Unbreak no-op buffer save message
27144         * lisp/files.el (basic-save-buffer): Accept called-interactively as
27145         an argument instead of directly invoking called-interactively-p,
27146         which will always yield nil in that context.
27148 2015-04-21  Alan Mackenzie  <acm@muc.de>
27150         CC Mode: Do nothing in before/after-change-functions for text
27151         property changes
27152         Fixes bug#20266.
27153         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
27154         yank-handled-properties buffer local, and remove 'category from it.
27155         (c-called-from-text-property-change-p): New function.
27156         (c-before-change): Don't do anything if a call of the new function
27157         returns non-nil.
27158         (c-after-change): Don't do much if a call of the new function returns
27159         non-nil.
27160         (c-extend-after-change-region): Put changes to text property 'fontified
27161         inside c-save-buffer-state.
27163 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
27165         Fix byte-compiler warnings about looking-back
27166         * lisp/vc/log-view.el (log-view-end-of-defun-1):
27167         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
27168         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
27169         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
27170         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
27171         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
27172         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
27173         * lisp/org/org.el (org-insert-heading, org-sort-entries):
27174         * lisp/org/org-mouse.el (org-mouse-end-headline)
27175         (org-mouse-context-menu):
27176         * lisp/org/org-clock.el (org-clock-cancel):
27177         * lisp/man.el (Man-default-man-entry):
27178         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
27179         (rmail-ensure-blank-line):
27180         * lisp/mail/footnote.el (Footnote-delete-footnote):
27181         * lisp/mail/emacsbug.el (report-emacs-bug):
27182         * lisp/info.el (Info-follow-reference, Info-fontify-node):
27183         * lisp/info-look.el (info-lookup-guess-custom-symbol):
27184         * lisp/help-fns.el (help-fns--key-bindings):
27185         * lisp/files.el (hack-local-variables):
27186         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
27187         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
27188         (viper-complete-filename-or-exit):
27189         * lisp/emulation/viper-cmd.el (viper-backward-indent):
27190         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
27191         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
27192         * lisp/cus-edit.el (custom-face-edit-value-create):
27193         * lisp/calendar/todo-mode.el (todo-set-item-priority)
27194         (todo-filter-items-1, todo-convert-legacy-files)
27195         (todo-prefix-overlays): Add explicit second arg to looking-back.
27197 2015-04-20  Glenn Morris  <rgm@gnu.org>
27199         Avoid non-nil current-load-list at startup
27200         * src/process.c (init_process_emacs): Move Fprovide statement...
27201         (syms_of_process): ... to here.
27203         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
27205         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
27206         in emacs -Q.
27208 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
27210         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
27211         (Bug#20330)
27213 2015-04-20  Glenn Morris  <rgm@gnu.org>
27215         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
27217         Tweak exec-path in uninstalled case
27218         * src/callproc.c (init_callproc): If running uninstalled, do not
27219         include eventual installation libexec directory in exec-path.
27221 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
27223         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
27224         cache keywords.
27225         (package-menu-filter): Accept a list of keywords.
27226         (package--all-keywords): New variable to cache known keywords.
27227         (package-all-keywords): Populate it if necessary.
27228         (package-refresh-contents): Reset it.
27230         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
27231         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
27232         as special keywords which match agains package archive and status
27233         respectively.
27234         * etc/NEWS: Document it.
27236 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
27238         Describe and index "empty overlays".
27239         * doc/lispref/display.texi (Overlays): Improve indexing.
27240         (Managing Overlays): Describe "empty" overlays.
27241         (Overlay Properties, Finding Overlays): Add cross-reference to
27242         where empty overlays are described.
27244 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
27246         Spelling fixes
27248         Quote 'like this' in top-level files
27249         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
27250         Prefer to single-quote 'like this' (instead of the older style
27251         `like this').
27252         * configure.ac: Fix some space-before-tab problems that 'git commit'
27253         complained about.
27255         Use bool for boolean in textprop.c, undo.c
27256         * src/textprop.c (soft, hard): Now constants instead of macros.
27257         (validate_plist): Rewrite to avoid need for boolean local.
27258         (interval_has_all_properties, interval_has_some_properties)
27259         (interval_has_some_properties_list, add_properties)
27260         (remove_properties, get_char_property_and_overlay)
27261         (Fnext_single_char_property_change)
27262         (Fprevious_single_char_property_change, add_text_properties_1)
27263         (Fremove_text_properties, Fremove_list_of_text_properties)
27264         (copy_text_properties):
27265         * src/tparam.c (tparam1):
27266         * src/undo.c (record_change, record_property_change)
27267         (syms_of_undo):
27268         Use 'true' and 'false' for booleans.
27270 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
27272         * lisp/vc/vc-git.el (vc-git-find-file-hook):
27273         Call `smerge-start-session' even when dealing with a stash
27274         conflict (bug#20292).
27276 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
27278         Add option to eshell/clear to clear scrollback.
27279         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
27280         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
27281         scrollback contents are cleared.
27282         * etc/NEWS: Describe change.
27283         * doc/misc/eshell.texi: Add entry for `clear'.
27285 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
27287         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
27288         where either will do.
27290 2015-04-19  Steve Purcell  <steve@sanityinc.com>
27292         Assume package archive-contents are UTF8-encoded
27293         * lisp/emacs-lisp/package.el (package--read-archive-file):
27294         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
27295         downloaded and cached archive-contents files, so that non-ASCII
27296         characters in package descriptions are displayed correctly in the
27297         `list-packages' menu.  (Bug#20231)
27299 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
27301         Abort when looking at stashed changes
27302         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
27303         stashed changes (bug#20292).
27305 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
27307         Refactor low-level printing for simplicity
27308         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
27309         PRINTPREPARE; doable now that we assume C99.  All callers changed.
27310         (PRINTCHAR): Remove, as it adds more mystery than clarity.
27311         All callers changed.
27312         (strout): Assume that caller computes length.  All callers changed.
27313         (print_c_string): New function.
27314         (write_string, write_string_1): Compute length instead of asking
27315         the caller to compute it.  All callers changed.
27316         (write_string): Simplify by using write_string_1.
27317         (write_string_1): Simplify by using print_c_string.
27318         (Fterpri): Compute default val more clearly.
27319         (Fprin1_to_string, print_object):
27320         Assume C99 to avoid unnecessary nesting.
27321         (print_object): Prefer print_c_string to multiple printchar, or
27322         to calling strout with -1 length.  Coalesce into sprintf when
27323         this is easy.
27325 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
27327         Prefer "Bug#1234" in commit messages (Bug#20325)
27328         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
27329         as this isn't useful for Git.
27330         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
27332 2015-04-18  Glenn Morris  <rgm@gnu.org>
27334         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
27335         (Bug#19506)
27337 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
27339         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
27340         Do not use `chomp' as a function.  (Bug#19505)
27342 2015-04-18  Glenn Morris  <rgm@gnu.org>
27344         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
27346         * doc/emacs/misc.texi (Sorting): Small edit.
27347         (Bug#19896)
27349         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
27351 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
27353         css-mode.el: Support multi-line comment filling
27354         (Bug#20256)
27355         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
27356         comment filling.
27357         (css-adaptive-fill): New function.
27358         (css-mode): Set `adaptive-fill-function'.
27359         (scss-mode): Set `comment-continue'.
27361 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
27363         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
27364         Better error messages.
27366 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
27368         Minor improvements in Bulgarian input methods
27369         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
27370         Replace U+042C with U+045D, as the former character is not used in
27371         the modern Bulgarian language.
27372         (Bug#20350)
27374 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27376         Improve EUDC manual
27377         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
27378         authentication schemes.  Add index items.  Shorten example server
27379         name.
27381 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
27383         Don't show both feature and function with the same name
27384         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
27385         Don't show both feature and function with the same name.
27387         (elisp--xref-identifier-location): Skip variable, if it's also
27388         a function
27389         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
27390         Avoid returning both the variable and the function for the same
27391         minor mode.
27393 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
27395         Fix fontification of keywords clobbered by the prompt
27396         * lisp/comint.el (comint-output-filter): Remove the uses of
27397         with-silent-modifications I introduced as part of the last change.
27398         This fixes, e.g., erratically missing highlighting when running
27399         ./configure --help; ./configure in a shell-mode buffer with
27400         compilation-shell-minor-mode turned on.
27402 2015-04-17  Glenn Morris  <rgm@gnu.org>
27404         * admin/authors.el (authors-valid-file-names)
27405         (authors-renamed-files-alist): Additions.
27407 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
27409         * lisp/indent.el (indent-region): Don't deactivate the mark.
27410         (Bug#20357)
27412 2015-04-17  Sam Steingold  <sds@gnu.org>
27414         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
27416 2015-04-16  Leo Liu  <sdl.web@gmail.com>
27418         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
27420 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27422         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
27423         Don't use `pcomplete' any more.
27425 2015-04-16  Glenn Morris  <rgm@gnu.org>
27427         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
27429 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
27431         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
27432         * configure.ac (LIBJPEG): Leave it empty for MinGW.
27434 2015-04-16  Glenn Morris  <rgm@gnu.org>
27436         * lisp/replace.el (query-replace-from-to-separator):
27437         Delay initialization to avoid rogue setting after startup.
27439 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
27441         Pre-4.6 GCC succeeds with unknown option
27442         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
27443         (Bug#20338)
27445 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27447         '[:graph:]' now excludes whitespace, not just ' '
27448         * doc/lispref/searching.texi (Char Classes):
27449         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
27450         sans whitespace (not sans space).
27451         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
27452         not just space.
27453         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
27455 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27457         * lisp/subr.el (substitute-key-definition-key, special-form-p)
27458         (macrop): Drop deprecated second arg to indirect-function.
27459         (looking-back): Make the second arg non-optional.
27461         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
27462         command is actually sent to the shell.
27464 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27466         Port jpeg configuration to Solaris 10 with Sun C
27467         * configure.ac: Check for jpeglib 6b by trying to link it, instead
27468         of relying on cpp magic that has problems in practice.  Check for
27469         both jpeglib.h and jerror.h features.  Remove special case for
27470         mingw32, which should no longer be needed (and if it were needed,
27471         should now be addressable by hotwiring emacs_cv_jpeglib).
27472         (Bug#20332)
27474 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27476         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
27477         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
27478         Move to elisp-mode.el.
27479         (lisp-mode-variables): (Re)move elisp-specific settings.
27480         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
27481         from lisp-mode-variables.
27482         (elisp--font-lock-flush-elisp-buffers): New function, moved from
27483         lisp-mode.el.
27485         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
27486         Avoid pathological slowdown at top-level in large file.
27488 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27490         Standardize names of ChangeLog history files
27491         Suggested by Glenn Morris in:
27492         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
27493         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
27494         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
27495         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
27496         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
27497         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
27498         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
27499         Remove.
27501         Split top-level entries into pre- and post-April 7
27502         This more clearly distingiushes pre-April-7 ChangeLog entries (which
27503         are for top-level files only) from post-April-7 entries (which are
27504         about files at all levels.  Problem reported by Glenn Morris in:
27505         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
27506         * ChangeLog.1: Move post-April-7 entries from here ...
27507         * ChangeLog.2: ... to this new file.
27508         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
27510 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27512         Fix recent cus-start changes that added customize-rogues
27513         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
27514         vars early.
27515         * lisp/loadup.el ("cus-start"): Move to the end to reduce
27516         customize-rogue.
27518 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
27520         Define cl-concatenate as an alias to seq-concatenate
27521         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
27522           code by making cl-concatenate an alias to seq-concatenate.
27524 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27526         * src/lread.c (intern_1): Make sure we'd find the symbol we add
27527         (Bug#20334)
27528         * src/xfaces.c (resolve_face_name): Don't use `intern' with
27529         Lisp_Strings.
27531 2015-04-15  Glenn Morris  <rgm@gnu.org>
27533         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
27535 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
27537         Clean up gnus-uu saving code slightly
27538         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
27539         save-restriction/widen calls make more sense.
27541 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27543         Make [:graph:] act like [:print:] sans space
27544         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
27545         [:graph:] so that it matches everything that [:print:] does,
27546         except for space.
27547         * doc/lispref/searching.texi (Char Classes):
27548         * etc/NEWS:
27549         * lisp/emacs-lisp/rx.el (rx):
27550         Document [:graph:] to be [:print:] sans ' '.
27551         * src/character.c, src/character.h (graphicp): New function.
27552         * src/regex.c (ISGRAPH) [emacs]: Use it.
27553         (BIT_GRAPH): New macro.
27554         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
27555         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
27556         Return BIT_GRAPH for RECC_GRAPH.
27557         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
27558         and ISPRINT if BIT_PRINT.
27560 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
27562         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
27563         Don't use call-next-method in a cl-defmethod.
27565         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
27566         (eieio--class-p): Remove, provided by cl-defstruct.
27568 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
27570         Add seq-intersection and seq-difference to the seq library
27571         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
27572         New functions.
27573         * test/automated/seq-tests.el: Add tests for seq-intersection and
27574         seq-difference.
27575         * doc/lispref/sequences.texi: Add documentation for seq-intersection
27576         and seq-difference.
27578 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
27580         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
27581         to avoid leaking internals.
27583 2015-04-14  Sam Steingold  <sds@gnu.org>
27585         package--ensure-init-file: widen requires save-restriction
27587 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
27589         Improve the commit-msg Git hook for unibyte environments
27590         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
27591         in unibyte environments.  (Suggested by Paul Eggert
27592         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
27593         [:print:], based on UTF-8 sequences of the unprintable characters.
27595         Describe problems with cursor caused by Windows Magnifier
27596         * etc/PROBLEMS: Describe the problem with cursor shape on
27597         MS-Windows due to Windows Magnifier.
27598         (Bug#20271)
27600         Make [:print:] support non-ASCII characters correctly
27601         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
27602         (BIT_PRINT): New bit mask.
27603         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
27604         * src/character.c (printablep): New function.
27605         * src/character.h (printablep): Add prototype.
27606         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
27607         of 'print', 'alnum', and 'alphabetic'.
27608         * doc/lispref/searching.texi (Char Classes): Document the new
27609         behavior of [:print:].
27610         * etc/NEWS: Mention the new behavior of [:print:].
27612         Assign correct general-category and names to surrogates
27613         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
27614         surrogates.  This avoids assigning them the default
27615         general-category of 'Cn', i.e. unassigned codepoints.
27616         (unidata-get-name): Give surrogates synthetic names.
27618 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
27620         Assume C89 offsetof in xterm.c, xlwmenu.c
27621         * lwlib/xlwmenu.c (offset):
27622         * src/xterm.c (cvt_string_to_pixel_args):
27623         Use offsetof, not XtOffset.
27625 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
27627         Assume C89 offsetof in widget.c
27628         * src/widget.c (XtOffset): Remove; no longer needed.
27629         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
27631         Fix think-o in previous patch
27632         * src/window.c (count_windows, get_leaf_windows):
27633         Don't optimize count_windows incorrectly.
27635 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
27637         Avoid some int overflows in window.c
27638         * src/print.c (print_object):
27639         * src/window.c (sequence_number):
27640         * src/window.h (struct window.sequence_number):
27641         Don't assume window sequence number fits in int.
27642         * src/window.c (window_select_count):
27643         * src/window.h (struct window.use_time, window_select_count):
27644         Don't assume window use time fits in int.
27645         * src/window.c (Fsplit_window_internal):
27646         Don't assume user-supplied integer, or sum, fits in int.
27647         (Fset_window_configuration, count_windows, get_leaf_windows)
27648         (save_window_save, Fcurrent_window_configuration):
27649         Use ptrdiff_t for object counts.
27650         (Fset_window_configuration): Omit unused local 'n'.
27651         (count_windows): Simplify by writing in terms of get_leaf_windows.
27652         (get_leaf_windows): Don't store through FLAT if it's null.
27653         (extract_dimension): New static function.
27654         (set_window_margins, set_window_fringes, set_window_scroll_bars):
27655         Use it to avoid undefined behavior when converting user-supplied
27656         integer to 'int'.
27658 2015-04-13  Glenn Morris  <rgm@gnu.org>
27660         Minor doc copyedits
27661         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
27662         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
27664 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
27666         [Gnus] Catch the invalid-operation that idna.el will issue
27667         * lisp/gnus/gnus-art.el (gnus-use-idna):
27668         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
27669         * lisp/gnus/message.el (message-use-idna):
27670         Catch the invalid-operation that idna.el will issue.
27672 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
27674         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
27676 2015-04-13  Sam Steingold  <sds@gnu.org>
27678         package--ensure-init-file: widen before looking for
27679         "(package-initialize)"
27681 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
27683         Change diff-switches default to `-u' (Bug#20290)
27684         * doc/emacs/files.texi (Comparing Files): Document the new default
27685         value of `diff-switches'.
27686         * doc/emacs/trouble.texi (Sending Patches): Document the preference
27687         for unified diff format.  Escape the plus in the suggested `-F' regexp
27688         value.
27689         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
27691 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27693         (gnus-group--setup-tool-bar-update): Fix last change
27694         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
27695         cursor-sensor-functions should be a list of functions.
27697 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
27699         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
27700         Use gmm-called-interactively-p.
27702 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27704         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
27705         (Bug#20321)
27706         * lisp/cus-start.el (read-buffer-function): Don't advertise
27707         iswitchb-read-buffer any more.
27708         (iswitchb): Don't tweak this obsolete group any more.
27710 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
27712         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
27714         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
27715         Adding a string after a constructor's argument list will use
27716         that string as the constructor function docstring.  If this string
27717         is absent but the struct itself was given a docstring, use that as
27718         the constructor's docstring.
27719         Fixes bug#17284.
27721 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27723         Deprecate `intangible' and `point-entered' properties
27724         * lisp/emacs-lisp/cursor-sensor.el: New file.
27725         * lisp/simple.el (pre-redisplay-functions): New hook.
27726         (redisplay--pre-redisplay-functions): New function.
27727         (pre-redisplay-function): Use it.
27728         (minibuffer-avoid-prompt): Mark obsolete.
27729         (redisplay--update-region-highlight): Adapt it to work as a function on
27730         pre-redisplay-functions.
27731         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
27732         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
27733         than point-entered to make the prompt intangible.
27734         * lisp/forms.el: Move `provide' calls to the end.
27735         (forms-mode): Don't use `run-hooks' on a local var.
27736         (forms--make-format, forms--make-format-elt-using-text-properties):
27737         Use cursor-intangible rather than `intangible'.
27738         (forms-mode): Enable cursor-intangible-mode.
27739         * lisp/isearch.el (isearch-mode): Use defvar-local.
27740         (cursor-sensor-inhibit): Declare.
27741         (isearch-mode): Set cursor-sensor-inhibit.
27742         (isearch-done): Set it back.
27743         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
27744         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
27745         any more.
27746         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
27747         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
27748         Add Edebug spec.
27749         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
27750         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
27751         inhibit-point-motion-hooks any more.
27752         (ses--cell-at-pos, ses--curcell): New functions, extracted from
27753         ses-set-curcell.
27754         (ses-set-curcell): Use them.
27755         (ses-print-cell, ses-setup): Use cursor-intangible instead of
27756         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
27757         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
27758         Use ses--cell-at-pos.
27759         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
27760         extracted from ses-command-hook.  Make them work with multiple windows
27761         displaying the same buffer.
27762         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
27763         Enable cursor-intangible-mode.
27764         (ses-command-hook): Remove cell highlight and mode-line update code.
27765         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
27766         Update for new name of text-property holding the cell name.
27767         (ses-rename-cell): Don't mess with mode-line-process.
27768         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
27769         cursor-sensor-functions property instead of point-entered.
27770         (erc-insert-timestamp-right, erc-format-timestamp):
27771         Use cursor-intangible rather than `intangible'.
27772         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
27773         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
27774         cursor-sensor-mode if needed.
27775         (erc-echo-timestamp): Adapt to calling convention of
27776         cursor-sensor-functions.
27777         (erc-insert-timestamp-right): Remove unused vars `current-window' and
27778         `indent'.
27779         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
27780         (gnus-update-group-mark-positions): Remove unused `topic' var.
27781         (gnus-group-insert-group-line): Remove unused var `header'.
27782         (gnus-group--setup-tool-bar-update): New function.
27783         (gnus-group-insert-group-line): Use it.
27784         (gnus-group-update-eval-form): Declare local
27785         dynamically-bound variables.
27786         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
27787         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
27788         (gnus-group-prepare-topics, gnus-topic-update-topic)
27789         (gnus-topic-change-level, gnus-topic-catchup-articles)
27790         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
27791         Use inhibit-read-only.
27792         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
27793         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
27794         * lisp/textmodes/reftex-index.el (reftex-display-index):
27795         Use cursor-intangible-mode if available.
27796         (reftex-index-post-command-hook): Check cursor-intangible.
27797         * lisp/textmodes/reftex-toc.el (reftex-toc):
27798         Use cursor-intangible-mode if available.
27799         (reftex-toc-recenter, reftex-toc-post-command-hook):
27800         Check cursor-intangible.
27801         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
27802         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
27803         (sgml-tags-invisible): Use with-silent-modifications and
27804         inhibit-read-only.  Enable cursor-sensor-mode.
27805         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
27806         calling convention of cursor-sensor-functions.
27807         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
27808         (table-point-entered-cell-hook, table-point-left-cell-hook):
27809         Don't autoload.
27810         (table-cell-entered-state): Remove var.
27811         (table--put-cell-point-entered/left-property)
27812         (table--remove-cell-properties):
27813         Use cursor-sensor-functions rather than point-entered/left.
27814         (table--point-entered/left-cell-function): Merge
27815         table--point-entered-cell-function and table--point-left-cell-function
27816         and adjust to calling convention of cursor-sensor-functions.
27818         Update ldef-boots.el
27820         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
27822         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
27824         Collapse successive char deletions in the undo log
27825         * src/cmds.c (remove_excessive_undo_boundaries): New function,
27826         extracted from Fself_insert_command.
27827         (Fdelete_char, Fself_insert_command): Use it.
27828         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
27829         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
27831         xterm and OSC 52: Add NEWS entry, and tweak the code
27832         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
27833         to top-level.
27834         (terminal-init-xterm-activate-set-selection): Set a terminal property.
27835         (xterm--set-selection): Use it instead of checking the value of
27836         `terminal-initted'.  Don't use string-bytes.
27838 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
27840         xterm.el: Implement OSC-52 functionality for setting the X selection
27841         * lisp/term/xterm.el (xterm-max-cut-length): New var.
27842         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
27843         New funs.
27844         (terminal-init-xterm, xterm--version-handler): Use them.
27846 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27848         Remove left over code from when we used an obsolete/loaddefs.el file
27849         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
27850         when we used an obsolete/loaddefs.el file.
27852         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
27853         (semanticdb-without-unloaded-file-searches): Use declare.
27854         (semantic-fw-add-edebug-spec): Remove.
27856         * lisp/completion.el (completion-lisp-mode-hook):
27857         Use completion-separator-chars rather than local key binding.
27859         * src/*.c: Set deactivate_mark buffer-locally
27860         (Bug#20260)
27861         * src/insdel.c (prepare_to_modify_buffer_1):
27862         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
27863         buffer-locally.
27865 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27867         python.el: Keep symmetry on sexp navigation with parens
27868         (Bug#19954)
27869         * lisp/progmodes/python.el
27870         (python-nav--forward-sexp): Add argument skip-parens-p.
27871         (python-nav-forward-sexp, python-nav-backward-sexp)
27872         (python-nav-forward-sexp-safe)
27873         (python-nav-backward-sexp-safe): Use it.
27874         * test/automated/python-tests.el
27875         (python-nav-forward-sexp-1): Fix test.
27877 2015-04-12  João Távora  <joaotavora@gmail.com>
27879         Don't use `setq-local' in Gnus code
27880         This might break upstream builds with older Emacsen
27881         * lisp/gnus/message.el (message-mode): Use `set' and
27882         `make-local-variable' instead of `setq-local'.
27884 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
27886         Update Makefile.in's .PHONY dependencies
27887         * Makefile.in (change-history-commit, master-branch-is-current)
27888         (no-ChangeLog): Now phony.
27890         Remove configure's --with-mmdf option
27891         * configure.ac (MAIL_USE_MMDF): Remove.
27892         * etc/NEWS: Document this.
27893         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
27894         (Bug#20308)
27896         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
27897         That way, 'make install' won't think it's a man page.
27898         Reported by Ashish SHUKLA in:
27899         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
27901         Improve 'make change-history' prereq tests
27902         * Makefile.in (gen_origin): Fix to match what's in the master branch.
27903         (no-ChangeLog, master-branch-is-current): New rules.
27904         (change-history): Depend on them, to avoid similar future problems.
27905         Escape the local-variables string to pacify Emacs when editing
27906         Makefile.in.
27908 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
27910         * test/automated/package-test.el (with-package-test):
27911         Kill Packages buffer.
27913         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
27914         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
27915         "Upgrade" last, and use capitalized instead of all-caps.
27917         * lisp/emacs-lisp/package.el: Completely silence async operations.
27918         (package--make-autoloads-and-stuff): Silence autoloads.
27919         (package--save-selected-packages): New function, silences
27920         `customize-save-variable'.
27921         (package--user-selected-p, package-install-from-buffer)
27922         (package-delete, package-install): Use it.
27923         (package-install-from-archive)
27924         (package-menu--perform-transaction): Silence.
27925         (package-menu-execute): Feedback when operation starts.
27927         Use delay-mode-hooks when visiting the init-file
27928         * lisp/emacs-lisp/package.el (package--ensure-init-file):
27929         delay-mode-hooks.
27930         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
27932         * lisp/files.el: Only message when saving if save-silently is nil.
27933         (save-silently): New variable.
27934         (files--message): New function.
27935         (find-file-noselect, save-buffer, basic-save-buffer)
27936         (basic-save-buffer-2, save-some-buffers, not-modified)
27937         (append-to-file): Use them.
27939 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
27941         Support debug declarations in pcase macros
27942         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
27943         (pcase-UPAT): Use it.  Remove "`".
27944         (pcase--edebug-match-macro): New function.
27945         (pcase-defmacro): Support debug declarations.
27946         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
27947         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
27948         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
27949         Add debug declaration.
27951         pcase.el: Edebug support for `app' and vector patterns
27952         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
27953         (pcase-UPAT): Use it.  Support `app' patterns.
27954         (pcase-QPAT): Support vector patterns.
27956         edebug.el: Disambiguate vector specifications
27957         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
27958         `(vector ...)' as a vector specification, not as a sublist.
27960         (gnus-summary-refer-thread): Don't clobber unread articles
27961         This fixes a bug where `A T' causes "random" articles to become marked
27962         as read.
27963         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
27964         gnus-newsgroup-unreads remains sorted.
27966         mouse-sel.el: Fix mouse-sel-get-selection-function
27967         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
27968         Use gui--last-selected-text-primary instead of no longer existing
27969         gui-last-selected-text.
27971         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
27973         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
27975 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
27977         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
27979         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
27980         right buffer.
27982         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
27983         (byte-compile--interactive): New var.
27984         (byte-compile--message): New function.
27985         (byte-compile-log-1, byte-force-recompile)
27986         (byte-recompile-directory, byte-recompile-file)
27987         (byte-compile-file, compile-defun)
27988         (byte-compile-file-form-defmumble, byte-compile)
27989         (byte-compile-file-form-defalias, display-call-tree): Use it.
27991         * lisp/files.el: Don't message when nothing happened.
27992         (save-some-buffers, basic-save-buffer): Before messaging to say
27993         "nothing was saved" check if (called-interactively-p 'any).
27995 2015-04-12  João Távora  <joaotavora@gmail.com>
27997         Summary: Improve sexp-based movement in message-mode
27998         Works by giving citations and smileys a different syntax.  This helps
27999         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
28000         sexp-based movement.
28001         * lisp/gnus/message.el (message--syntax-propertize): New function.
28002         (message-mode): Set syntax-related vars.
28003         (message-smileys): New variable.
28004         * test/automated/message-mode-tests.el: New file
28006 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
28008         Use bool for boolean in window.c
28009         * src/window.c: Omit unnecessary static function decls.
28010         (adjust_window_count, select_window, Fselect_window)
28011         (window_body_width, Fwindow_body_height, Fwindow_body_width)
28012         (set_window_hscroll, check_window_containing, Fwindow_at)
28013         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
28014         (unshow_buffer, replace_window, recombine_windows)
28015         (add_window_to_list, candidate_window_p, next_window)
28016         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
28017         (Fget_buffer_window, Fdelete_other_windows_internal)
28018         (replace_buffer_in_windows_safely, set_window_buffer)
28019         (Fset_window_buffer, Fforce_window_update)
28020         (temp_output_buffer_show, make_parent_window)
28021         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
28022         (resize_frame_windows, Fsplit_window_internal)
28023         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
28024         (Fresize_mini_window_internal, mark_window_cursors_off)
28025         (window_scroll, window_scroll_pixel_based)
28026         (window_scroll_line_based, scroll_command, Fscroll_other_window)
28027         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
28028         (Fmove_to_window_line, Fset_window_configuration)
28029         (delete_all_child_windows, apply_window_adjustment)
28030         (set_window_fringes, set_window_scroll_bars)
28031         (Fset_window_vscroll, foreach_window, foreach_window_1)
28032         (compare_window_configurations, Fcompare_window_configurations):
28033         Prefer 'bool', 'true', and 'false' for booleans.
28034         * src/window.h (WINDOW_MODE_LINE_LINES)
28035         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
28037 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
28039         Speed up byte-compilation and autoload generation by avoiding mode-hooks
28040         This prevents emacs-lisp-mode-hook from being run everytime an
28041         autoload file is generated, which can account for a fraction of
28042         package installation time depending on the hooks the user has
28043         configured.
28044         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
28045         * lisp/emacs-lisp/autoload.el (autoload-find-file)
28046         (autoload-find-generated-file): Use delay-mode-hooks.
28048         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
28049         (package-menu-refresh): Respect async and do new package checking.
28050         (list-packages): Use `package-menu-refresh' instead of repeating code.
28052         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
28053         (package--quick-help-keys): New variable.
28054         (package--prettify-quick-help-key): New function.
28055         (package-menu-quick-help): Use it.
28057         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
28058         (package--build-compatibility-table): Require finder.
28060         * test/automated/package-test.el: Fix new test.
28062         * lisp/emacs-lisp/package.el: Silence async operations.
28063         (package--silence): New variable.
28064         (package--message): New function.
28065         (package-import-keyring, package-refresh-contents)
28066         (package-compute-transaction, package-install, package-delete)
28067         (package-menu--perform-transaction, package-menu-execute): Use it.
28069         * test/automated/package-test.el: Test async functionality.
28070         (package-test-update-archives-async): New test.
28072 2015-04-11  Daiki Ueno  <ueno@gnu.org>
28074         Utilize `make-process' in epg.el
28075         * lisp/epg.el (epg-error-output): Abolish.
28076         (epg-context): New slot `error-buffer'.
28077         (epg--start): Use `make-process' and `make-pipe-process'.
28078         (epg--process-filter): Remove code separating stderr from stdout.
28079         (epg-wait-for-completion): Simplify `error-output' handling.
28080         (epg-reset): Dispose error buffer.
28082 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
28084         * .gitignore: Ignore doc temps and outputs.
28086         Port commit-msg to MSYS Bash+Gawk
28087         See Eli Zaretskii in:
28088         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
28089         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
28090         (cent_sign, print_at_sign, at_sign): Revert previous change.
28091         (print_at_sign): Prepend "BEGIN".
28092         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
28094         Port commit-msg to broken MS-Windows shell
28095         * build-aux/git-hooks/commit-msg (cent_sign):
28096         Just use UTF-8 here rather than ASCII + printf, as the latter fails
28097         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
28098         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
28100 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
28102         Support GnuTLS v3.4 and later on MS-Windows
28103         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
28104         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
28105         GnuTLS DLL to load according to value of libgnutls-version.
28106         (Bug#20294)
28108 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
28110         Minor quoting etc. fixes to misc manuals
28111         Fix some minor quoting and spacing issues.  Distinguish more
28112         clearly among grave accent and apostrophe (which are ASCII) and
28113         single quote (which is not).  Prefer the standard terms
28114         "apostrophe" and "grave accent" to alternative names that can be
28115         confusing.  Use apostrophes to single-quote ASCII text.
28116         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
28117         rather than approximating it in ASCII with grave accent.
28119 2015-04-11  Daiki Ueno  <ueno@gnu.org>
28121         Respect more keyword args in `make-process'
28122         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
28123         keywords as documented.
28125 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
28127         Extract ChangeLog entries when committing a directory
28128         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
28129         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
28130         Add a FIXME comment.
28131         (log-edit-changelog-entries): Extract from
28132         `log-edit-changelog-entries', handle FILE being a directory
28133         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
28135 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
28137         Fix problems found by --enable-gcc-warnings
28138         * src/process.c (create_process, Fmake_pipe_process)
28139         (Fmake_network_process): Omit unused locals.
28141         Fix commit-msg to handle scissors lines
28142         * build-aux/git-hooks/commit-msg:
28143         Ignore every line after a scissors line, such as a line generated
28144         by 'git commit -v'.  Problem reported by Johan Bockgård in:
28145         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
28147         port commit-msg to Gawk 3.0.4 (1999)
28148         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
28149         (print_at_sign, at_sign): New vars.  Use them to avoid problems
28150         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
28151         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
28153         Have commit-msg report commit failure
28154         * build-aux/git-hooks/commit-msg: If the commit is aborted,
28155         say so.  Simplify by doing this at the end.  Problem reported
28156         by Eli Zaretskii in:
28157         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
28159 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
28161         Clean up LDAP Configuration section of EUDC manual
28162         * doc/misc/eudc.texi: Combine indices.
28163         (LDAP Configuration): Use command markup.  Add index entries.
28164         Change formatting.  Wrap long lines.  Add noindent markup.
28166 2015-04-10  Daiki Ueno  <ueno@gnu.org>
28168         Add facility to collect stderr of async subprocess
28169         * src/w32.h (register_aux_fd): New function declaration.
28170         * src/w32.c (register_aux_fd): New function.
28171         * src/process.h (struct Lisp_Process): New member stderrproc.
28172         * src/process.c (PIPECONN_P): New macro.
28173         (PIPECONN1_P): New macro.
28174         (Fdelete_process, Fprocess_status, Fset_process_buffer)
28175         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
28176         (Fcontinue_process): Handle pipe process specially.
28177         (create_process): Respect p->stderrproc.
28178         (Fmake_pipe_process): New function.
28179         (Fmake_process): Add new keyword argument :stderr.
28180         (wait_reading_process_output): Specially handle a pipe process when
28181         it gets an EOF.
28182         (syms_of_process): Register Qpipe and Smake_pipe_process.
28183         * doc/lispref/processes.texi (Asynchronous Processes): Document
28184         `make-pipe-process' and `:stderr' keyword of `make-process'.
28185         * lisp/subr.el (start-process): Suggest to use `make-process' handle
28186         standard error separately.
28187         * test/automated/process-tests.el (process-test-stderr-buffer)
28188         (process-test-stderr-filter): New tests.
28189         * etc/NEWS: Mention new process type `pipe' and its usage with the
28190         `:stderr' keyword of `make-process'.
28192 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
28194         Minor quoting etc. fixes to lispref manual
28195         * doc/lispref/tips.texi (Documentation Tips):
28196         Distinguish more clearly among grave accent, apostrophe,
28197         and single quote.
28198         * doc/lispref/README, doc/lispref/buffers.texi:
28199         * doc/lispref/commands.texi, doc/lispref/control.texi:
28200         * doc/lispref/customize.texi, doc/lispref/display.texi:
28201         * doc/lispref/elisp.texi, doc/lispref/files.texi:
28202         * doc/lispref/frames.texi, doc/lispref/hash.texi:
28203         * doc/lispref/help.texi, doc/lispref/internals.texi:
28204         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
28205         * doc/lispref/markers.texi, doc/lispref/modes.texi:
28206         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
28207         * doc/lispref/os.texi, doc/lispref/positions.texi:
28208         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
28209         * doc/lispref/text.texi, doc/lispref/tips.texi:
28210         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
28211         Use American-style double quoting in ordinary text,
28212         and quote 'like this' when single-quoting in ASCII text.
28213         Also, fix some minor spacing issues.
28215 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
28217         Handle symlinked test directory in tramp-tests.el
28218         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
28219         (tramp--test-check-files): Use `file-truename' for directories.
28221 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
28223         Fix 'recenter' when visual-line-mode is turned on
28224         * src/window.c (Frecenter): Use the same code for GUI and TTY
28225         frames alike; use vmotion only for "initial" frames.  This is
28226         because vmotion doesn't support visual-line-mode.  Rewrite the
28227         'iarg >= 0' case to use move_it_* functions instead of using
28228         vmotion, for the same reason.  Fix the clipping of the argument
28229         value to support scroll-margin in all cases and avoid unwarranted
28230         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
28231         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
28232         which see.
28234 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
28236         * lisp/abbrev.el (define-abbrev-table): Refine last change.
28238         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
28239         use of c[ad]+r", so as to keep the "cl-" prefix on all
28240         cl-lib definitions.
28242         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
28243         Use inhibit-point-motion-hooks.
28245         * lisp/cedet/semantic: Remove some dead code.
28246         * lisp/cedet/semantic/util-modes.el
28247         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
28248         any more.
28249         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
28250         not supported any more.
28251         (semantic-safe): Use `declare'.
28252         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
28253         (semantic-tag-intangible-p): Remove unused functions.
28254         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
28255         Remove unused function.
28257         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
28258         (gnus-article-hide-text, gnus-article-unhide-text)
28259         (gnus-article-unhide-text-type): Remove special handling of
28260         `intangible' since that property is not used any more.
28261         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
28263 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
28265         Use the VC root in `log-edit-listfun'
28266         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
28267         `log-edit-listfun'.
28269 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
28271         Fix description of Unix time, mention new function.
28272         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
28273         Unix time.
28274         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
28275         (Basic Operations on Units): Mention `calc-convert-exact-units'.
28277 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
28279         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
28281 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
28283         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
28284         Don't add newline after the last entry.
28286 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
28288         css-mode.el: Add "not" pseudo-class
28289         (Bug#20267)
28290         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
28291         list of CSS pseudo-classes.
28293 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
28295         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
28297 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
28299         Stop messing with the EMACS env var
28300         * doc/emacs/misc.texi (Interactive Shell): Remove description of
28301         EMACS env var.
28303 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
28305         Adapt 'make change-history' to coding cookie
28306         * Makefile.in (change-history): Adjust to change of format of
28307         ChangeLog file, which now has a coding cookie before an indented
28308         copyright notice.
28310 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
28312         Adapt 'make change-history' to coding cookie
28313         * Makefile.in (change-history): Adjust to change of format of
28314         ChangeLog file, which now has a coding cookie before an indented
28315         copyright notice.
28317         gitlog-to-changelog coding cookie and mv -i
28318         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
28319         for copyright notice prototype, so that we get a proper "coding:"
28320         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
28321         existing ChangeLog.  Problems reported by Eli Zaretskii in:
28322         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
28324         Merge from gnulib
28325         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
28326         2015-04-09 gitlog-to-changelog: port to MS-Windows
28328 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
28330         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
28331         (Bug#20212)
28333 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
28335         Stop messing with the EMACS env var
28336         (Bug#20202)
28337         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
28338         * lisp/comint.el (comint-exec-1):
28339         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
28340         * lisp/progmodes/compile.el (compilation-start): Same and bring
28341         INSIDE_EMACS's format in line with other users.
28343         css-mode.el (css-smie-rules): Fix indentation after complex selectors
28344         (Bug#20282)
28345         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
28346         inner structure of selectors.
28348 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28350         python.el: Indent docstring lines to base-indent
28351         (Bug#19595)
28352         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
28353         an initial patch.
28354         * lisp/progmodes/python.el
28355         (python-indent-context): Add :inside-docstring context.
28356         (python-indent--calculate-indentation): Handle :inside-docstring.
28357         (python-indent-region): Re-indent docstrings.
28358         * test/automated/python-tests.el (python-indent-region-5)
28359         (python-indent-inside-string-2): Fix tests.
28361         python.el: Increase native completion robustness
28362         (Bug#19755)
28363         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
28364         this and providing useful ideas.
28365         * lisp/progmodes/python.el
28366         (python-shell-completion-native-output-timeout): Increase value.
28367         (python-shell-completion-native-try-output-timeout): New var.
28368         (python-shell-completion-native-try): Use it.
28369         (python-shell-completion-native-setup): New readline setup avoids
28370         polluting current context, ensures output when no-completions are
28371         available and includes output end marker.
28372         (python-shell-completion-native-get-completions): Trigger with one
28373         tab only.  Call accept-process-output until output end is found or
28374         python-shell-completion-native-output-timeout is exceeded.
28376 2015-04-08  Samer Masterson  <samer@samertm.com>
28378         * lisp/eshell: Make backslash a no-op in front of normal chars
28379         (Bug#8531)
28380         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
28381         (eshell-parse-backslash): Return escaped character after backslash
28382         if it is special.  Otherwise, if the backslash is not in a quoted
28383         string, ignore the backslash and return the character after; if
28384         the backslash is in a quoted string, return the backslash and the
28385         character after.
28386         * test/automated/eshell.el (eshell-test/escape-nonspecial)
28387         (eshell-test/escape-nonspecial-unicode)
28388         (eshell-test/escape-nonspecial-quoted)
28389         (eshell-test/escape-special-quoted): Add tests for new
28390         `eshell-parse-backslash' behavior.
28392 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
28394         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
28395         after the file name.
28396         (Bug#20276)
28398 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
28400         Minor quoting etc. fixes to Emacs manual
28401         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
28402         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
28403         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
28404         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
28405         * doc/emacs/indent.texi, doc/emacs/macos.texi:
28406         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
28407         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
28408         * doc/emacs/search.texi, doc/emacs/trouble.texi:
28409         * doc/emacs/vc1-xtra.texi:
28410         Use American-style double quoting in ordinary text,
28411         and quote 'like this' when single-quoting in ASCII text.
28412         Also, fix some minor spacing issues.
28414         Minor quoting etc. fixes to elisp intro
28415         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
28416         American-style double quoting in ordinary text.  In ASCII text,
28417         consistently quote 'like this' instead of `like this', unless
28418         Emacs requires the latter.
28420 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
28422         * CONTRIBUTE: Mention log-edit-insert-changelog.
28424         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
28426 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
28428         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
28430 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
28432         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
28433         Fix inheritance of initargs.  (Bug#20270)
28435 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
28437         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
28438         while dowloading information.
28440         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
28441         (package--ensure-init-file): Check file contents before visiting.
28442         (package-initialize): Call it.
28443         (package-install-from-buffer, package-install): Don't call it.
28445 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
28447         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
28448         (Bug#17517)
28450 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
28452         * lisp/net/tramp-cache.el (tramp-flush-file-property):
28453         Fix nasty scoping bug.
28455 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
28457         Add notice to visual commands section
28458         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
28459         such as git call less with its -F option which omits pagination if
28460         the contents is less than one page long.  This interferes with
28461         eshell's visual (sub-)commands.
28463 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
28465         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
28466         environment variable expansion in file names.  (Bug#19839)
28468 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
28470         Prefer double-quote to accent-grave in man pages
28472 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28474         (Bug#20257)
28475         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
28477 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
28479         Update etc/PROBLEMS.
28480         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
28481         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
28482         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
28483         respectively); other minor updates and tweaks.  (Bug#20011)
28485 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
28487         Add doc strings for some Isearch state vars
28488         * lisp/misearch.el (multi-isearch-buffer-list)
28489         (multi-isearch-file-list): Add doc strings.
28490         (Bug#20232)
28492 2015-04-07  Alan Mackenzie  <acm@muc.de>
28494         Always mark "<" and ">" in #include directives with text properties.
28495         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
28496         "anchored matcher" with an invocation of
28497         c-make-font-lock-search-function to allow fontification when there's
28498         no trailing space on an "#include <..>" line.
28500 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
28502         Generate a ChangeLog file from commit logs
28503         * .gitignore: Add 'ChangeLog'.
28504         * build-aux/gitlog-to-changelog: New file, from Gnulib.
28505         * build-aux/gitlog-to-emacslog: New file.
28506         * CONTRIBUTE: Document the revised workflow.
28507         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
28508         instead of just special cases.
28509         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
28510         (ChangeLog, unchanged-history-files, change-history)
28511         (change-history-commit): New rules.
28512         * admin/admin.el (make-manuals-dist--1):
28513         Don't worry about doc/ChangeLog.
28514         * admin/authors.el: Add a FIXME.
28515         * admin/make-tarball.txt:
28516         * lisp/calendar/icalendar.el:
28517         * lisp/gnus/deuglify.el:
28518         * lisp/obsolete/gulp.el:
28519         * lwlib/README:
28520         Adjust to renamed ChangeLog history files.
28521         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
28522         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
28523         Remove obsolete discussion of merging ChangeLog files.
28524         New section "Maintaining ChangeLog history".
28525         * build-aux/git-hooks/pre-commit:
28526         Reject attempts to commit files named 'ChangeLog'.
28527         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
28528         * make-dist: Make and distribute top-level ChangeLog if there's a
28529         .git directory.  Distribute the new ChangeLog history files
28530         instead of scattered ChangeLog files.  Distribute the new files
28531         gitlog-to-changelog and gitlog-to-emacslog.
28532         (Bug#19113)
28534         Rename ChangeLogs for gitlog-to-changelog
28535         This patch was implemented via the following shell commands:
28536         find * -name ChangeLog |
28537         sed 's,.*,git mv & &.1,
28538         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
28539         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
28540         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
28541         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
28542         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
28543         sh
28544         git commit -am"[this commit message]"
28546 This file records repository revisions from
28547 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
28548 commit ffbf163ab5ced1bc464a0034e6abc9a41f5e09c4 (inclusive).
28549 See ChangeLog.1 for earlier changes.
28551 ;; Local Variables:
28552 ;; coding: utf-8
28553 ;; End:
28555   Copyright (C) 2015-2016 Free Software Foundation, Inc.
28557   This file is part of GNU Emacs.
28559   GNU Emacs is free software: you can redistribute it and/or modify
28560   it under the terms of the GNU General Public License as published by
28561   the Free Software Foundation, either version 3 of the License, or
28562   (at your option) any later version.
28564   GNU Emacs is distributed in the hope that it will be useful,
28565   but WITHOUT ANY WARRANTY; without even the implied warranty of
28566   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28567   GNU General Public License for more details.
28569   You should have received a copy of the GNU General Public License
28570   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.