; * etc/NEWS: Use double spaces to end a sentence.
[emacs.git] / ChangeLog.2
blob2226eb13f0f128ec0842c46235f37baa3c697692
1 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
5         While tabs in code are mostly fine because the Emacs sources have a
6         .dir-locals file specifying tab-width, the same is not true of tabs in
7         code examples inside docstrings.  The docstring is printed on a *Help*
8         buffer, which can be created on any directory and won't necessarily have
9         the same tab-width set.
11 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
13         Don't inloop gnus-uu-mark-thread on the last thread
15         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
16         final thread in the summary buffer (bug#16666).
18 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
20         Display non-ASCII group names better in prompts
22         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
23         group name, we have to do that before we remove the prefix.
25 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
27         Default to gpg2 instead of gpg
29         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
30         it exists.  This fixes many problems with using the GPG
31         authentication agent.
33 2016-02-06  David Edmondson  <dme@dme.org>
35         src/process.c Correctly convert AF_INET6 addresses
37         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
38         converted to a list of 16 bit quantities by
39         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
40         same scheme rather than expecting a (longer) list of 8 bit
41         quantities.
43         Backport:
45         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
47 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
49         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
51 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
53         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
55         (menu-bar-search-options-menu): New variable
57 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
59         * lisp/isearch.el (search-default-mode)
61         (isearch-regexp-function): Improve docstrings.
63 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
65         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
67         (search-default-mode): New variable.
68         (isearch-mode, isearch-define-mode-toggle)
69         (isearch--describe-regexp-mode): Update accordingly.
70         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
71         * etc/NEWS: Update accordingly.
72         * doc/emacs/search.texi: Update accordingly.
74 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
76         Use monitor's resolution for positioning tooltips
78         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
79           the mouse pointer is to avoid placing the tooltip over the border of
80           the monitor on multi-head displays. Fixes bug#22549.
82 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
84         Fix file-notify-test on MS-Windows
86         * test/automated/file-notify-tests.el (file-notify--test-timeout):
87         Reduce w32notify timeout to 10 sec.
88         (file-notify-test06-many-events): Call read-event after each
89         rename, to keep the w32notify backend happy in batch mode.
90         (Bug#22534)
92 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
94         Fix issues found by auditing w32notify code
96         * src/w32inevt.c (handle_file_notifications): Count the number of
97         events to be returned.
98         * src/w32notify.c (send_notifications): Don't copy to the file
99         notification buffer more than it can hold.  (Bug#22534)
101 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
103         Extend etags Ruby support for accessors
105         * lib-src/etags.c (Ruby_functions): Support accessors defined with
106         parentheses.  (Bug#22563)
108         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
109         defined with parentheses.
110         * test/etags/ETAGS.good_1:
111         * test/etags/ETAGS.good_2:
112         * test/etags/ETAGS.good_3:
113         * test/etags/ETAGS.good_4:
114         * test/etags/ETAGS.good_5:
115         * test/etags/ETAGS.good_6:
116         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
118 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
120         Update publicsuffix.txt.
122         * etc/publicsuffix.txt: Updated from
123         https://publicsuffix.org/list/public_suffix_list.dat.
125 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
127         Ensure that Gnus dribble handling allows removing entries
129         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
130         entry is on a single line.
132 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
134         Be consistent when using encoded strings in nnimap data
136         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
137         (nnimap-request-list): Use it.
138         (nnimap-request-newgroups): Ditto.
140 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
142         Display the decoded Gnus group name
144         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
145         decoded group name in the message.
147 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
149         Use completion-ignore-case instead of defining command
151         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
152         that we get case-insensitive completion.
153         (erc-completion-at-point): Remove.
155 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
157         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
159 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
161         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
163         Reduce the number of iterations to 250 in case of w32notify.
165 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
167         Fix problems caused by new implementation of sub-word mode
169         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
170         New functions.
171         (word-move-empty-char-table): New variable.
173         * etc/NEWS: Mention 'forward-word-strictly' and
174         'backward-word-strictly'.
176         * doc/lispref/positions.texi (Word Motion): Document
177         'find-word-boundary-function-table', 'forward-word-strictly', and
178         'backward-word-strictly'.  (Bug#22560)
180         * src/syntax.c (syms_of_syntax)
181         <find-word-boundary-function-table>: Doc fix.
183         * lisp/wdired.el (wdired-xcase-word):
184         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
185         (texinfo-copy-section-title, texinfo-start-menu-description)
186         (texinfo-copy-menu-title, texinfo-specific-section-type)
187         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
188         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
189         (texinfo-insert-@end):
190         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
191         (texinfo-anchor, texinfo-multitable-widths)
192         (texinfo-multitable-item):
193         * lisp/textmodes/tex-mode.el (latex-env-before-change):
194         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
195         * lisp/skeleton.el (skeleton-insert):
196         * lisp/simple.el (count-words):
197         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
198         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
199         (vhdl-update-sensitivity-list, vhdl-template-block)
200         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
201         (vhdl-template-default-indent, vhdl-template-for-loop)
202         (vhdl-template-if-then-use, vhdl-template-bare-loop)
203         (vhdl-template-nature, vhdl-template-procedural)
204         (vhdl-template-process, vhdl-template-selected-signal-asst)
205         (vhdl-template-type, vhdl-template-variable)
206         (vhdl-template-while-loop, vhdl-beginning-of-block)
207         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
208         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
209         (verilog-forward-sexp, verilog-beg-of-statement)
210         (verilog-set-auto-endcomments, verilog-backward-token)
211         (verilog-do-indent):
212         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
213         (vera-indent-block-closing):
214         * lisp/progmodes/simula.el (simula-context)
215         (simula-backward-up-level, simula-forward-down-level)
216         (simula-previous-statement, simula-next-statement)
217         (simula-skip-comment-backward, simula-calculate-indent)
218         (simula-find-if, simula-electric-keyword):
219         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
220         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
221         (ruby-smie--forward-token, ruby-smie--backward-token)
222         (ruby-singleton-class-p, ruby-calculate-indent)
223         (ruby-forward-sexp, ruby-backward-sexp):
224         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
225         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
226         (perl-syntax-propertize-special-constructs)
227         (perl-backward-to-start-of-continued-exp):
228         * lisp/progmodes/pascal.el (pascal-indent-declaration):
229         * lisp/progmodes/octave.el (octave-function-file-p):
230         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
231         * lisp/progmodes/js.el (js--forward-function-decl):
232         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
233         (idlwave-beginning-of-block, idlwave-end-of-block)
234         (idlwave-block-jump-out, idlwave-determine-class):
235         * lisp/progmodes/icon.el (icon-is-continuation-line)
236         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
237         * lisp/progmodes/hideif.el (hide-ifdef-define):
238         * lisp/progmodes/f90.el (f90-change-keywords):
239         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
240         (cperl-linefeed, cperl-electric-terminator)
241         (cperl-find-pods-heres, cperl-fix-line-spacing)
242         (cperl-invert-if-unless):
243         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
244         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
245         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
246         (ada-adjust-case-skeleton, ada-create-case-exception)
247         (ada-create-case-exception-substring)
248         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
249         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
250         (ada-get-indent-if, ada-get-indent-block-start)
251         (ada-get-indent-loop, ada-get-indent-type)
252         (ada-search-prev-end-stmt, ada-check-defun-name)
253         (ada-goto-decl-start, ada-goto-matching-start)
254         (ada-goto-matching-end, ada-looking-at-semi-or)
255         (ada-looking-at-semi-private, ada-in-paramlist-p)
256         (ada-search-ignore-complex-boolean, ada-move-to-start)
257         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
258         * lisp/net/quickurl.el (quickurl-grab-url):
259         * lisp/mail/sendmail.el (mail-do-fcc):
260         * lisp/mail/rmail.el (rmail-resend):
261         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
262         * lisp/mail/mail-extr.el (mail-extract-address-components):
263         * lisp/json.el (json-read-keyword):
264         * lisp/files.el (insert-directory):
265         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
266         * lisp/completion.el (symbol-under-point, symbol-before-point)
267         (symbol-before-point-for-complete, next-cdabbrev)
268         (add-completions-from-c-buffer):
269         * lisp/cedet/semantic/texi.el (semantic-up-context)
270         (semantic-beginning-of-context):
271         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
272         use 'forward-word-strictly' and 'backward-word-strictly' instead
273         of 'forward-word' and 'backward-word'.
275 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
277         Fix doc string of tls-program
279         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
281 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
283         Restore window conf in nsm
285         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
287         Backport:
289 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
291         * etc/NEWS: Document new mpc.el features
293 2016-02-04  Leo Liu  <sdl.web@gmail.com>
295         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
297 2016-02-04  Alan Mackenzie  <acm@muc.de>
299         Correctly fontify C++ initializations which "look like" functions.
301         Fixes bug#7579.
303         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
304         parameter to enable handling of "anonymous" declarators in declarations.
306         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
307         whether a "(" opens a parameter list of a function, or an initialization of a
308         variable.
310 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
312         Improve newsticker-treeview-selection-face
314         * newst-treeview.el (newsticker-treeview-selection-face): Improve
315         readability for dark background.
317 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
319         Minor fix in tagging Ruby accessors by etags
321         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
322         names are not literal symbols.  (Bug#22241)
324 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
326         Spelling fixes
328 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
330         Remove 'def X' from the example
332         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
333         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
334         * test/etags/CTAGS.good:
335         * test/etags/ETAGS.good_1:
336         * test/etags/ETAGS.good_2:
337         * test/etags/ETAGS.good_3:
338         * test/etags/ETAGS.good_4:
339         * test/etags/ETAGS.good_5:
340         * test/etags/ETAGS.good_6: Adjust accordingly.
342 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
344         Allow sending empty hidden values in eww
346         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
347         values (bug#22388).
349         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
351         Backport:
353 2016-02-04  David Edmondson  <dme@dme.org>
355         Make erc work better when encountering unknown prefix chars
357         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
358         instead of erroring out on unknown prefix chars (bug#22380).
360 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
362         Make erc completion case-insensitive again
364         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
365         case-insensitive again (bug#11360).
367 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
369         Make complection in erc use consistent casing
371         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
372         case in the complection consistent (bug#18509).
374 2016-02-04  Francis Litterio  <flitterio@gmail.com>
376         Make /QUIT in erc more robust
378         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
379         issuing /QUIT to disconnected servers (bug#22099).
381 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
383         Make tracking faces in Emacs work more reliably
385         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
386         faces to avoid later ambiguity (bug#22424).
388 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
390         Make shr not bug out on images on non-graphical displays
392         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
393         images on non-graphical displays (bug#22327).
395 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
397         Fix bookmark display widths
399         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
400         preparing it so that the widths are computed correctly (bug#22328).
402 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
404         Fix typo in eww-make-unique-file-name
406         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
407         actually work.
409 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
411         Make it possible to TAB to input fields
413         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
414         input fields (bug#22540).
416 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
418         Insert complete alt texts when images are disabled
420         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
421         the complete alt/title string (bug#22293).
423 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
425         Allow eww text fields to grow
427         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
428         grow when typing in stuff that's longer than the original width.
430 2016-02-03  Dima Kogan  <dima@secretsauce.net>
432         Make erc work when subword-mode is switched on
434         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
435         (erc-bounds-of-word-at-point): New functions to do word-based
436         things when subword-mode is switched on.
438         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
439         (bug#17558).
441 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
443         Fix IMAP doc example
445         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
447 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
449         Quoting fixes in doc strings and diagnostics
451         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
452         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
453         (mml-smime-get-ldap-cert):
454         Follow user style preference when quoting diagnostics.
456 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
458         Fix warning message in hack-local-variables
460         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
461         the original buffer name in the warning message.  (Bug#21681)
463 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
465         Etags: yet another improvement in Ruby tags
467         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
468         Ruby accessor definitions.  (Bug#22241)
470         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
471         accessors and multiline definitions.
472         * test/etags/ETAGS.good_1:
473         * test/etags/ETAGS.good_2:
474         * test/etags/ETAGS.good_3:
475         * test/etags/ETAGS.good_4:
476         * test/etags/ETAGS.good_5:
477         * test/etags/ETAGS.good_6:
478         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
480 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
482         Fix x-popup-menu on TTYs without a mouse
484         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
485         for the TTY case without a mouse.  (Bug#22538)
487 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
489         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
491 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
493         Use pop-to-buffer-same-window in eww
495         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
496         switch-to-buffer (bug#22244).
498 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
500         * autogen.sh: Revert all recent changes.
502 2016-02-02  Glenn Morris  <rgm@gnu.org>
504         * make-dist: Updates related to nt/.
506         * make-dist: Add modules/.
508         * make-dist: Update for super-special file that can't live in etc/.
510 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
512         Fix failure to compile ns-win.el in parallel builds
514         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
515         dependency on $(lispsource)/international/charprop.el.
516         (Bug#22501)
518 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
520         Fix names of tags generated for Ruby accessors
522         * lib-src/etags.c (Ruby_functions): Don't include the leading
523         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
525         * test/etags/ETAGS.good_1:
526         * test/etags/ETAGS.good_2:
527         * test/etags/ETAGS.good_3:
528         * test/etags/ETAGS.good_4:
529         * test/etags/ETAGS.good_5:
530         * test/etags/ETAGS.good_6:
531         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
533 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
535         Fix file-name recognition in 'etags'
537         * lib-src/etags.c (get_language_from_filename): If FILE includes a
538         leading directory, compare only its basename to the known file
539         names in lang_names[].
541         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
542         renaming.
543         * test/etags/ETAGS.good_1:
544         * test/etags/ETAGS.good_2:
545         * test/etags/ETAGS.good_3:
546         * test/etags/ETAGS.good_4:
547         * test/etags/ETAGS.good_5:
548         * test/etags/ETAGS.good_6:
549         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
550         to the results in Makefile due to the above etags.c fix.
552 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
554         Change Ruby file names and extensions recognized by 'etags'
556         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
557         of Ruby files.
558         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
559         <lang_names>: Add Ruby_filenames to the Ruby entry.
560         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
561         (Bug#22241)
563 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
565         More improvements for Ruby support in 'etags'
567         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
568         alias_method.  Identify constants even if the assignment is not
569         followed by whitespace.  (Bug#22241)
571         * test/etags/ruby-src/test1.ruby: Add tests for constants,
572         accessors, and alias_method.
573         * test/etags/ETAGS.good_1:
574         * test/etags/ETAGS.good_2:
575         * test/etags/ETAGS.good_3:
576         * test/etags/ETAGS.good_4:
577         * test/etags/ETAGS.good_5:
578         * test/etags/ETAGS.good_6:
579         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
581 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
583         Add --git-config option to autogen.sh
585         * autogen.sh: New options --git-config, --help.
586         (git_config): New shell var.  Alter function to respect this var.
588 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
590         Fix editing undo changes in eww fields
592         * eww.el (eww-tag-form): Don't overwrite initial form data in text
593         fields.
594         (eww-process-text-input): Make `M-t' at the end of text fields work
595         better (bug#19085).
597 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
599         Allow the user more control of popping up the eww window
601         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
602         Michael Heerdegen) (bug#22244).
604 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
606         Make eww-browse-url with new-window parameter work again
608         * eww.el (eww-browse-url): Stay in the same buffer if we're
609         already in a eww mode buffer so that eww-browse-url with a
610         new-window parameter works (bug#22244).
612 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
614         Clean up eww code slightly
616         * eww.el (eww-browse-url): Clean up code slightly.
618 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
620         Don't insert nil faces in shr
622         * shr.el (shr-insert-table): Don't add nil faces, because that
623         will show up in *Messages* as "Invalid face reference: nil [32
624         times]".
626 2016-02-01  Glenn Morris  <rgm@gnu.org>
628         Improve the custom type of some user options.
630         * lisp/autoinsert.el (auto-insert-alist):
631         * lisp/replace.el (query-replace-from-to-separator):
632         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
633         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
634         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
635         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
636         (prolog-mode-specificators, prolog-determinism-specificators)
637         (prolog-directives, prolog-program-name, prolog-program-switches)
638         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
639         (prolog-prompt-regexp): Improve custom type.
641 2016-02-01  Glenn Morris  <rgm@gnu.org>
643         Mark some risky calendar variables.
645         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
646         Remove risky setting for deleted obsolete alias.
647         (calendar-chinese-standard-time-zone-name)
648         (calendar-chinese-daylight-saving-start)
649         (calendar-chinese-daylight-saving-end):
650         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
651         (calendar-european-date-display-form)
652         (calendar-american-date-display-form, calendar-date-display-form):
653         * lisp/calendar/diary-lib.el (diary-remind-message)
654         (diary-header-line-format):
655         * lisp/calendar/solar.el (calendar-time-display-form)
656         (calendar-location-name): Mark as risky.
658 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
660         Highlight two additional SCSS keywords
662         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
663         identifiers on the form !foo.
664         (scss-bang-ids): New defconst holding SCSS identifiers on the form
665         !foo.
666         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
667         `font-lock-builtin-face'.
669         * test/indent/css-mode.css: Add bang rule test case.
671         * test/indent/scss-mode.css: Add test cases for the introduced bang
672         rules.
674 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
676         Recommend enabling integrity-checking in git
678         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
680         This is related to the autogen.sh changes made by Paul Eggert in
681         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
682         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
683         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
684         "Recommend these .gitconfig settings for git integrity." at
685         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
687 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
689         Some corrections in Elisp manual
691         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
692         argument POSITION.
693         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
694         is an option.
695         * doc/lispref/display.texi (Refresh Screen): Describe optional
696         argument FRAME of `redraw-frame'.
697         (Attribute Functions): Describe optional argument CHARACTER of
698         `face-font'.
699         (Defining Images): `image-load-path' is an option.
700         (Beeping): `ring-bell-function' is an option.
701         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
702         argument of `set-frame-size' is optional.
703         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
704         is optional.
705         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
706         `set-transient-map'.
707         * doc/lispref/minibuf.texi (Text from Minibuffer):
708         `read-regexp-defaults-function' is an option.
709         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
710         * doc/lispref/modes.texi (Mode Line Variables):
711         `mode-line-position' and `mode-line-modes' are variables, not
712         options.
713         * doc/lispref/strings.texi (Creating Strings): The START argument
714         of `substring' is optional.
715         * doc/lispref/text.texi (Buffer Contents): Describe optional
716         argument NO-PROPERTIES of `thing-at-point'.
717         (User-Level Deletion): Both arguments of
718         `delete-trailing-whitespace' are optional.
719         (Margins): Use @key{RET} instead of @kbd{RET}.
720         * doc/lispref/windows.texi (Display Action Functions): Write
721         non-@code{nil} instead of non-nil.
722         (Choosing Window Options): The WINDOW arg of
723         `split-window-sensibly' is optional.
724         (Choosing Window Options): Write non-@code{nil} instead of
725         non-nil.
726         (Window Start and End): Both args of `window-group-end' are
727         optional.
729         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
730         to POSITION to keep consisteny with doc-string.
732 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
734         Chatter when autogen.sh changes Git configuration
736         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
738 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
740         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
742 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
744         Omit unnecessary history from Lisp intro
746         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
747         (Conclusion): Reword so as not to talk about earlier versions
748         of Emacs in what should be an intro.
750 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
752         * etc/HISTORY: Add some more history, plus git tags.
754 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
756         Improve elisp “Security Considerations” doc
758         * doc/lispref/os.texi (Security Considerations):
759         Mention call-process and rename-file as opposed to shell commands.
760         Add some more cross-references.
762 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
764         autogen.sh now arranges for git to check hashes
766         Suggested by Karl Fogel in:
767         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
768         * autogen.sh: Do "git config transfer.fsckObjects true".
770 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
772         Fix (c & 040) typo in emergency escapes
774         * src/keyboard.c (handle_interrupt): Fix recently-introduced
775         typo (040 should have been ~040) that silently suppressed
776         auto-saves after emergency escapes.  Redo comparison to avoid
777         similar problems.
779 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
781         Fix display of overlay strings with 'display' and 'box' property
783         * src/xdisp.c (get_next_display_element): Take the box face from
784         display stack level that comes from a buffer, not an overlay
785         string.  (Bug#22499)
787 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
789         Fix imap-starttls-open
791         * lisp/net/imap.el (imap-starttls-open): Log imap process
792         output.  Call imap-parse-greeting.  (Bug#22500)
794 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
796         Fix return value of imap-starttls-open
798         * lisp/net/imap.el (imap-starttls-open): Fix return value.
800 2016-01-31  John Wiegley  <johnw@newartisans.com>
802         Correct reference to DARWIN_OS preprocessor symbol
804         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
805           not be defined.
807 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
809         Spelling fix
811         Spelling fixes
813 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
815         Pacify GCC on C library without glibc API
817         Without this change, with --enable-gcc-warnings GCC would complain
818         “error: redundant redeclaration of ‘aligned_alloc’”.
819         * configure.ac: Simplify aligned_alloc testing.
820         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
821         since the simplified configure.ac no longer checks for that.
822         Don’t declare if HAVE_ALIGNED_ALLOC.
823         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
825 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
827         Backport: * lisp/files.el: Remove support for extra .dir-locals file
829         (dir-locals-file-2, dir-locals--all-files): Remove.
830         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
831         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
833         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
835         * lisp/help-fns.el (describe-variable): Revert changes.
837         * doc/emacs/custom.texi (Directory Variables): Revert changes.
839         * etc/NEWS: Revert changes.
841 2016-01-30  Glenn Morris  <rgm@gnu.org>
843         * lisp/net/browse-url.el (browse-url-default-browser):
844         Lower priority of non-free Chrome.
846 2016-01-30  Glenn Morris  <rgm@gnu.org>
848         Improve the custom type of some user options.
850         * lisp/desktop.el (desktop-minor-mode-table):
851         * lisp/man.el (Man-frame-parameters):
852         * lisp/midnight.el (midnight-delay):
853         * lisp/speedbar.el (speedbar-select-frame-method):
854         * lisp/tooltip.el (tooltip-frame-parameters):
855         * lisp/tree-widget.el (tree-widget-space-width):
856         * lisp/type-break.el (type-break-keystroke-threshold):
857         * lisp/woman.el (woman-imenu-generic-expression):
858         * lisp/cedet/ede.el (ede-debug-program-function):
859         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
860         * lisp/emulation/viper-keym.el (viper-toggle-key):
861         * lisp/erc/erc-networks.el (erc-server-alist):
862         * lisp/gnus/message.el (message-deletable-headers, message-signature):
863         * lisp/mail/mailalias.el (mail-directory-stream):
864         * lisp/play/tetris.el (tetris-x-colors):
865         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
867 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
869         Highlight CSS variables with variable name face
871         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
872         (css--font-lock-keywords): Highlight variables in
873         `font-lock-variable-name-face'.
875 2016-01-30  Glenn Morris  <rgm@gnu.org>
877         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
879 2016-01-30  Glenn Morris  <rgm@gnu.org>
881         Mark some user options that can get evalled as risky.
883         * lisp/allout.el (allout-title):
884         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
885         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
886         * lisp/progmodes/gud.el (gud-tooltip-display):
887         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
888         Mark as risky.
890 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
892         Disable DebPrint in sys_read on MS-Windows
894         * src/w32.c (sys_read): Disable a debugging print that is normal
895         when non-blocking reads are retried.
897 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
899         ;Fix ChangeLog entry
901 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
903         Fix typos in Introduction to Emacs Lisp manual
905         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
906         (kill-new function, Digression into C)
907         (Complete forward-sentence, Divide and Conquer, Find a File)
908         (lengths-list-many-files, Columns of a graph, defcustom)
909         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
910         <dbastos@toledo.com>.
912 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
914         Bump version to 25.0.90
916         * README:
917         * configure.ac:
918         * msdos/sed2v2.inp: Bump version to 25.0.90.
920 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
922         * etc/AUTHORS: Update the AUTHORS file
924 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
926         Bump version to 25.0.90
928         * README:
929         * configure.ac:
930         * msdos/sed2v2.inp: Bump version to 25.0.90.
932 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
934         * etc/AUTHORS: Update the AUTHORS file
936 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
938         authors.el updates
940         * admin/authors.el (authors-renamed-files-alist): Additions.
942 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
944         Make it possible to run make change-history on emacs-25
946         * Makefile.in: Check if the current branch is emacs-25 instead of
947           master.
949 2016-01-30  lu4nx  <lx@shellcodes.org>
951         Support Go language in 'etags'
953         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
954         <Go_help>: New help.
955         <Go_suffixes>: New variable.
956         (Go_functions): New function.
957         <lang_names>: Add entry for Go.  (Bug#22370)
959         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
960         * doc/man/etags.1: Mention Go support.
962         * etc/NEWS: Mention Go support.
964         * test/etags/go-src/test.go:
965         * test/etags/go-src/test1.go: New test files.
966         * test/etags/Makefile (GOSRC): New variable.
967         (SRCS): Add $(GOSRC).
968         * test/etags/ETAGS.good_1:
969         * test/etags/ETAGS.good_2:
970         * test/etags/ETAGS.good_3:
971         * test/etags/ETAGS.good_4:
972         * test/etags/ETAGS.good_5:
973         * test/etags/ETAGS.good_6:
974         * test/etags/CTAGS.good: Adapt to addition of Go tests.
976 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
978         Improve Ruby support in 'etags'
980         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
981         singleton classes.  Remove class qualifiers from tags generated
982         for method and constant names.  (Bug#22241)
984         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
985         are tagged by etags in Ruby.
987         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
989         * test/etags/ruby-src/test1.ruby: Add more tests.
990         * test/etags/ETAGS.good_1:
991         * test/etags/ETAGS.good_2:
992         * test/etags/ETAGS.good_3:
993         * test/etags/ETAGS.good_4:
994         * test/etags/ETAGS.good_5:
995         * test/etags/ETAGS.good_6:
996         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
997         tests.
999 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1001         Adjust etags test results to changes in copyright years
1003         * test/etags/CTAGS.good:
1004         * test/etags/ETAGS.good_1:
1005         * test/etags/ETAGS.good_2:
1006         * test/etags/ETAGS.good_3:
1007         * test/etags/ETAGS.good_4:
1008         * test/etags/ETAGS.good_5:
1009         * test/etags/ETAGS.good_6: Adjust to shift in characters and
1010         in line numbers.
1012 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
1014         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
1016         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
1018 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1020         Make it possible to run make change-history on emacs-25
1022         * Makefile.in: Check if the current branch is emacs-25 instead of
1023           master.
1025 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1027         Don't fiddle with DEFAULT
1029         * lisp/progmodes/project.el (project--completing-read-strict):
1030         Don't change DEFAULT, whether is has any matches in
1031         COLLECTION, or not.
1033 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1035         Document xwidget commands and functions
1037         * doc/lispref/display.texi (Xwidgets): New section, describes some
1038         of the xwidget primitives.
1039         * doc/lispref/display.texi (Display): Update the chapter menu.
1040         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
1041         * doc/emacs/emacs.texi (Top): Update the master menu to include
1042         the xwidget node.
1044 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
1046         Build fix for shr.el
1048         * shr.el (seq): Require.
1050 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1052         Improve project-find-file yet again!
1054         * lisp/progmodes/project.el (project--completing-read-strict):
1055         New function.
1056         (project-find-file-in): Use it.
1057         (project-file-completion-table): Move the default
1058         implementation inside the cl-defgeneric form.
1059         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
1061 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1063         Don't pass DIR to 'hg status'
1065         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
1066         Don't pass DIR to 'hg status' (bug#22481).
1068 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1070         Fix typo in previous commits
1072         * lisp/progmodes/project.el (project-find-file-in):
1073         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
1074         commit.
1076 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1078         Improve project-find-file
1080         * lisp/progmodes/project.el (project-file-completion-table): New.
1081         (project-find-file, project-or-external-find-file): Default to filename
1082         at point.
1083         (project-file-completion-table): New, split out from
1084         project--find-file-in.
1085         (project-find-file-in): Renamed from project--find-file-in, use
1086         project-file-completion-table.
1088         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
1089         (xref--find-ignores-arguments): Add doc string.
1091 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1093         Implement vc-mtn-find-ignore-file, fix some doc strings
1095         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
1097         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
1099         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
1101         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
1103 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1105         Correct a whole bunch of bugs coming with renamed cell relocation.
1107         This is the same change as commit on master branch. See
1108         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
1110         * lisp/ses.el (ses-localvars): rename variable
1111         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
1112         and adjust the comment about it.
1113         (ses-plist-delq): new defun.
1114         (ses--ses-buffer-list): new defvar.
1115         (ses--unbind-cell-name): new defun.
1116         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
1117         (ses-relocate-formula): Undo change of
1118         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
1119         preventing relocation for named cell --- now doing this is delegated
1120         to function `ses-relocate-symbol'.
1121         (ses-relocate-range): In docstring, undo change of
1122         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
1123         lower case as it is not a variable.
1124         (ses-relocate-all): Cell name relocation : 1) check that cell is a
1125         renamed cell by testing `ses-cell' property to :ses-named, rather than
1126         comparing name to corresponding standard name. Set rowcol of renamed
1127         cell into the hashmap --- `ses-cell' property must not be used for
1128         that as the same name can be used for different locations in different
1129         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
1130         `local-variable-p' to check if cell name is already in use in this
1131         sheet or needs initialisation.
1132         (ses-relocate-all): Cell value relocation : 1) like for name
1133         relocation use the `ses-cell' property rather than comparing actual
1134         name to corresponding standard name. 2) Correct bug introduced in
1135         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
1136         made the other way round than the intention --- ie value relocation
1137         was disabled for standard cell, not for renamed cell as was the
1138         intention.
1139         (ses-relocate-all): Add loop for unbinding deleted renamed cells
1140         names.
1141         (ses-killbuffer-hook): new defun.
1142         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
1143         kill buffer hook, plus pushing current buffer if new in list.
1144         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
1145         into `ses--in-killing-named-cell-list'.
1146         (ses-rename-cell): Remove update of variable
1147         `ses--renamed-cell-symb-list', this variable is renamed to
1148         `ses--in-killing-named-cell-list', and its setting is done in
1149         functions `ses-delete-row' and , `ses-delete-column' now.
1150         (ses-rename-cell): Make cell new name a buffer local variable.
1151         (ses-rename-cell): Change correction of
1152         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
1153         computation of the range over which `cursor-intangible' property was
1154         to be updated. This correction was ok for non spilling cells, but not
1155         for cells spilling over following blank cells. Simply use
1156         `next-single-property-change' rather than computing the end column
1157         from column widths.
1159 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
1161         Re-enable checks in member, memql, delete to complain about non-lists
1163         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
1165 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
1167         Minor doc(-string) tweaks
1169         * lisp/window.el (window-in-direction): Fix doc-string typo.
1170         * doc/lispref/frames.texi (Frame Font): Mention canonical
1171         character width/height.
1172         * doc/lispref/windows.texi (Windows and Frames): Clarify
1173         handling of minibuffer window for `window-in-direction'.
1174         (Window Sizes): Minor tweaks in descriptions of
1175         `window-max-chars-per-line', `window-min-width' and
1176         `window-min-size'.
1177         (Deleting Windows): Minor tweak in `delete-window' description.
1178         (Selecting Windows): Clarify window use time description.
1179         (Cyclic Window Ordering): Minor tweak.
1180         (Switching Buffers): Clarify description of
1181         `switch-to-buffer-in-dedicated-window'.
1183 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
1185         Minor improvements to 'pcase' documentation
1187         * doc/lispref/control.texi (Pattern matching case statement):
1188         Improve the documentation of 'pcase' per comments.  See two
1189         discussion threads on emacs-devel@gnu.org for the details:
1190         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
1191         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
1193 2016-01-29  Glenn Morris  <rgm@gnu.org>
1195         Don't use eval to quieten prolog.el compilation.
1197         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
1198         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
1200 2016-01-29  Glenn Morris  <rgm@gnu.org>
1202         Mark some risky prolog variables.
1204         * lisp/progmodes/prolog.el (prolog-system-version)
1205         (prolog-keywords, prolog-types, prolog-mode-specificators)
1206         (prolog-determinism-specificators, prolog-directives)
1207         (prolog-program-name, prolog-program-switches)
1208         (prolog-consult-string, prolog-compile-string)
1209         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
1210         Mark anything processed by prolog-find-value-by-system as risky.
1212 2016-01-28  Glenn Morris  <rgm@gnu.org>
1214         * lisp/custom.el (defcustom): Doc fix.
1216         * doc/lispref/customize.texi (Variable Definitions):
1217         Defcustom should always have a type.
1219 2016-01-28  Glenn Morris  <rgm@gnu.org>
1221         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
1222         Fix :type.
1224         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
1226 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
1228         Fix Bug#22452
1230         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
1231         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
1232         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
1233         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
1234         Mark it as connected.
1236         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
1237         connection property "connected" is set.  (Bug#22452)
1239 2016-01-27  Glenn Morris  <rgm@gnu.org>
1241         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
1243         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
1244         if not compiled with xwidgets.
1246 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
1248         C-u C-x = example doc fix
1250         * doc/emacs/mule.texi (International Chars):
1251         Adjust example to match current behavior of C-u C-x =.
1253 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
1255         malloc.h hygiene
1257         This attempts to future-proof Emacs a bit against possible glibc
1258         changes, by having Emacs use <malloc.h> declarations rather than
1259         coding them up by hand.  Problem noted by Florian Weimer in:
1260         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
1261         Implement this mainly by moving malloc.h-related functions from
1262         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
1263         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
1264         New function.
1265         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
1266         (alloc_unexec_pre, alloc_unexec_post): New functions.
1267         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
1268         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
1269         (__malloc_initialize_hook): Use it.
1270         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
1271         Move here from ...
1272         * src/emacs.c: ... here.
1273         (malloc_get_state, malloc_set_state): Remove extern decls.
1274         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
1275         All uses changed to similarly-named new function.
1276         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
1277         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
1278         New decls.
1280 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
1282         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
1284 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
1286         Remove never-set var handle_user_signal_hook
1288         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
1289         Remove never-set var.  All uses removed.
1291 2016-01-26  K. Handa  <handa@gnu.org>
1293         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
1295         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
1296         second glyph only when there are enough glyphs.
1298         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
1300 2016-01-26  K. Handa  <handa@gnu.org>
1302         support rendering of wider range of combinging characters by ftfont backend
1304         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
1305         supports rendering of combining characters, call
1306         font-shape-gstring.
1308         * src/font.c (Ffont_get): Handle `combining-capability' property.
1309         (syms_of_font): New symbol ":combining-capability'.
1311         * src/font.h (struct font_driver): New member combining_capability.
1313         * src/ftfont.c: Include "category.h".
1314         (ftfont_driver): Initialize combining_capability to
1315         ftfont_combining_capability.
1316         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
1317         FLT in advance.
1318         (ftfont_combining_capability): New function.
1320         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
1322 2016-01-26  Anders Lindgren  <andlind@gmail.com>
1324         Fixed NextStep fullscreen issue (bug#22468)
1326         When in fullscreen mode, `[screen visibleFrame]' sometimes
1327         includes, sometimes excludes the menu bar. This could cause
1328         a frame to be placed too low when in fullscreen mode.
1330         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
1331         (constrain_frame_rect): New parameter, isFullscreen, when true don't
1332         query the height of the menu bar.
1333         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
1334         `constrain_frame_rect'.
1335         ([EmacsView initFrameFromEmacs:]): Trace.
1336         ([EmacsView isFullscreen]): Trace.
1337         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
1338         state to `constrain_frame_rect'.
1340 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
1342         * lisp/files.el: Use a fixed file name for the second dir-locals file
1344         (dir-locals-file): Revert to its original fixed value.
1345         (dir-locals-file-2): New const.
1346         (dir-locals--all-files): Don't use `file-name-all-completions'.
1347         Instead, just check for the 2 dir-locals files and return a list
1348         of the ones that exit (if any).
1350         * etc/NEWS: Document the change.
1352         * doc/emacs/custom.texi (Directory Variables): Document the change.
1354         * doc/lispref/variables.texi (Directory Local Variables): Update
1355         accordingly.
1357 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
1359         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
1361         Change a variable name to be more meaningful, and reorder some of
1362         the code with no change in behaviour.
1364 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
1366         * lisp/files.el (dir-locals-find-file): Refactor return values
1368         Returning a cache remains unchanged, but the case of returning a
1369         file (or pattern) is now changed to return the contaning
1370         directory.
1372         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
1373         and make obsolete.
1374         (dir-locals-read-from-dir): Simplify accordingly.
1375         (hack-dir-local-variables): Simplify accordingly and rename a
1376         variable.
1378 2016-01-26  Glenn Morris  <rgm@gnu.org>
1380         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
1381         Declare.
1383         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
1385         * configure.ac (--with-cairo): Say it's experimental.
1387         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
1388         Rename using American spelling.  Update all uses.
1390 2016-01-26  Glenn Morris  <rgm@gnu.org>
1392         Yet more xwidget doc fixes.
1394         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
1395         (xwidget-insert, xwidget-webkit-browse-url)
1396         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
1397         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
1398         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
1399         (xwidget-webkit-show-id-element)
1400         (xwidget-webkit-show-id-or-named-element)
1401         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
1402         (xwidget-webkit-execute-script-rv)
1403         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
1404         (xwidget-put):  Doc fixes.
1405         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
1406         (xwidget-webkit-show-id-element)
1407         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
1409 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
1411         * lisp/gnus/gnus-art.el (gnus-blocked-images):
1412         Add explicit nil choice and tags.
1414 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
1416         Spelling fixes
1418 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
1420         (font-lock-ensure-function): Fix bug#22399
1422         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
1423         font-lock-mode is not enabled (bug#22399).
1425 2016-01-25  Alan Mackenzie  <acm@muc.de>
1427         Expunge "allow" + infinitive from source and doc, part 2.
1429         Do the same for "permit", "enable", "prevent", and (where appropriate)
1430         "require".
1432         doc/misc/reftex.texi:
1433         doc/misc/url.texi:
1434         lib/get-permissions.c:
1435         lib/strftime.c:
1436         lisp/org/org-element.el:
1437         lisp/org/org-mobile.el:
1438         lisp/textmodes/reftex-vars.el:
1439         src/bidi.c:
1440         src/emacs.c:
1441         src/xdisp.c:
1442         test/etags/c-src/emacs/src/lisp.h:
1444         Expunge the likes of "This allows to do something" from the above files.
1446 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1448         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
1450         `special-mode' is already read-only.
1452 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1454         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
1456 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
1458         Port "$@" to OpenIndiana ksh93
1460         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
1461         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
1462         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
1463         bug in long-dead shells, so remove the workaround.
1464         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
1465         Use plain "$@" rather than ${1+"$@"}.
1467 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
1469         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
1471 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
1473         Improve wording for SMB support
1475         * doc/misc/tramp.texi (External methods): Improve and modernize
1476         wording for discussion of smbclient.  There is no longer any
1477         need to mention the laundry list of old MS Windows implementations
1478         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
1480 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1482         Merge from gnulib
1484         This incorporates:
1485         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
1486         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
1487         2016-01-15 detect utimes() correctly on OS/2 kLIBC
1488         2016-01-15 openat_proc_name: port to OS/2 kLIBC
1489         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
1490         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
1491         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
1492         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
1493         2016-01-14 sig2str: list all signals on FreeBSD >= 7
1494         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
1495         2016-01-12 mktime: rename macro to avoid glibc clash
1496         2016-01-12 Port "$@" to OpenIndiana ksh93
1497         2016-01-12 Port Universal Time settings to strict POSIX
1498         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
1499         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
1500         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
1501         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
1502         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
1503         * m4/fcntl.m4, m4/utimes.m4:
1504         Copy from gnulib.
1505         * m4/gnulib-comp.m4: Regenerate.
1507 2016-01-24  Alan Mackenzie  <acm@muc.de>
1509         Expunge "allow" + infinitive without direct object from source and doc.
1511         Do the same for "permit", "enable", and "prevent".
1513         * doc/emacs/mule.texi:
1514         * doc/lispref/control.texi:
1515         * doc/lispref/display.texi:
1516         * doc/lispref/frames.texi:
1517         * doc/lispref/functions.texi:
1518         * doc/lispref/nonascii.texi:
1519         * doc/lispref/streams.texi:
1520         * doc/lispref/windows.texi:
1521         * doc/misc/dbus.texi:
1522         * doc/misc/eww.texi:
1523         * doc/misc/flymake.texi:
1524         * doc/misc/octave-mode.texi:
1525         * doc/misc/org.texi:
1526         * doc/misc/reftex.texi:
1527         * doc/misc/tramp.texi:
1528         * doc/misc/wisent.texi:
1529         * etc/NEWS:
1530         * lisp/autorevert.el:
1531         * lisp/cedet/mode-local.el:
1532         * lisp/cedet/semantic/senator.el:
1533         * lisp/cedet/semantic/wisent.el:
1534         * lisp/dos-fns.el:
1535         * lisp/frameset.el:
1536         * lisp/gnus/gnus-agent.el:
1537         * lisp/gnus/mm-util.el:
1538         * lisp/international/characters.el:
1539         * lisp/ldefs-boot.el:
1540         * lisp/mail/mailclient.el:
1541         * lisp/man.el:
1542         * lisp/mh-e/mh-search.el:
1543         * lisp/net/tramp-cmds.el:
1544         * lisp/net/tramp-gvfs.el:
1545         * lisp/org/org-crypt.el:
1546         * lisp/org/org-element.el:
1547         * lisp/org/org-feed.el:
1548         * lisp/org/org.el:
1549         * lisp/org/ox-ascii.el:
1550         * lisp/org/ox-icalendar.el:
1551         * lisp/org/ox-publish.el:
1552         * lisp/org/ox.el:
1553         * lisp/play/gamegrid.el:
1554         * lisp/play/gomoku.el:
1555         * lisp/progmodes/antlr-mode.el:
1556         * lisp/progmodes/python.el:
1557         * lisp/progmodes/vhdl-mode.el:
1558         * lisp/strokes.el:
1559         * lisp/textmodes/ispell.el:
1560         * lisp/tree-widget.el:
1561         * lisp/vc/pcvs.el:
1562         * lisp/window.el:
1563         * src/lisp.h:
1564         * src/w32.c:
1565         * src/w32heap.c:
1566         * src/w32term.c:
1567         * src/window.c:
1568         * src/xfaces.c:
1570         Replace solecisms like "This allow to do something" with a correct
1571         alternative, such as "This allow you to do something", "This allows
1572         something to be done" or "This allows the doing of something".
1574 2016-01-24  l3thal  <kwhite@gnu.org>
1576         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
1578 2016-01-24  Kelvin White  <kwhite@gnu.org>
1580         Add NEWS entry for asynchronous reconnect in ERC
1582 2016-01-24  l3thal  <kwhite@gnu.org>
1584         Add NEWS entry for asynchronous reconnect in ERC
1586 2016-01-24  Kelvin White  <kwhite@gnu.org>
1588         browse-url.el: Add 'google-chrome' to supported browsers.
1590 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1592         Port Tramp manual to latest Texinfo
1594         Otherwise, 'make pdf' did not work (Bug#22416).
1595         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
1596         (trampfn): Specialize to the case where METHOD is nonempty.
1597         The 2nd argument is now user@host, not 2nd user and 3rd host args.
1598         All uses changed.
1599         (trampf): New macro.
1601 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
1603         * eww.el (eww-render): Protect against empty content-types.
1605 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
1607         authors.el updates
1609         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
1610           Additions.
1612 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
1614         Rename xref-query-replace to xref-query-replace-in-results
1616         * lisp/progmodes/xref.el(xref-query-replace):
1617         Rename to xref-query-replace-in-results.
1618         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
1620         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
1621         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
1622         * doc/emacs/dired.texi (Operating on Files):
1623         * doc/emacs/maintaining.texi (Xref Commands)
1624         (Identifier Search, Identifier Search): Update accordingly.
1626 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
1628         Update cl-defgeneric and cl-defmethod docstrings
1630         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
1631         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
1632         (cl-defmethod): Mention that multiple dispatch arguments are
1633         allowed.  Document supported types.  (Bug#22336)
1635 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
1637         Comment out next-error-function integration in xref
1639         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
1640         Comment out next-error-function integration
1641         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
1643 2016-01-23  John Wiegley  <johnw@newartisans.com>
1645         Correct a use of "which" in intro.texi
1647 2016-01-23  Alan Mackenzie  <acm@muc.de>
1649         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
1651         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
1652         context of case labels (including "default") more rigorously.
1653         (c-guess-basic-syntax CASE 15): Consequential amendment.
1655         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
1657 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
1659         Don't operate on menu bar of nonexistent frame
1661         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
1662         is valid before redisplaying its menu. Fixes bug#22438.
1664 2016-01-23  Anders Lindgren  <andlind@gmail.com>
1666         Unbreak the GNUstep build.
1668         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
1669         predefined "caution" image. Add trace.
1670         (x_set_window_size): Remove unused variables `cols' and `rows'.
1671         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
1672         GNUstep is used.
1673         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
1674         ([EmacsWindow zoom:]): Remove unused variable `f'.
1676 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
1677             John Wiegley  <johnw@gnu.org>
1678             Michael Heerdegen  <michael_heerdegen@web.de>
1680         Improve documentation of 'pcase'
1682         * doc/lispref/control.texi (Pattern matching case statement):
1683         Reorganize, expand, and improve wording.
1685         * etc/NEWS: Mention that 'pcase' changes are documented.
1687 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
1689         * etc/NEWS: Say that Cairo is experimental.
1691 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
1693         Report error for PNG under Cairo
1695         * src/image.c (lookup_rgb_color): Signal a file error instead
1696         of dumping core when mishandling an image.
1698 2016-01-23  Arash Esbati  <esbati@gmx.de>
1700         Delete a spurious backquote (tiny change)
1702         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
1703         spurious backquote which raises an error with emacs 25.
1705 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
1707         Pacify --enable-gcc-warnings --with-cairo
1709         Problem reported by Alexander Kuleshov in:
1710         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
1711         * src/gtkutil.c (xg_get_page_setup):
1712         Use switch rather than if-then-else.
1713         * src/image.c (COLOR_TABLE_SUPPORT):
1714         Define directly rather than via #define and optional later #undef.
1715         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
1716         Crash when the pixel is undefined, as there is a genuine bug
1717         here (Bug#22442).
1718         * src/image.c (tiff_load, gif_load, svg_load_image)
1719         (x_kill_gs_process) [USE_CAIRO]:
1720         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
1721         Omit unused locals, or move them to where they’re needed.
1722         (x_clear_area1): Now ATTRIBUTE_UNUSED.
1724 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
1726         Update documentation for Dired search and replace
1728         * doc/emacs/dired.texi (Operating on Files): Update descriptions
1729         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
1730         'dired-do-find-regexp-and-replace'.
1732         * etc/NEWS: Mention xref-related changes in Dired.
1734 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
1736         Port recent xdisp.c fix to picky C compilers
1738         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
1739         putting #if inside the arguments to a standard function, which
1740         the C standard says has undefined behavior.
1742 2016-01-22  Alan Mackenzie  <acm@muc.de>
1744         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
1746         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
1747         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
1748         contained in the preceding arg list.
1750         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
1751         `c-forward-declarator' in place of inline code.
1753 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
1755         Fix the build with --enable-checking=glyphs
1757         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
1758         build without xwidget support.
1760 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
1762         Document cl-generic.el
1764         * doc/lispref/functions.texi (Generic Functions): New section.
1765         (Bug#22336)
1766         (Functions): Update the chapter menu.
1767         * doc/lispref/elisp.texi: Update the master menu.
1769 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
1771         xwidgets style cleanup
1773         Adjust the newly-added Xwidgets code so that it uses a more-typical
1774         Emacs style.  This should not affect behavior, except that in
1775         a few places it adds runtime checks that Lisp arguments are of
1776         the proper type, and in one place it uses more-precise arithmetic.
1777         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
1778         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
1779         Include xwidget.h unconditionally.
1780         * src/buffer.c (Fkill_buffer):
1781         * src/dispnew.c (update_window):
1782         * src/emacs.c (main):
1783         * src/print.c (print_object):
1784         * src/window.c (Fdelete_window_internal):
1785         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
1786         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
1787         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
1788         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
1789         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
1790         Call xwidget functions and macros without worrying about
1791         HAVE_XWIDGETS when the code is a no-op on non-xwidget
1792         platforms.
1793         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
1794         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
1795         (struct it.xwidget):
1796         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
1797         Always define.
1798         * src/emacsgtkfixed.h: Omit unnecessary comment.
1799         * src/keyboard.c: Fix spacing.
1800         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
1801         Define to be a no-op if not HAVE_XWIDGETS.
1802         * src/xwidget.c: Include xwidget.h first (after config.h)
1803         to make sure that it can stand by itself.
1804         (Fmake_xwidget, Fxwidget_webkit_execute_script):
1805         Fix typo in doc string.
1806         (Fmake_xwidget): Check type of args.
1807         (Fmake_xwidget, offscreen_damage_event)
1808         (webkit_document_load_finished_cb, webkit_download_cb)
1809         (webkit_new_window_policy_decision_requested_cb)
1810         (webkit_navigation_policy_decision_requested_cb)
1811         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
1812         (xwidget_osr_event_set_embedder, xwidget_init_view):
1813         Omit unnecessary casts.
1814         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
1815         (xwidget_show_view, xwidget_hide_view)
1816         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
1817         (xwidget_touched):
1818         * src/xwidget.h (struct xwidget.kill_without_query)
1819         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
1820         Use bool for boolean.
1821         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
1822         Simplify by using list functions.
1823         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
1824         (Fxwidget_resize): Check type of integer args
1825         before doing any work.  Check that they are nonnegative.
1826         (Fxwidget_set_adjustment): Check type of integer arg.
1827         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
1828         Simplify.  Use double, not float.
1829         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
1830         (valid_xwidget_spec_p): Simplify.
1831         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
1832         * src/xwidget.h: Include lisp.h first, so that includers do
1833         not need to worry about doing that before including this file.
1834         Make this .h file safe to include even on non-HAVE_XWIDGETS
1835         configurations, to simplify the includers.
1836         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
1837         (xwidget_end_redisplay, lookup_xwidget)
1838         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
1839         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
1840         (struct glyph_matrix, struct glyph_string, struct xwidget)
1841         (struct xwidget_view, struct window):
1842         New forward or incomplete decls, so that includers need not
1843         assume the corresponding .h files are already included, or that
1844         HAVE_XWIDGETS is defined.
1845         (struct xwidget_type, xwidget_from_id): Remove; unused.
1847 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
1849         Backport kqueue integration from master
1851         * configure.ac (--with-file-notification): Add kqueue.
1852         (top): Remove special test for "${HAVE_NS}" and
1853         ${with_file_notification}, this is handled inside gfilenotify
1854         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
1855         instead of library specific variables.  Add error message for
1856         gfile on Nextstep.
1858         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
1859         Fix some glitches in the example.
1861         * etc/NEWS: Mention kqueue.
1863         * lisp/filenotify.el (file-notify--library)
1864         (file-notify-descriptors, file-notify-callback)
1865         (file-notify-add-watch, file-notify-rm-watch)
1866         (file-notify-valid-p): Add kqueue support.
1867         (file-notify--rm-descriptor): Remove WHAT arg.
1869         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
1871         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
1873         * src/inotify.c (inotifyevent_to_event): Extract file name from
1874         watch_object if the event doesn't provide it.
1875         (Finotify_add_watch): Add file name to watch_object.
1877         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
1879         * src/kqueue.c: New file.
1881         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
1883         * test/automated/file-notify-tests.el
1884         (file-notify--test-expected-events): Remove.
1885         (file-notify--test-cleanup): Do not set that variable.
1886         (file-notify--test-timeout) Use different timeouts for
1887         different libraries.
1888         (file-notify--test-library): New defun.
1889         (file-notify--test-event-test): Make stronger checks.
1890         (file-notify--test-with-events): EVENTS can also be a list of
1891         lists.  Flush outstanding events before running the body.
1892         Make timeout heuristically depend on the number of events.
1893         (file-notify-test01-add-watch, file-notify-test02-events)
1894         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
1895         Rewrite in order to call file monitors but directory monitors.
1896         (file-notify-test02-events, file-notify-test04-file-validity): Do
1897         not skip cygwin tests.  Add additional test for file creation.
1898         Adapt expected result for different backends.
1899         (file-notify-test03-autorevert): Some of the tests don't work for
1900         w32notify.
1901         (file-notify-test06-many-events): New test.
1903 2016-01-22  John Wiegley  <johnw@newartisans.com>
1905         Further corrections to the pcase docstring
1907 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
1909         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
1911 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
1913         In xref-collect-references, force backends to respect the 'dir' arg
1915         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
1916         to use `default-directory'.
1918 2016-01-22  John Wiegley  <johnw@newartisans.com>
1920         Minor correction to pcase docstring
1922 2016-01-22  John Wiegley  <johnw@newartisans.com>
1924         Write a new docstring for the pcase macro
1926         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
1928 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
1930         Avoid byte-compiler warning in todo-mode (bug#21953)
1932         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
1933         to looking-back to comply with advertised-calling-convention.
1935 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
1937         Fix desktop support in todo-mode and doc-view (bug#22377)
1939         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
1940         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
1942         * lisp/calendar/todo-mode.el (todo-modes-set-2):
1943         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
1945 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
1947         No need to configure gobject-introspection
1949         It wasn’t needed for the recently-installed xwidget_mvp code; see:
1950         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
1951         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
1952         (HAVE_GIR):
1953         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
1954         Remove.  All uses removed.
1955         * configure.ac (emacs_config_features): Don’t worry about GIR.
1957 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
1959         Don’t export C symbols not used elsewhere
1961         These were recently added, mostly as part of xwidget code.
1962         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
1963         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
1964         Now static functions here, not macros in emacsgtkfixed.h.
1965         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
1966         Remove.  All uses replaced by definiens.
1967         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
1968         Remove; these are now static functions in emacsgtkfixed.c.
1969         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
1970         Remove; unused.
1971         (emacs_fixed_get_type): Remove decl; no longer extern.
1972         * src/xwidget.c (offscreen_damage_event)
1973         (webkit_mime_type_policy_typedecision_requested_cb)
1974         (webkit_new_window_policy_decision_requested_cb)
1975         (webkit_navigation_policy_decision_requested_cb)
1976         (xwidget_spec_value, xwidget_view_lookup)
1977         (xwidget_start_redisplay, xwidget_touch):
1978         Now static.
1979         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
1980         Remove decls.
1982 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
1984         Support squiggly heredocs in ruby-mode
1986         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
1987         Support squiggly heredocs added in Ruby 2.3.
1989         * test/indent/ruby.rb: Add squiggly example.
1991 2016-01-20  Glenn Morris  <rgm@gnu.org>
1993         * configure.ac (emacs_config_features): Remove WEBKIT.
1995 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
1997         Port to platforms with gtk3 but not webkitgtk3
1999         I ran into this problem on my Fedora 23 installation;
2000         Emacs configured but did not build when --with-xwidgets was specified.
2001         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
2002         (DOES_XWIDGETS_USE_GIR): New var.
2003         If --with-xwidgets is specified, report an error if not
2004         doable, to be consistent with the other --with options.
2005         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
2006         not work at all without webkitgtk3.  Simplify use of
2007         EMACS_CHECK_MODULES.  Output message about gobject
2008         introspection only if xwidgets are used.
2009         * etc/NEWS: Users need webkitgtk3, not merely webkit.
2010         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
2011         since this file is no longer compiled if webkitgtk3 is not available.
2013 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
2015         Fix doc string of 'isearch-search-fun-function'
2017         * lisp/isearch.el (isearch-search-fun-function)
2018         (isearch-search-string): Doc fixes.  (Bug#22411)
2020 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2022         * lisp/xwidget.el: Nitpicks
2024         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
2025         Use with-current-buffer rather than save-excursion + set-buffer.
2027 2016-01-20  Glenn Morris  <rgm@gnu.org>
2029         Don't hard-code 1 as point-min.
2031         * lisp/image-mode.el (image-display-size):
2032         * lisp/xwidget.el (xwidget-webkit-last-session)
2033         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
2035 2016-01-20  Glenn Morris  <rgm@gnu.org>
2037         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
2039 2016-01-20  Glenn Morris  <rgm@gnu.org>
2041         Trivial doc copyedits.
2043         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
2044         (Fxwidget_webkit_get_title, Fxwidget_resize)
2045         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
2046         (Fxwidget_info, Fxwidget_view_lookup)
2047         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
2049 2016-01-20  Glenn Morris  <rgm@gnu.org>
2051         Avoid advising image-display-size for xwidgets.
2053         * lisp/xwidget.el (xwidget-image-display-size): Remove.
2054         (image-display-size): Remove advice.
2055         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
2056         (image-display-size): Incorporate xwidget code directly.
2058 2016-01-20  Glenn Morris  <rgm@gnu.org>
2060         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
2062         * lisp/xwidget.el (window-configuration-change-hook)
2063         (kill-buffer-query-functions): Only modify these hooks if
2064         compiled with xwidget support.
2066 2016-01-20  Glenn Morris  <rgm@gnu.org>
2068         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
2070 2016-01-19  Glenn Morris  <rgm@gnu.org>
2072         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
2074         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
2076         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
2078 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
2080         * lisp/gnus/nnir.el (nnir-request-update-mark):
2081         Default to the original mark.
2082         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
2083         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
2085 2016-01-19  Glenn Morris  <rgm@gnu.org>
2087         * lisp/xwidget.el (report-xwidget-bug): Remove.
2089         (top-level): No longer require reporter.
2091 2016-01-19  Joakim Verona  <joakim@verona.se>
2092             Grégoire Jadi  <daimrod@gmail.com>
2094         Support for the new Xwidget feature.
2096         * configure.ac:
2097         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
2098         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
2099         * src/xdisp.c:
2100         (handle_display_spec, handle_single_display_spec, push_it)
2101         (pop_it, set_iterator_to_next, dump_glyph)
2102         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
2103         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
2104         (produce_xwidget_glyph, x_produce_glyphs)
2105         (get_window_cursor_type):
2106         * src/window.c (Fdelete_window_internal):
2107         * src/termhooks.h (e):
2108         * src/print.c (print_object):
2109         * src/lisp.h (ptrdiff_t):
2110         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
2111         (syms_of_keyboard):
2112         * src/emacs.c (main):
2113         * src/dispnew.c (update_window, scrolling_window):
2114         * src/dispextern.h (g, i):
2115         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
2116         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
2117         * src/keyboard.c (kbd_buffer_get_event):
2118         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
2119         (emacs_fixed_class_init): Add case for an xwidget view.
2121         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
2124         Various improvements to the Xwidget feature.
2125         * src/xwidget.c:
2126         * src/emacsgtkfixed.c:
2127         * lisp/xwidget.el:
2129 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
2131         Improve documentation of 'alist-get'
2133         * doc/lispref/variables.texi (Setting Generalized Variables): Add
2134         'alist-get' to the list of functions that can appear in PLACE
2135         argument of 'setf'.
2137 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
2139         Minor copyedits of doc/emacs/maintaining.texi
2141         * doc/emacs/maintaining.texi (List Identifiers): More accurate
2142         description of "C-M-i" wrt tags tables.
2143         (Tags Tables): Move the definition of "tag" to a footnote.
2145 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
2147         Unbreak the Cygwin-w32 build
2149         * src/w32fns.c (globals_of_w32fns): Move the initialization of
2150         resetstkoflw into a part that isn't compiled on Cygwin.
2151         (Bug#22403)
2153 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2155         * shr.el (shr-table-body): Allow tables to have text children.
2157 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
2159         Cope with multiple overlapping faces.
2161         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
2162           left.
2163           (hfy-face-resolve-face): Handle font specification as well as font
2164           name. Documentation update. (Bug#21990)
2166 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
2168         Fix spurious escapes in describe-input-method
2170         Problem reported by Vincent Belaïche (Bug#22309).
2171         * lisp/international/mule-cmds.el (describe-language-environment):
2172         * lisp/international/quail.el (quail-help):
2173         Apply substitute-command-keys to doc strings before displaying them.
2175 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
2177         Minor improvements to (random t) documentation
2179         * doc/lispref/numbers.texi (Random Numbers):
2180         * src/fns.c (Frandom):
2181         Omit unnecessary details about randomness fallback.
2182         Say that it is a fallback.
2184 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
2186         Rename methods in Ruby etags example file
2188         * test/etags/ruby-src/test.rb: Rename the example methods to
2189         correspond to the common terminology used in Ruby.
2190         * test/etags/CTAGS.good:
2191         * test/etags/ETAGS.good_1:
2192         * test/etags/ETAGS.good_2:
2193         * test/etags/ETAGS.good_3:
2194         * test/etags/ETAGS.good_4:
2195         * test/etags/ETAGS.good_5:
2196         * test/etags/ETAGS.good_6: Adjust accordingly.
2198 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
2200         Propertize backtick in 'def `(abc)' as symbol constituent
2202         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
2203         Propertize backtick in 'def `(abc)' as symbol constituent.
2204         (ruby-syntax-propertize-function):
2205         Rename to ruby-syntax-propertize.
2207 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2209         Fix scrolling under scroll-preserve-screen-position on TTY
2211         * src/window.c (window_scroll_line_based): When setting point to
2212         preserve screen coordinates, don't let cursor enter either of the
2213         two scroll margins.  (Bug#22395)
2215 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2217         Fix shr table rendering of nested tables
2219         * shr.el (shr-table-body): Don't include all tbodies in nested
2220         tables in the levels above.
2222 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
2224         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
2226 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
2228         Add xref-based replacements for Dired search commands
2230         * lisp/dired-aux.el (dired-do-find-regexp)
2231         (dired-do-find-regexp-and-replace): New commands.
2232         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
2234         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
2235         `Q' to the new commands.
2237         * lisp/progmodes/xref.el (xref-query-replace)
2238         (xref-collect-matches): Add progress reporters.
2239         (xref--find-ignores-arguments): Return nil for zero ignores.
2240         (xref--show-xrefs): Add an optional argument.
2241         (xref-collect-matches): Drop the assert.  'find' accepts a
2242         regular file in place of directory argument, too.
2244 2016-01-18  Alan Mackenzie  <acm@muc.de>
2246         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
2248 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2250         Improve user documentation of Xref
2252         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
2253         (Looking Up Identifiers, Identifier Search, List Identifiers):
2254         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
2255         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
2256         for the details.
2258 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2260         Fix scrolling under scroll-preserve-screen-position and margins
2262         * src/window.c (window_scroll_pixel_based): When setting point to
2263         preserve screen coordinates, don't let cursor enter either of the
2264         two scroll margins.  Fix incorrect usage of
2265         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
2266         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
2268 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2270         Unbreak the MS-Windows build
2272         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
2273         WINDOWSNT, to avoid link failure.  (Bug#22202)
2275 2016-01-18  Alan Mackenzie  <acm@muc.de>
2277         Desktop: protect users against inadvertant upgrading of desktop file.
2279         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
2281         * etc/NEWS: Add an entry about upgrading a desktop file.
2283         * lisp/desktop.el (desktop-file-version): Amend doc string.
2284         (desktop-native-file-version, desktop-io-file-version): new variables.
2285         (desktop-clear): Set desktop-io-file-version to nil.
2286         (desktop-buffer-info): make the presence of the last item on the list
2287         conditional on (>= desktop-io-file-version 208).
2288         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
2289         Amend the doc string.  Add code to determine the output file version.
2290         (desktop-create-buffer): Set desktop-io-file-version to the input file's
2291         version.
2293 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
2295         Initialize GnuTLS before calling gnutls_rnd
2297         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
2298         Don’t set gnutls_global_initialized if gnutls_global_init fails.
2299         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
2300         if 2.12 or later, which has gnutls_rnd.
2301         (emacs_gnutls_global_init, gnutls_rnd): New fallback
2302         placeholder macros if before 2.12.
2303         (init_random): Initialize gnutls globals before trying to
2304         use gnutls_rnd.
2306 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
2308         Don't use GnuTLS before it is initialized
2310                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
2312 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
2314         Port cleanup attribute to OpenBSD
2316         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
2317         sprintf, and this messes up 'configure' when it tests for the cleanup
2318         attribute.  Work around the problem by using __has_attribute directly.
2319         Problem reported by Joakim Jalap (Bug#22385).
2320         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
2321         * m4/ax_gcc_var_attribute.m4: Remove.
2322         * src/conf_post.h (__has_attribute): Provide a substitute, for
2323         non-GCC or older GCC compilers.  All uses changed to assume
2324         the substitute.  Check for the cleanup attribute.
2325         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
2327 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
2329         Prefer GnuTLS when acquiring random seed
2331         This attempts to improve on the fix for Bug#22202.
2332         * configure.ac (HAVE_DEV_URANDOM): Remove.
2333         Check /dev/urandom existence at run time, not at build time,
2334         since the device could exist in the former but not the latter.
2335         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
2336         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
2337         (random_seed): New typedef.
2338         (set_random_seed): New static function.
2339         (seed_random): Use them.
2340         (init_random): Use random_seed instead of uintmax_t, so as to
2341         not consume more entropy than needed.  Prefer gnutls_rnd if it
2342         works; this avoids a redundant open of /dev/urandom on
2343         GNU/Linux with modern GnuTLS.
2345 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2347         Improve documentation of dynamic modules
2349         * doc/lispref/loading.texi (How Programs Do Loading): Update the
2350         description of searching for files in 'load' when Emacs was built
2351         with support for dynamic modules.
2353 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2355         * INSTALL: Document --with-modules.
2357 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2359         Document 'function-put'
2361         * doc/lispref/symbols.texi (Symbol Plists): Document
2362         'function-put'.  Update documentation of 'function-get'.
2364 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2366         Document 'funcall-interactively'
2368         * doc/lispref/commands.texi (Interactive Call): Document
2369         'funcall-interactively'.
2370         * doc/lispref/functions.texi (Calling Functions): Mention
2371         'funcall-interactively' and provide a cross-reference.
2373 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2375         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
2377         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
2379 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2381         Document renaming of selection-related functions
2383         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
2384         functions into the corresponding "gui-*" functions.  Make the
2385         description slightly less X-centric.
2387 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2389         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
2391 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2393         Document 'define-inline'
2395         * doc/lispref/functions.texi (Defining Functions): Document
2396         'define-inline' and related macros.
2398         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
2400 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2402         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
2404         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
2406 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2408         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
2410         instead of manually writing a dir-locals file.
2412 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2414         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
2416         (dir-locals-file)
2417         * lisp/files-x.el (modify-dir-local-variable)
2418         * lisp/dos-fns.el (dosified-file-name)
2419         * lisp/help-fns.el (describe-variable): Change accordingly.
2421 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
2423         Fix incompatbilities with MS-Windows 2000 and older
2425         * src/w32.c <multiByteToWideCharFlags>: New global variable.
2426         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
2427         Use it instead of the literal MB_ERR_INVALID_CHARS.
2428         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
2429         appropriate for the underlying OS version.  For details, see
2430         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
2431         * src/w32.h: Declare multiByteToWideCharFlags.
2432         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
2433         (add_tray_notification): Use multiByteToWideCharFlags instead of
2434         the literal MB_ERR_INVALID_CHARS.
2435         (_resetstkoflw_proc): New typedef.
2436         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
2437         pointer, as this function is absent in msvcrt.dll shipped with W2K
2438         and older systems.
2440 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2442         Mention in PROBLEMS an issue with MS-Windows NT4
2444         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
2445         on Windows NT4.  For the details, see
2446         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
2448 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
2450         Ensure 8-byte aligned memory allocation on MS-Windows 9X
2452         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
2453         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
2454         (malloc_after_dump_9x, realloc_after_dump_9x)
2455         (free_after_dump_9x): New functions.  (Bug#22379)  See also
2456         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
2457         for more details about the original problem.
2459         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
2460         (free_after_dump_9x): Add prototypes.
2462 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2464         Fix tests for active region in hideif.el
2466         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
2467         'use-region-p' to test whether to operate on region, instead of
2468         testing 'mark-active'.
2470 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
2472         Fix interactive specs in some hideif.el commands
2474         * lisp/progmodes/hideif.el (hif-evaluate-macro)
2475         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
2476         in commands that should only act on the region if it's active.
2478 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
2480         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
2482 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
2484         Enable test selector from command line
2486         * test/automated/Makefile.in: Change variable manipulation to avoid
2487           over-writing selector.
2489 2016-01-15  Alan Mackenzie  <acm@muc.de>
2491         Don't confuse "::" with ":" when trying to parse member initializers.
2493         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
2494         more robustly for ":" token when searching backwards for it.
2496         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
2497         variable.
2499 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
2501         Ensure positive number of glyphs for margins of positive width
2503         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
2504         positive value when a non-zero width of the marginal area was
2505         requested.  (Bug#22356)
2507 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
2509         Fix crashes when mini-window has non-zero margins
2511         * src/window.c (resize_frame_windows): Use 'new_size' to set
2512         minibuffer window's 'total_cols' value, as 'size' might be in
2513         pixels.  (Bug#22356)
2515 2016-01-15  Alan Mackenzie  <acm@muc.de>
2517         In comment-dwim with style `extra-line', respect indent-tabs-mode.
2519         This fixes bug #22369.
2521         * lisp/newcomment.el (comment-make-bol-ws): New function.
2522         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
2524 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
2526         Make 'random' seeds cryptographically secure if possible
2528         * configure.ac: Check for "/dev/urandom".
2530         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
2531         for the seed from "/dev/urandom".
2532         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
2533         * src/fns.c (Frandom): Update the doc string to indicate that
2534         system entropy is used when available.
2535         * src/w32.c: Include wincrypt.h.
2536         (w32_init_crypt_random, w32_init_random): New functions, use the
2537         CryptGenRandom API.
2538         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
2539         * src/w32.h (w32_init_random): Add prototype.
2541         * doc/lispref/numbers.texi (Random Numbers): Document more details
2542         about 't' as the argument to 'random'.
2544         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
2545         strong seed if possible.
2547         (Bug#22202)
2549 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
2551         Unhide the --no-line-directive option to 'etags'
2553         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
2554         option.  (Bug#22306)
2556         * doc/man/etags.1: Document the --no-line-directive option.
2558 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
2560         Fix picture-mode wrt double-width characters
2562         * lisp/textmodes/picture.el (picture-insert): Check the width of
2563         the character being replaced, not just that of the replacement.
2564         (Bug#1808)
2566 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
2568         Honor docstring of gnus-group-get-new-news
2570         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
2571         but non-numeric, unconditionally consider all groups to need updating.
2573 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
2575         Disallow parenthesis in non-pseudo CSS selectors
2577         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
2578         parenthesis in selectors except for in the function notation that
2579         might appear right after a pseudo-class.
2580         * test/indent/scss-mode.scss: Add a test for it.
2582 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
2584         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
2586 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
2588         check-maybe shall run only default tests
2590         * test/automated/Makefile.in (check, check-expensive): Depend on
2591         mostlyclean.
2592         (check-maybe): Re-run only default tests.
2593         (check-doit): Use code of check-maybe.
2594         (mostlyclean): Move *.log files away.
2596 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
2598         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
2600 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
2602         Un-obsolete tags-loop-continue
2604         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
2605         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
2607 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2609         Document obsoletion of 'intangible' and 'point-entered/left'
2611         * doc/lispref/text.texi (Special Properties): Document the new
2612         properties 'cursor-intangible' and 'cursor-sensor-functions'.
2613         Document the obsolete status of 'intangible', 'pointer-left',
2614         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
2615         * doc/lispref/display.texi (Overlay Properties): Document that
2616         'intangible' overlay property is obsolete.
2618         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
2620 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2622         Updater documentation of 'looking-back'
2624         * doc/lispref/searching.texi (Regexp Search): Update documentation
2625         of 'looking-back'.  Fix markup.
2627 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2629         Document 'pre-redisplay-functions'
2631         * doc/lispref/hooks.texi (Standard Hooks):
2632         * doc/lispref/display.texi (Forcing Redisplay): Document
2633         'pre-redisplay-functions'.
2635 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2637         Document the new deafault value of 'load-read-function'
2639         * doc/lispref/loading.texi (How Programs Do Loading): Document the
2640         change in the default value of 'load-read-function'.
2642 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2644         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
2646         * doc/lispref/nonascii.texi (Text Representations): Document
2647         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
2649 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2651         Document the new prefix-command hooks
2653         * doc/lispref/hooks.texi (Standard Hooks): Document
2654         `prefix-command-echo-keystrokes-functions' and
2655         `prefix-command-preserve-state-hook'.
2657 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2659         Fix one more misuse of time-stamp-time-zone
2661         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
2662         than the unportable "GMT" for time zone.
2664 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2666         Fix NNTP NEWGROUPS off-by-a-few-hours bug
2668         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
2669         in Universal Time, since we’re telling the server “GMT”.
2671 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2673         Update publicsuffix.txt from upstream
2675         * etc/publicsuffix.txt: Update from
2676         https://publicsuffix.org/list/effective_tld_names.dat
2677         dated 2016-01-12 11:52:01 UTC.
2679 2016-01-13  Glenn Morris  <rgm@gnu.org>
2681         Fix some declarations.
2683         * lisp/descr-text.el (internal-char-font):
2684         * lisp/cedet/mode-local.el (xref-item-location):
2685         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
2686         (epg-sub-key-capability, epg-sub-key-validity):
2687         * lisp/international/mule-util.el (internal-char-font):
2688         Fix declarations.
2690 2016-01-13  Glenn Morris  <rgm@gnu.org>
2692         Fix some custom types.
2694         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
2695         * lisp/gnus/gnus.el (gnus-valid-select-methods):
2696         * lisp/mail/rmail.el (rmail-get-coding-function):
2697         * lisp/net/newst-treeview.el (newsticker-groups-filename):
2698         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
2699         * lisp/textmodes/tildify.el (tildify-space-predicates):
2700         * lisp/url/url-tramp.el (url-tramp-protocols):
2701         Fix custom types.
2703 2016-01-13  Glenn Morris  <rgm@gnu.org>
2705         Add some missing version tags.
2707         * lisp/electric.el (electric-quote-comment)
2708         (electric-quote-string, electric-quote-paragraph):
2709         * lisp/epg-config.el (epg-gpgconf-program):
2710         * lisp/rect.el (rectangle-preview):
2711         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
2712         * lisp/emacs-lisp/package.el (package-selected-packages)
2713         (package-hidden-regexps):
2714         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
2715         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
2716         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
2717         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
2718         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
2719         (mml-smime-sign-with-sender, mml2015-always-trust)
2720         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
2721         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
2722         (browse-url-conkeror-arguments):
2723         * lisp/net/newst-reader.el (newsticker-download-logos):
2724         * lisp/progmodes/gud.el (gud-guiler-command-name):
2725         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
2726         * lisp/progmodes/project.el (project-vc):
2727         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
2728         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
2729         (python-shell-completion-native-disabled-interpreters)
2730         (python-shell-completion-native-enable)
2731         (python-shell-completion-native-output-timeout)
2732         (python-shell-completion-native-try-output-timeout):
2733         * lisp/progmodes/xref.el (xref):
2734         * lisp/term/screen.el (xterm-screen-extra-capabilities):
2735         * lisp/term/xterm.el (xterm-max-cut-length):
2736         Add missing version tags.
2738 2016-01-13  Glenn Morris  <rgm@gnu.org>
2740         * test/automated/core-elisp-tests.el
2741         (core-elisp-tests-1-defvar-in-let): Add a custom type.
2743 2016-01-13  Glenn Morris  <rgm@gnu.org>
2745         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
2747         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
2749 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2751         Merge from gnulib
2753         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
2754         It also updates to the latest version of texinfo.tex.
2755         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
2756         * build-aux/update-copyright, doc/misc/texinfo.tex:
2757         Update from gnulib.
2759 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2761         Update documentation of 'process-running-child-p'
2763         * doc/lispref/processes.texi (Input to Processes): Document the
2764         changes in return value of 'process-running-child-p'.
2766 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2768         Update documentation of 'deactivate-mark'.
2770         * doc/lispref/markers.texi (The Mark): Document that
2771         'deactivate-mark' is now buffer-local when set.
2773 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2775         Update documentation of 'completion-table-dynamic'
2777         * doc/lispref/minibuf.texi (Programmed Completion): Document the
2778         new optional argument to 'completion-table-dynamic'.
2780 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2782         Document changes in 'read-buffer' and 'read-buffer-function'
2784         * doc/lispref/minibuf.texi (High-Level Completion): Document the
2785         4th argument to 'read-buffer' and 'read-buffer-function'.
2787 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2789         Fix time-stamp-time-zone bugs introduced in July
2791         This fixes a bug introduced when the July changes to
2792         format-time-string installed, as the changes were not
2793         correctly handled in this module (Bug#22302).
2794         Also, document time stamp time zones.
2795         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
2796         (time-stamp--format): New private function.
2797         (time-stamp-string, time-stamp-string-preprocess)
2798         (time-stamp-do-number): Use it.
2799         * doc/emacs/files.texi (Time Stamps): Mention time zones.
2800         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
2802 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2804         Make piping to subprocesses more robust on MS-Windows
2806         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
2807         buffer can hold.  Don't return -1 if something has been written to
2808         the pipe.  Zero out 'errno' before calling '_write', to avoid
2809         returning a stale value.  (Bug#22344)
2810         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
2811         * src/w32.c (pipe2): Use it to request a user-defined size for the
2812         pipe being created.
2814         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
2816         * doc/emacs/msdos.texi (Windows Processes): Document
2817         'w32-pipe-buffer-size'.
2819 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
2821         test/automated/vc-hg.el: Support out-of-tree build
2823         * test/automated/vc-hg.el
2824         (vc-hg-annotate-extract-revision-at-line-with-filename)
2825         (vc-hg-annotate-extract-revision-at-line-with-both):
2826         Don't refer to source-directory.
2827         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
2829 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
2831         Minor change in tramp-tests.el
2833         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
2834         Use `dired-uncache' instead of a Tramp internal function.
2836 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
2838         * etc/HELLO: Add Armenian and Mongolian greetings.
2840         (Bug#22346)
2842 2016-01-11  Alan Mackenzie  <acm@muc.de>
2844         Java Mode: Fontify identifiers in the presence of annotations.
2846         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
2847         Don't move point when the defun fails.
2848         (c-forward-decl-or-cast-1): Correct a usage of match data.
2850         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
2851         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
2852         removed variable.
2854         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
2856 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
2858         Avoid an infloop when we run out of memory
2860         * src/alloc.c (garbage_collect_1): Don't bother saving and
2861         restoring the echo-area message if we are GC'ing after running out
2862         of memory.  This avoids an infloop due to repeated attempts to
2863         allocate memory for the cons cell needed to save the message,
2864         which signals the memory-full error, which attempts to save the
2865         echo-area message, which signals memory-full again, etc.
2867 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
2869         Avoid unnecessary failures of auto-saving after fatal error
2871         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
2872         the benefit of FAT volumes if we are called as part of shutting
2873         down due to a fatal error, which probably means we are trying to
2874         auto-save the session.
2875         * src/lread.c (check_obarray): Don't bother making the obarray
2876         valid if we are shutting down due to a fatal error.  This avoids
2877         interfering with auto-saving the crashed session.
2879 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
2881         Simplify HAVE_MODULES use in mark_maybe_pointer
2883         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
2884         so that later code can use 'if' rather than '#ifdef'.
2885         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
2886         always working.
2888 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
2890         Revert attempt to use 'noexcept' in typedef
2892         This use of 'noexcept' runs afoul of the C++11 standard.
2893         Problem reported by Philipp Stephani in:
2894         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
2895         * src/emacs-module.c (emacs_finalizer_function):
2896         Move this typedef here ...
2897         * src/emacs-module.h: ... from here, and use only the C
2898         version of the typedef.  The typedef is now private since it
2899         is never used in the .h file now and anyway it seemed to be
2900         causing more confusion than it cured.
2901         (make_user_ptr, get_user_finalizer, set_user_finalizer):
2902         Open-code the type instead.
2904 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2906         Update documentation of 'indirect-function'
2908         * doc/lispref/eval.texi (Function Indirection): Update the
2909         documentation of 'indirect-function'.
2911 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2913         Update documentation for obsoleting 'syntax-begin-function'
2915         * doc/lispref/syntax.texi (Position Parse): Undocument
2916         'syntax-begin-function' that is now obsolete.
2918 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2920         Document new features if Eshell
2922         * doc/misc/eshell.texi (Input/Output): Document the new
2923         '#<bufname>' syntax.
2924         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
2925         Disable "Key Index" generation, as there are no @kindex entries in
2926         this manual.
2928 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
2930         Handle too long commands in Tramp
2932         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
2933         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
2934         order to not exceed shell command line limit.
2936         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
2937         (tramp--test-utf8): Include Arabic file name, again.
2939 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
2941         * .gitattributes: *.cur and *.pif are binary files too.
2943 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2945         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
2947 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2949         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
2951         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
2952         within $(...).
2953         * test/indent/shell.sh: Add corresponding test.
2955 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2957         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
2959         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
2960         cast to Lisp_Object.
2962 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
2964         Use short date for 'hg annotate', and output the author
2966         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
2967         Change '-d' to '-dq'.  (Bug#21805)
2968         (vc-hg-annotate-switches): Default to "-u" "--follow".
2969         (vc-hg-annotate-re): Update to recognize the short date format
2970         and the optional username.
2971         (vc-hg-annotate-time)
2972         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
2974         * test/automated/vc-hg.el: New file.
2976 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
2978         Spelling fix
2980 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2982         Document user-level functions in project.el
2984         * lisp/progmodes/project.el (project-find-file)
2985         (project-or-external-find-file): Add doc strings.
2987 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2989         Document the user-level features of the Xref package
2991         * doc/emacs/maintaining.texi (Maintaining): Add a list of
2992         described features.
2993         (Xref): New section, made out of thoroughly rewritten "Tags"
2994         section.
2995         (Find Identifiers, Looking Up Identifiers, Xref Commands)
2996         (Identifier Search, List Identifiers): New subsections,
2997         incorporating the old tags commands and the new xref commands.
2998         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
2999         Section and subsections demoted to a lower level.
3000         * doc/emacs/search.texi (Search):
3001         * doc/emacs/windows.texi (Pop Up Window):
3002         * doc/emacs/frames.texi (Creating Frames):
3003         * doc/emacs/programs.texi (Imenu, Symbol Completion):
3004         * doc/emacs/building.texi (Grep Searching):
3005         * doc/emacs/dired.texi (Operating on Files):
3006         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
3008 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3010         * doc/lispref/loading.texi: Add `define-type' entry for load-history
3012         * doc/lispref/loading.texi (Where Defined): Remove incorrect
3013         cl-defmethod description, and add missing define-type entry.
3015 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
3017         Improve doc strings and prompts in xref.el
3019         * lisp/progmodes/xref.el (xref-backend-functions)
3020         (xref-find-definitions): Doc fixes.
3021         (xref-query-replace): Doc fix.  Improve prompts for arguments.
3023 2016-01-09  Alan Mackenzie  <acm@muc.de>
3025         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
3027         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
3028         `font-lock-extend-regions-wholelines' from
3029         `font-lock-extend-region-functions' rather than setting the latter to
3030         nil.
3032 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
3034         Fix coding system for Tramp on OS X.
3036         * lisp/net/tramp-compat.el: Require ucs-normalize.
3038         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
3039         Set coding system to `utf-8-hfs' for Mac OS X.
3041         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
3042         Flush directory properties when needed.
3043         (tramp--test-utf8): Include Chinese file name, again.
3045 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
3047         Update 'load-history' docs
3049         * doc/lispref/loading.texi (Where Defined): Update the list of
3050         forms in 'load-history' by adding the forms created for the
3051         'cl-generic' generics.  (Bug#21422)
3053 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
3055         Fix (error ...) error
3057         Problem reported by Glenn Morris in:
3058         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
3059         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
3060         introduced in my Aug 28 change, where I got confused by the
3061         two meanings of (error ...).
3063 2016-01-08  Alan Mackenzie  <acm@muc.de>
3065         Correctly analyze brace arguments in templated C++ function declarations.
3067         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
3068         POS and LIMIT parameters, like the other c-go-list-* functions have.
3070         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
3071         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
3072         followed by template specifiers.
3074 2016-01-08  Glenn Morris  <rgm@gnu.org>
3076         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
3078         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
3080 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
3082         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
3084 2016-01-08  Alan Mackenzie  <acm@muc.de>
3086         Respect fontification region calculated by major mode.  Fixes bug #22316.
3088         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
3089         fontification region has been calculated by a function on
3090         font-lock-extend-after-change-region-function use this region rather than
3091         changing the end position to somewhere else.
3093 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
3095         Improve documentation of Delete Selection mode
3097         * lisp/delsel.el (delete-selection-mode)
3098         (delete-selection-helper): Update and expand the doc strings.
3099         (Bug#22296)
3101         * doc/emacs/mark.texi (Using Region): Document the behavior of
3102         delete commands in Delete Selection mode.  (Bug#22296)
3104         * doc/lispref/markers.texi (The Mark): Document how to add the
3105         support for Delete Selection mode to Lisp programs. (Bug#22296)
3107 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
3109         Fix two project-find-file issues
3111         * lisp/progmodes/project.el (project--value-in-dir):
3112         Temporarily set enable-local-variables to :all.
3113         (project-find-file, project-or-external-find-file):
3114         All autoloads.
3115         (project--find-file-in): Require xref.
3117 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
3119         Clarify doc string of 'dired-current-directory'
3121         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
3122         the return value might not end in a slash when called with the
3123         optional argument non-nil.  (Bug#6273)
3125 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
3127         Use the face of preceding text for displaying the ellipsis
3129         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
3130         text in it->saved_face_id for displaying the ellipsis, and ignore
3131         the face, if any, of the invisible text.  (Bug#22320)
3133 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
3135         Suppress Chinese file name test for OSX in tramp-tests.el
3137         * test/automated/tramp-tests.el (tramp--test-utf8):
3138         Remove instrumentation.  Suppress Chinese file name test for OSX.
3140 2016-01-08  Glenn Morris  <rgm@gnu.org>
3142         * admin/admin.el (set-version): Also handle the NEWS file.
3144 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
3146         apropos-library: Skip obvious duplicates; don't error on generics
3148         * lisp/apropos.el (apropos-library): Skip "was an autoload"
3149         entries, to avoid obvious duplicates.  For each cl-defmethod
3150         entry, take just its function symbol (bug#21422).
3152 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
3154         Add project-find-file and project-or-external-find-file
3156         * lisp/minibuffer.el (completion-category-defaults):
3157         Add `project-file' category.
3159         * lisp/progmodes/project.el (project-find-file)
3160         (project-or-external-find-file): New commands.
3161         (project--find-file-in): New private function.
3163         * lisp/progmodes/xref.el (xref-collect-matches): Use
3164         `expand-file-name' on DIR, to expand the tildes.
3165         (xref--find-ignores-arguments): Extract from
3166         `xref--rgrep-command'.
3168 2016-01-07  Leo Liu  <sdl.web@gmail.com>
3170         Add defvar-local to lisp-imenu-generic-expression
3172         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
3173           defvar-local.
3175 2016-01-07  Leo Liu  <sdl.web@gmail.com>
3177         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
3179         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
3180           Don't declare (indent 1).
3182 2016-01-07  Glenn Morris  <rgm@gnu.org>
3184         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
3186 2016-01-07  Glenn Morris  <rgm@gnu.org>
3188         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
3190         Avoid specifying the length of a time object (it has not been "2"
3191         for some time).
3193 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
3195         Properly encode/decode base64Binary data in SOAP
3197                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
3198                 base64Binary value as utf-8.
3199                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
3201 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
3203         Obey coding-system-for-write when writing stdout/stderr in batch
3205         * src/print.c (printchar_to_stream):
3206         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
3207         a non-nil value, use it to encode output in preference to
3208         locale-coding-system.  See the discussions in
3209         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
3210         for the details.
3212         * doc/lispref/os.texi (Terminal Output): Document how to send
3213         non-ASCII text via 'send-string-to-terminal'.
3214         (Batch Mode): Document how text written to standard streams is
3215         encoded.  Fix inaccuracy regarding which output streams are used
3216         by output functions in batch mode.
3218 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
3220         * doc/misc/efaq.texi (Packages that do not come with Emacs):
3221         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
3222         <chenggao@royau.me> in
3223         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
3225 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
3227         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
3229         Fix backslash.  (Bug#22224)
3231 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
3233         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
3235         Make it actually work.  (Bug#22265)
3237 2016-01-05  Alan Mackenzie  <acm@muc.de>
3239         Remove function wrongly on AWK Mode value of context fontification hook.
3241         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
3242         swap order of entries so that awk's entry isn't superseded by the default.
3244         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
3245         to handle nil value of c-before-context-fontification-functions.
3247 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
3249         * src/buffer.c: Stick with ASCII in doc string.
3251 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
3253         Reword transient-mark-mode doc string
3255         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
3256         The value 'lambda (literally) can be interpreted as (quote lambda),
3257         which is not intended here; we want just the lambda symbol.
3259 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
3261         Update doc string of 'selective-display'
3263         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
3264         using it with the value of 't' is obsolete.  (Bug#1092)
3266 2016-01-05  Alan Mackenzie  <acm@muc.de>
3268         Make C++ buffers writeable when writing their initial text properties.
3270         This is a correction to yesterday's CC Mode patch.
3272         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
3273         c-save-buffer-state around the function rather than a mere `let'.
3275 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
3277         Additional changes for "make check-expensive"
3279         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
3280         Explain make target `check-expensive'.
3282         * etc/NEWS: Mention new make target `check-expensive'.
3284         * test/automated/Makefile.in (check-doit): New target.
3285         (check, check-expensive): Use it.
3287 2016-01-04  Alan Mackenzie  <acm@muc.de>
3289         Apply text properties for <, > in new after-change function (C++ Java Modes).
3291         These are category/syntax-table properties to give < and > paren syntax.
3292         Also apply certain `c-type' text properties to the insides of <..> constructs
3293         to ensure that identifiers contained by them get fontified.  This patch fixes
3294         bug #681.
3296         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
3297         after-change action.
3299         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
3300         change region to include <s and >s which might not be already marked as
3301         parens, rather than just when paren text properties are removed.
3302         (c-restore-<>-properties): New after-change function, which applies text
3303         properties marking < and > with paren syntax.
3305         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
3306         properties are applied to the interiors of <...> constructs, to ensure
3307         fontification of identifiers there.
3309         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
3310         c-restore-<>-properties to this list for C++ and Java.
3312         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
3313         c-before-font-lock-functions, exclude c-restore-<>-properties from the
3314         functions invoked.
3315         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
3316         to allow modification by before-change functions.
3317         (c-after-change): Amend c-new-END here, rather than initializing it and
3318         c-new-BEG.
3320 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3322         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
3324 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3326         Introduce check-expensive tests.
3328         * Makefile.in (check-expensive):
3329         * test/automated/Makefile.in (check-expensive): New target.
3331         * test/automated/auto-revert-tests.el
3332         (auto-revert-test01-auto-revert-several-files):
3333         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
3334         * test/automated/tramp-tests.el (tramp-test26-process-file)
3335         (tramp-test27-start-file-process, tramp-test28-shell-command)
3336         (tramp-test29-vc-registered)
3337         (tramp-test31-special-characters-with-stat)
3338         (tramp-test31-special-characters-with-perl)
3339         (tramp-test31-special-characters-with-ls)
3340         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
3341         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
3342         (tramp-test35-unload): Tag the tests as :expensive-test.
3344 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3346         shr-tag-video bug fix
3348         * shr.el (shr-tag-video): Protect against the `poster' being
3349         empty.
3351 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3353         Minor fixes in tramp-tests.el
3355         * test/automated/tramp-tests.el (tramp-test26-process-file):
3356         Move point properly.
3357         (tramp-test29-vc-registered): Work with relative file names.
3359 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3361         Ensure redisplay when 'truncate-lines' is set
3363         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
3364         (Bug#22303)
3366 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3368         Fix a doc string of 'transient-mark-mode'
3370         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
3371         "lambda" in doc string from becoming a link to lambda expressions.
3373 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3375         MS-Windows followup to latest gnulib update
3377         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
3379 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3381         Spelling fix
3383 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3385         Do secure signed Bcc handling
3387         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
3388         (bug#18718).
3390 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3392         Avoid stdio in SIGINT handler
3394         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
3395         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
3396         * lib/ignore-value.h: New file, from gnulib.
3397         * src/keyboard.c: Include it.
3398         (write_stdout, read_stdin): New functions.
3399         (handle_interrupt): Use them instead of printf and getchar,
3400         and avoid fflush when handling signals.
3402 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3404         * doc/misc/texinfo.tex: Revert unwanted copyright change.
3406 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
3408         * lisp/align.el (align): Simplify a lambda
3410         * lisp/align.el (align): Fix arg order in call to `align-region'
3412 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
3414         Fix compilation next-error in buffers with selective-display
3416         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
3417         function.
3418         (compilation-internal-error-properties)
3419         (compilation-next-error-function, compilation-set-window): Use
3420         it.  (Bug#1092)
3422 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3424         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
3426 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3428         Add SHA1 warnings for high network security settings
3430         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
3431         about SHA1 certificates, which are now believed to be open to
3432         spoofing.
3434 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3436         Refactor mml-smime.el, mml1991.el, mml2015.el
3438         (Maybe this is the last merge from Gnus git to Emacs git)
3440         Cf. discussion on ding mailing list, messages in
3441         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
3442         Common code from the three files mml-smime.el, mml1991.el, and
3443         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
3444         to gnus-util.el.
3446         The code is supported by test cases with necessary test keys.
3448         Documentation in message.texi is updated.
3450         * doc/misc/message.texi (Security, Using S/MIME):
3451         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
3452         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
3453         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
3455         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
3456         New functions.
3458         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
3459         (epa--select-keys): Autoload.
3460         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
3461         (mml-secure-openpgp-signers): New user option;
3462         make mml1991-signers and mml2015-signers obsolete aliases to it.
3463         (mml-secure-smime-signers): New user option;
3464         make mml-smime-signers an obsolete alias to it.
3465         (mml-secure-openpgp-encrypt-to-self): New user option;
3466         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
3467         aliases to it.
3468         (mml-secure-smime-encrypt-to-self): New user option;
3469         make mml-smime-encrypt-to-self an obsolete alias to it.
3470         (mml-secure-openpgp-sign-with-sender): New user option;
3471         make mml2015-sign-with-sender an obsolete alias to it.
3472         (mml-secure-smime-sign-with-sender): New user option;
3473         make mml-smime-sign-with-sender an obsolete alias to it.
3474         (mml-secure-openpgp-always-trust): New user option;
3475         make mml2015-always-trust an obsolete alias to it.
3476         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
3477         New user options.
3478         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
3479         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
3480         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
3481         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
3482         (mml-secure-passphrase-callback, mml-secure-check-user-id)
3483         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
3484         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
3485         (mml-secure-fingerprint, mml-secure-filter-keys)
3486         (mml-secure-normalize-cust-name, mml-secure-select-keys)
3487         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
3488         (mml-secure-self-recipients, mml-secure-recipients)
3489         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
3491         * lisp/gnus/mml-smime.el: Require epg;
3492         refactor declaration and autoloading of epg functions.
3493         (mml-smime-use): Doc fix.
3494         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
3495         Obsolete.
3496         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
3497         Use format instead of gnus-format-message.
3498         (mml-smime-epg-secret-key-id-list): Remove variable.
3499         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
3500         (mml-smime-epg-find-usable-secret-key): Remove functions.
3501         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
3503         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
3504         (mml1991-passphrase-cache-expiry): Obsolete.
3505         (mml1991-epg-secret-key-id-list): Remove variable.
3506         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
3507         (mml1991-epg-find-usable-secret-key): Remove functions.
3508         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
3510         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
3511         (mml2015-passphrase-cache-expiry): Obsolete.
3512         (mml2015-epg-secret-key-id-list): Remove variable.
3513         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
3514         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
3515         (mml2015-epg-find-usable-secret-key): Remove functions.
3516         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
3517         (mml2015-epg-encrypt): Refactor.
3519 2016-01-02  Glenn Morris  <rgm@gnu.org>
3521         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
3523         Explicitly ignore case.  (Bug#22262)
3525 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
3527         (semantic-symref-derive-find-filepatterns): Return a list
3529         * lisp/cedet/semantic/symref/grep.el
3530         (semantic-symref-derive-find-filepatterns): Return a list.
3531         (semantic-symref-perform-search): Quote the result here once and for all.
3533 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3535         Fix xref-find-references on MS-Windows
3537         * lisp/cedet/semantic/symref/grep.el
3538         (semantic-symref-derive-find-filepatterns): Use
3539         'shell-quote-argument' instead of manually quoting in a way that
3540         only works with Posix shells.  (Bug#22289)
3542 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3544         Document new features of tildify-mode
3546         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
3547         (tildify-mode): Spelling fixes in doc strings.
3549         * etc/NEWS: Reformat the tildify-mode entry.
3551 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3553         Document new features of Whitespace mode
3555         * doc/emacs/display.texi (Useless Whitespace): Document
3556         'whitespace-toggle-options' and the new 'big-indent' style.
3557         Document 'whitespace-big-indent-regexp'.  Document the Global
3558         Whitespace mode.
3560 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3562         Improve documentation of new Hide-IfDef features
3564         * etc/NEWS: Expand and reword Hide-IfDef section.
3566 2016-01-02  Leo Liu  <sdl.web@gmail.com>
3568         Fix regression in font-locking cl-assert and cl-check-type
3570         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
3571           el-errs-re.
3573 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3575         Spelling and grammar fixes
3577 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3579         Fix copyright years by hand
3581         These are dates that admin/update-copyright did not update, or
3582         updated incorrectly.
3584 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3586         Update copyright year to 2016
3588         Run admin/update-copyright.
3590 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3592         Merge from gnulib
3594         This mostly just updates copyright dates of gnulib files.
3595         It also updates to the latest version of texinfo.tex.
3597 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
3599         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
3601 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
3603         Port chart.el methods to cl-generic.
3605         cl-call-next-method cannot be used inside EIEIO's defmethod.
3606         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
3607         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
3608         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
3609         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
3610         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
3611         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
3613 2015-12-31  Brian Burns  <bburns.km@gmail.com>
3615         Add nt/INSTALL.W64 build instructions
3617         * nt/INSTALL.W64: New file.
3618         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
3620 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
3622         Add new input method 'programmer-dvorak'
3624         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
3625         input method.
3627         * etc/NEWS: Mention it.
3629 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
3631         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
3633         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
3634         original M-TAB binding in a buffer-local variable.
3635         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
3636         if that is recorded, when point is in a place where flyspell
3637         should not be active (e.g., because the user turned on
3638         'flyspell-prog-mode').  (Bug#18533)
3640 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
3642         Fix EWW rendering of long RTL lines
3644         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
3645         of the selected window before filling its lines.  (Bug#22250)
3647 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3649         fix  bug#21054
3651         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
3653 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3655         Clean up cairo printing code
3657         * src/gtkutil.c (xg_get_page_setup): Use listn.
3658         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
3659         decode_window_system_frame and FRAME_VISIBLE_P.
3660         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
3661         of Fdisplay.
3662         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
3663         instead of Fdisplay.  Temporarily unblock_input around QUIT.
3665 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3667         Move variables to inner loop, preparing for Mac port merge
3669         * src/keyboard.c (command_loop_1): Move variables `cmd',
3670         `keybuf', and `i' to inner loop.
3672 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3674         Add handle_user_signal_hook
3676         * src/keyboard.h (handle_user_signal_hook): New declaration.
3677         * src/keyboard.c (handle_user_signal_hook): New variable.
3678         (handle_user_signal): Call it.
3680 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3682         Avoid writing to purespace
3684         * src/alloc.c (Fmake_string): Don't write to empty string contents.
3685         (allocate_vector): Don't write to empty vector size.
3686         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
3687         Don't call unnecessary XSETCAR or XSETCDR.
3688         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
3689         write to empty string size_byte.
3691 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3693         Remove unused variable
3695         * lisp/international/mule-cmds.el: Remove unused variable
3696         `mac-system-coding-system'.
3698 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3700         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
3702 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3704         Use posix_openpt instead of openpty on Darwin
3706         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
3707         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
3708         Darwin-specific definitions.  Use posix_openpt instead.
3710 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
3712         Document support for ':documentation' in Lisp mode
3714         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
3715         (lisp-string-after-doc-keyword-p)
3716         (lisp-font-lock-syntactic-face-function): Add doc strings.
3718 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
3720         Document new features of TeX mode
3722         * doc/emacs/text.texi (TeX Print): Document
3723         'tex-print-file-extension'.
3724         * doc/emacs/programs.texi (Misc for Programs): Document support
3725         for Prettify Symbols mode in TeX mode.
3727 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3729         Clarify docs of hscroll in RTL text
3731         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
3732         meaning of a window's horizontal scroll amount for RTL paragraphs.
3734 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3736         Fix rendering of HTML pages that use character composition
3738         * src/indent.c (Fvertical_motion): Fix the case when point starts
3739         in the middle of a composition, as in shr-vertical-motion.
3740         (Bug#22250)
3742 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3744         Avoid some compiler warnings in w32.c
3746         * src/w32.c (codepage_for_filenames, crlf_to_lf)
3747         (ansi_encode_filename, socket_to_fd, sys_write)
3748         (check_windows_init_file): Avoid compiler warnings about
3749         differences in pointer signedness.
3751 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
3753         Undo ill-advised change
3755         * lisp/progmodes/xref.el (xref-collect-matches): Undo
3756         ill-advised change.  The hits come in the order that `find'
3757         produces them in, which isn't alphabetical.
3759 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
3761         Unbreak completion in python-mode buffers
3763         * lisp/progmodes/python.el (python-shell-completion-at-point):
3764         Unbreak in python-mode buffers.
3766 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3768         Fix typos in CC Mode manual
3770         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
3771         typos.  (Bug#22267)
3773 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3775         Avoid assertion violations in compact_font_cache_entry
3777         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
3778         avoid assertion violation in ASIZE.  (Bug#22263)
3780 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3782         Fix filling text with bidirectional characters in shr.el
3784         * lisp/net/shr.el (shr-insert-document): Bind
3785         bidi-display-reordering to nil while filling lines.  This is
3786         required for when a line includes characters whose bidi
3787         directionality is opposite to the base paragraph direction,
3788         because columns are counted in the logical order.  (Bug#22250)
3790 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
3792         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
3794 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
3796         Sync with Tramp 2.2.13
3798         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
3800         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
3801         Use `tramp-compat-funcall'.
3803         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
3804         Make `split-string' call compatible with older Emacsen.
3806         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
3808 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
3810         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
3812 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3814         Mention that tls.el is secure by default, and will fail
3816 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3818         Make tls.el use trustfiles by default
3820         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
3821         (open-tls-stream): Insert the trustfile by looking at
3822         `gnutls-trustfiles'.
3824 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3826         Refactor out gnutls-trustfiles
3828         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
3830 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3832         Remove --insecure from gnutls-cli invocation
3834         * tls.el (tls-program): Default to using secure TLS
3835         connections (bug#19284).
3837 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
3839         Spelling fix
3841 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
3843         Port report-emacs-bug to deterministic builds
3845         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
3846         recent "built on" change to deterministic builds where
3847         emacs-build-system will be nil.  See:
3848         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
3850 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
3852         Fix URL auth error message
3854         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
3855         message more correct (bug#20069).
3857 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3859         shr link traversal fixup
3861         * shr.el (shr-next-link): Don't bug out on adjacent links.
3863         Backport:
3865         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
3867 2015-12-28  Tom Tromey  <tom@tromey.com>
3869         set :safe on css-indent-offset
3871         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
3873 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3875         * eww.el (eww-mode): Remove superfluous bidi reset.
3877 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
3879         Make chunked encoding trailer detection more compliant
3881         * lisp/url/url-http.el
3882         (url-http-chunked-encoding-after-change-function): Make
3883         trailer detection more compliant (bug#16345).
3885 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
3887         Fix Bug#10873 in `report-emacs-bug'
3889         * lisp/mail/emacsbug.el (report-emacs-bug): If
3890         `report-emacs-bug-no-explanations' is nil, make sure we can show
3891         mail and warnings buffer on this frame (Bug#10873).
3893 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3895         Always reset the bidi direction
3897         * eww.el (eww-display-html): Always reset the bidi direction
3898         to `left-to-right' (bug#22257).
3900 2015-12-28  Alan Mackenzie  <acm@muc.de>
3902         Allow line comments ending with escaped NL to be continued to the next line.
3904         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
3906         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
3907         (forw-comment, back-comment): On encountering an end of comment character,
3908         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
3910         * doc/lispref/syntax.texi (Control Parsing): Describe
3911         `comment-end-can-be-escaped'.
3913         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
3915         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
3917 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
3919         Rename project-library-roots to project-external-roots
3921         * lisp/progmodes/project.el (project-library-roots): Rename to
3922         project-external-roots.
3923         (project-library-roots-function): Rename to
3924         project-vc-external-roots-function.  Only use it in the VC
3925         backend, for now.  Update project-external-roots accordingly.
3926         (project-vc-library-roots): Remove.
3927         (project-or-libraries-find-regexp):
3928         Rename to project-or-external-find-regexp.
3930         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
3931         Rename to elisp-load-path-roots.
3933         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
3934         an anonymous function for the default value of
3935         project-vc-external-roots-function.
3937 2015-12-27  Deniz Dogan  <deniz@dogan.se>
3939         Clear erc user list upon disconnection
3941         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
3942         lists upon disconnection.  This prevents invalid channel
3943         user lists when reconnecting (bug#10947).
3945 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
3947         Don't bug out in erc after waking from sleep
3949         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
3950         closed connection, this may already have been detected and
3951         `erc-server-last-received-time' has been set to nil (bug#13608).
3953 2015-12-27  David Edmondson  <dme@dme.org>
3955         Proxy error in erc with multiple clients
3957         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
3958         generated when multiple IRC clients talk to a single IRC proxy
3959         (bug#19034).
3961         Backport:
3963         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
3965 2015-12-27  Dima Kogan  <dima@secretsauce.net>
3967         Ensure that we don't have several timers in erc
3969         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
3970         for existing timers in the alist before adding new ones.  If a
3971         timer already exists, it is cancelled and
3972         overwritten. (bug#19292).
3974 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3976         Fix mml-sec build warnings
3978         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
3979         (bug#18718).
3981         Backport:
3983         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
3985 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
3987         Don't insert erc logs at the end
3989         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
3990         at the start of the buffer, not at the end (bug#20496).
3992 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
3994         (eww-setup-buffer): Restore left-to-right defaults
3996         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
3998         Backport:
4000         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
4002 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4004         Don't join erc channels doubly
4006         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
4007         more than once (if you have several nicks) (bug#20695).
4009 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
4011         Avoid leaving "ghost" of mouse pointer on MS-Windows
4013         * src/w32term.c (frame_set_mouse_pixel_position):
4014         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
4015         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
4016         * src/w32term.c (frame_set_mouse_pixel_position): Include
4017         w32common.h.
4019 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
4021         Fix auth source lookups from erc with port numbers
4023         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
4024         numbers (bug#20541).
4026 2015-12-27  Fran Litterio  <flitterio@gmail.com>
4028         Run erc-kill-channel-hook always on exit
4030         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
4031         when erc-kill-queries-on-quit is set (bug#21187).
4033 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
4035         Spelling fix
4037         * test/automated/url-parse-tests.el:
4038         (url-generic-parse-url/same-document-reference):
4039         Rename from url-generic-parse-url/same-decument-reference.
4041 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
4043         Reword initial *scratch* for brevity, appearance
4045         * lisp/startup.el (initial-scratch-message):
4046         Reword to avoid apostrophes, and to make it shorter.
4047         See the thread starting in:
4048         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
4050 2015-12-26  Leo Liu  <sdl.web@gmail.com>
4052         Add ert-deftest to lisp-mode.el
4054         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
4055           lisp-el-font-lock-keywords-1): Add ert-deftest.
4057 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
4059         Mark imap changes as not needing doc changes
4061         * lisp/net/imap.el (imap-ssl-open): Remove
4063 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
4065         Use built-in encryption in imap.el
4067         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
4068         (imap-starttls-open): Use open-network-stream instead of starttls.el.
4069         (imap-tls-open): Use open-network-stream instead of tls.el.
4071 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4073         Don't try using /bin/sh in artist.el on MS-Windows
4075         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
4076         New function.
4077         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
4078         (Bug#20167)
4080 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
4082         Always define gmalloc etc. in src/gmalloc.c
4084         This is a work-around to prevent the compiler from using semantic
4085         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
4086         with -O2 replaces most of calloc's definition by a call to calloc;
4087         see Bug#22085.
4088         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
4089         (aligned_alloc, free): Do not undef.  Instead, define these as
4090         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
4092 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4094         Fix documentation of browse-url browser-related functions
4096         * lisp/net/browse-url.el (browse-url)
4097         (browse-url-default-browser, browse-url-default-windows-browser)
4098         (browse-url-default-macosx-browser, browse-url-chromium)
4099         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
4100         and NEW-WINDOW arguments in these functions.  (Bug#19421)
4102 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4104         Propagate Bug#14412 fix to backtrace_eval_unrewind
4106         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
4107         becomes accurate again. This shouldn’t affect behavior.
4108         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
4110 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4112         Don't produce non-ASCII characters in *scratch*
4114         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
4115         avoid producing non-ASCII characters in the *scratch* buffer's
4116         commentary.
4118 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4120         Document changes in 'compare-windows'
4122         * lisp/vc/compare-w.el (compare-windows-removed)
4123         (compare-windows-added): Doc fix.
4125         * doc/emacs/files.texi (Comparing Files): Document the changes in
4126         window selection by 'compare-windows'.
4128 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4130         Document 'vc-annotate-background-mode'
4132         * doc/emacs/maintaining.texi (Old Revisions): Document
4133         'vc-annotate-background-mode'.
4135 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4137         Document 'vc-region-history'
4139         * doc/emacs/maintaining.texi (VC Change Log): Document
4140         'vc-region-history'.
4142 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4144         Improve documentation of 'vc-push'
4146         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
4147         improve the documentation of 'vc-push'.
4149         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
4151 2015-12-26  Alain Schneble  <a.s@realize.ch>
4153         Include the tests for the URL parsing fixes
4155 2015-12-26  Alain Schneble  <a.s@realize.ch>
4157         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
4159         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
4160         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
4161         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
4162         information in URL-struct.
4163         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
4164         path and query into nil path and query, respectively.
4165         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
4166         empty path into an absolute ("/") path.
4167         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
4168         fragment-only URIs. Do not just return them unchanged.
4169         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
4170         reference URI should not drop the last segment.
4172         Backport:
4174         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
4176 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4178         Document 'url-user-agent'.
4180         * lisp/url/url-http.el (url-user-agent): Move from here...
4181         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
4182         keep all the URL defcustoms in one place, and also have it defined
4183         whenever the URL library is loaded.
4185         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
4187 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4189         Document protocols supported by URL library via Tramp
4191         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
4192         supported via Tramp.
4193         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
4194         Tramp.
4196 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4198         Document changes in Shell-script mode
4200         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
4201         the 'sh-shell' file-local variable.
4202         (top level): Add an auto-load form to avoid byte-compiler warning
4203         about 'comint-send-string'.
4205 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4207         Fix documentation of 'ses-define-local-printer'
4209         * doc/misc/ses.texi (Printer functions): Fix whitespace between
4210         sentences and punctuation.  Add an index entry for
4211         'ses-define-local-printer'.
4213 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
4215         Document 'ert-summarize-tests-batch-and-exit'
4217         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
4218         'ert-summarize-tests-batch-and-exit'.
4220 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4222         Avoid assertion violation in unbind_to
4224         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
4225         if we get here with an object that is not a symbol.  (Bug#14412)
4227 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
4229         Don't treat /foo/bar:mumble as ange-ftp address
4231                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
4232                 only in the first component.  (bug#5362)
4234 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4236         Follow <meta> redirects in eww
4238         Merge conflict, but I think I resolved it.
4240             Follow meta refresh tags in eww
4242             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
4244         Backport:
4246 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4248         Allow http://user:pass@foo/ URLs again
4250         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
4251         user/passwords in URLs (bug#19046).
4253         Backport:
4255         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
4257 2015-12-25  Samer Masterson  <samer@samertm.com>
4259         Autoload url-insert-buffer-contents
4261         * lisp/url/url-handlers.el: Add autoload cookie so that
4262         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
4264         Backport:
4266         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
4268 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4270         Make sure *scratch* etc. use forward slashes in its default-directory
4272         * lisp/startup.el (normal-top-level): On MS-Windows, convert
4273         backslashes to forward slashes while decoding default-directory
4274         of the initially-created buffers.
4276 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4278         More eww file name coding fixes
4280         * eww.el (eww-decode-url-file-name): Use the base coding
4281         system to check for encodability.
4283         Backport:
4285         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
4287 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4289         Always save eww history
4291         * eww.el (eww-setup-buffer): Always save history, even when
4292         called from outside the eww buffer (bug#19638).
4294         Backport:
4296         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
4298 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4300         Default web pages to right-to-left
4302         * eww.el (eww-mode): Most web pages are left-to-right, so make
4303         that the default (bug#19801).
4305         * shr.el (shr-tag-html): Respect "dir" attributes
4306         (left-to-right, right-to-left).
4308         Backport:
4310         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
4312 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4314         Make toggling checkboxes work again
4316         * eww.el (eww-update-field): Make toggling checkboxes work
4317         again (bug#21881).
4319         Backport:
4321         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
4323 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4325         Don't store cookies with empty names
4327         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
4328         cookies with empty names (bug#21936).
4330         Backport:
4332         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
4334 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4336         Stop rendering HTML before specdlr exhaustion
4338         Fixes: 22117
4340         * shr.el (shr-descend): Stop rendering before we run out of
4341         specpdl room (bug#22117).
4343         Backport:
4345         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
4347 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4349         Use cl-reduce, not reduce.
4351         Backport:
4353         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
4355 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4357         Allow several <tbody> tags in shr
4359         * shr.el (shr-table-body): New function to find the real body
4360         of a table.
4361         (shr-tag-table): Use it to render several <tbody> tags in a
4362         table (bug#22170).
4364         Backport:
4366         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
4368 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4370         Make prettier unique file names in eww
4372         (eww-make-unique-file-name): Make unique file names by making
4373         files like foo(2).jpg instead of foo(1)(2).jpg.
4375         Backport:
4377         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
4379 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4381         Decode hex-encoded URLs before using them as file names
4383         * eww.el (eww-decode-url-file-name): New function.
4384         (eww-download-callback): Use it to decode file names before
4385         saving them.
4387         Backport:
4389         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
4391 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
4393         Add FreeBSD cert bundle
4395         * doc/misc/emacs-gnutls.texi (Help For Users): Document
4396         FreeBSD bundle.
4398         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
4400         Backport:
4402         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
4404 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4406         Ignore invalid SVG images
4408         * shr.el (shr-tag-svg): Ignore SVG images that have no width
4409         or height, because these can't be displayed by ImageMagick,
4410         anyway.
4412         Backport:
4414         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
4416 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
4418         shr table rendering fix
4420         * shr.el (shr-tag-table): Allow rendering body-less tables
4421         that have headers.
4423         Backport:
4425         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
4427 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4429         Restore info about the build host in bug reports
4431         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
4432         which Emacs was built.  This is important information for
4433         investigating bug reports reported by users who don't build their
4434         Emacs.
4436 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4438         Fix bootstrap broken by changes related to OS X file-name encoding
4440         * lisp/international/ucs-normalize.el (eval-when-compile): Make
4441         sure char-code-property-alist includes elements that allow access
4442         to 'decomposition' and 'canonical-combining-class' Unicode
4443         properties, as compiling ucs-normalize.el requires that.
4444         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
4445         only of charprop.el was already loaded.
4447         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
4448         New order-only dependency.
4450 2015-12-25  Leo Liu  <sdl.web@gmail.com>
4452         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
4454 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
4456         Make tramp-test29-vc-registered more robust
4458         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
4459         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
4460         Remove instrumentation.
4462 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4464         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
4466 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
4468         Fix `gnus-union' so as to behave like `cl-union'
4470         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
4471         Make gnus-union use `equal' to compare items in lists.
4473         * lisp/gnus/gnus-util.el (gnus-union):
4474         Make it behave like cl-union partially.
4476 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
4478         Fix dired.c typo with ptrdiff_t vs Lisp_Object
4480         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
4481         an integer type, fixing a problem introduced in the recent fix for
4482         Bug#22169.
4484 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
4486         Document default process sentinel more prominently
4488         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
4489         defaults for process filter and sentinel.  Provide cross-references.
4490         (Process Information): Provide cross-references to where filters
4491         and sentinels are described.
4492         (Filter Functions): Add an index entry for "default filter".
4493         (Sentinels): Add a few status messages not documented previously.
4494         Resolve the "killed" confusion.  Document and describe the default
4495         sentinel.  (Bug#22220)
4497 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
4499         Fix file-name completion on OS X
4501         * src/dired.c (file_name_completion): Reject false matches due to
4502         file-name-coding-systems that decompose characters when encoding
4503         file names, by comparing decoded file names as well.  (Bug#22169)
4504         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
4506         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
4507         non-nil 'decomposed-characters' property.
4509 2015-12-23  Anders Lindgren  <andlind@gmail.com>
4511         File-name completion of non-ASCII characters on OS X (bug#22169)
4513         The coding system `utf-8-nfd', locally defined in ns-win.el,
4514         didn't provide a :pre-write-conversion method, causing file name
4515         completion of non-ASCII characters to fail.  Solved by using the
4516         `utf-8-hfs' coding system provided by `ucs-normalize'.
4518         * lisp/loadup.el: Load international/ucs-normalize (when building
4519         for ns).
4521         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
4522         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
4523         as the file name coding system.
4525         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
4527 2015-12-23  Tom Tromey  <tom@tromey.com>
4529         Fix bug #18588 by making bug-reference-bug-regexp more lenient
4531         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
4532         "bug NNNN".  (Bug #18588)
4534 2015-12-23  Tom Tromey  <tom@tromey.com>
4536         add some cl-* aliases to lisp-mode imenu
4538         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
4539         cl-defgeneric, and cl-defmethod.
4541 2015-12-22  Tom Tromey  <tom@tromey.com>
4543         Make a variable buffer-local
4545         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
4546         font-lock-syntax-table buffer-local.  (Bug #21627)
4548 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
4550         Fix decoding of text in URLs retrieved by EWW
4552         * lisp/net/eww.el (eww-render): Pass 'charset' to
4553         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
4554         non-nil, to set 'buffer-file-coding-system' of the buffer where we
4555         show the URL.
4556         (eww-display-html, eww-display-raw): Decode the text correctly,
4557         using the charset found in the headers, and defaulting to UTF-8.
4558         If the user told us to use a specific encoding, override the
4559         charset from the headers.  (Bug#22222)
4561 2015-12-22  Alan Mackenzie  <acm@muc.de>
4563         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
4565         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
4566         variable `tmp'.
4567         After a failed search for a matching ">", restore point before continuing.
4569 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
4571         Instrument Tramp tests
4573         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
4574         (tramp--test-utf8): Instrument tests.
4576 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
4578         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
4580         * lisp/simple.el (display-message-or-buffer): Call
4581         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
4582         (Bug#22221).
4584 2015-12-22  Juri Linkov  <juri@linkov.net>
4586         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
4588         (save-places-to-alist, save-place-dired-hook):
4589         Check for dired-subdir-alist.  (Bug#19851)
4591 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
4593         Add FIXME comment re stack overflow and modules
4595 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
4597         Revert some recent emacs-module commentary
4599         Most of the recently-added commentary was incorrect, due to the
4600         possibility of stack overflow.
4602 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
4604         Spelling fix: prefer "cooperate" to "co-operate"
4606 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
4608         Port undo fixes to -fno-common
4610         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
4611         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
4612         (buffer_before_last_command_or_undo):
4613         Declare in keyboard.h, and define in keyboard.c,
4614         instead of assuming the traditional Unix relaxed ref-def linkage.
4616 2015-12-20  Philipp Stephani  <phst@google.com>
4618         Improve commentary for emacs-module.c
4620         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
4621         * src/emacs-module.c (module_non_local_exit_get): Document that we
4622         cannot use the current implementation.
4623         (module_is_not_nil, module_eq): Document assumptions about EQ and
4624         NILP.
4626 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
4628         Suppress test on Mac OS X
4630         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
4631         (tramp--test-utf8): Use it.
4633 2015-12-20  Alan Mackenzie  <acm@muc.de>
4635         Merge branch 'scratch/follow' into emacs-25
4637         This allows Isearch, etc., to work well when Follow Mode is active.
4639 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
4641         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
4643 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4645         Fix last commit
4647         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
4648         with numeric argument.
4650 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4652         Document new features of Rmail
4654         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
4655         Document new behavior of 'd' and 'C-d' with numeric argument.
4656         (Rmail Display): Document the rendering of HTML MIME parts.
4658 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4660         Improve documentation of new cl-lib functions
4662         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
4663         Fix wording.
4665 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4667         Document the new feature of 'minibuffer-with-setup-hook'
4669         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
4670         added to `minibuffer-setup-hook'.
4672 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4674         Document new features of Font Lock
4676         * doc/lispref/modes.texi (Other Font Lock Variables): Document
4677         'font-lock-flush-function' and 'font-lock-ensure-function'.
4678         (Font Lock Basics): Document the basic fontification functions
4679         referenced in "Other Font Lock Variables".
4681         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
4683 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4685         Document new features of Rectangle mode
4687         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
4688         rectangle-mark-mode.
4690 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4692         Manual followup to last change
4694         * doc/lispref/display.texi (Displaying Messages): Sync with the
4695         doc string.  (Bug#22210)
4697 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4699         Clarify doc string of 'display-message-or-buffer'
4701         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
4702         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
4704 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4706         * doc/emacs/emacs.texi (Top): Update top-level menus.
4708         * doc/lispref/elisp.texi (Top): Update top-level menus.
4710 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4712         Document how to avoid file-local variables that aren't
4714         * doc/emacs/custom.texi (Specifying File Variables): Describe how
4715         to prevent Emacs from interpreting unrelated text as file-local
4716         variables.  (Bug#22166)
4718 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
4720         Fix a typo in eterm-color's termcap entry
4722         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
4723         entry.  (Bug#22184)
4725 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4727         Allow 'browse-url-emacs' visit non-existent URLs
4729         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
4730         signal an error if VISIT is non-nil, to more faithfully emulate
4731         the behavior of 'insert-file-contents'.  (Bug#22160)
4733 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
4735         Remove SunOS 4.x cruft
4737         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
4738         * lib-src/pop.c [sun]: Remove no-longer-needed include.
4739         * lwlib/xlwmenu.c (SUNSO41): Remove.
4741 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
4743         Merge from gnulib
4745         This mostly commentary fixes.
4746         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
4747         * lib/gnulib.mk: Regenerate with new gnulib-tool.
4749 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
4751         Minor fixes in Tramp
4753         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
4754         Reorder ls arguments.
4756         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
4758 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
4760         Make tramp a built-in package
4762         * lisp/finder.el (finder-compile-keywords): Update
4763         `package--builtins' also when Version: keyword is available.
4765         * lisp/net/trampver.el: Add Version: keyword.
4766         (tramp-version): Change it to "2.2.13.25.1", in order to be
4767         compatible with `version-to-list'.
4769 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
4771         * etc/tutorials/TUTORIAL.it: Update and fix typos.
4773 2015-12-18  Alan Mackenzie  <acm@muc.de>
4775         Rename `recenter-group' to `recenter-window-group'
4777         * doc/lispref/windows.texi (Textual Scrolling)
4778         * lisp/window.el (top level, recenter-group)
4779         * lisp/follow.el (follow-mode)
4780         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
4781         `recenter-window-group' and `recenter-group-function' to
4782         `recenter-window-group-function'.
4784 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
4786         Fix vertical-motion in tabulated-list mode
4788         * src/indent.c (Fvertical_motion): When moving from line beginning
4789         to point under line truncation, assume overshoot by one line only
4790         if point actually lies beyond the window's right margin.
4791         (Bug#22194)
4793 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
4795         Don't have help functions call x-display-pixel-width/-height on ttys
4797         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
4798         Don't call x-display-pixel-width/-height on ttys.
4800 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
4802         Use 'hg id' in vc-hg-previous-revision
4804         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
4805         Use 'hg id' to retrieve it (bug#22032).
4807 2015-12-17  Alan Mackenzie  <acm@muc.de>
4809         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
4811 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
4813         Fix a typo in the Emacs manual
4815         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
4816         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
4818 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
4820         Fix parsing netrc entries with ports
4822         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
4823         make a list out of 't'.  (Bug#22188)
4825         * test/automated/auth-source-tests.el
4826         (auth-source-test-netrc-parse-entry): New test.
4828 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
4830         Fix typo in Doug Lea malloc configure log
4832         * configure.ac (emacs_cv_var_doug_lea_malloc):
4833         Fix typo that confused the log output of 'configure'.
4835 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
4837         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
4839 2015-12-16  Alan Mackenzie  <acm@muc.de>
4841         * etc/NEWS: Move entry on pcase to correct section
4843         (Accidentally omitted from previous commit)
4845 2015-12-16  Alan Mackenzie  <acm@muc.de>
4847         Add documentation for changes to Show Paren mode.
4849         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
4851         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
4852         options, including the new show-paren-when-point-inside-paren and
4853         show-paren-when-point-in-periphery.
4855         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
4856         Move an entry on pcase to the Lisp Changes section.
4858 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
4860         Document Eldoc changes
4862         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
4864 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
4866         Fix invocation of Python and Guile interpreters from gdb-mi
4868         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
4869         commands for interactive Python and Guile interpreters.
4870         (gdb-send): Recognize various ways of exiting from Python and
4871         Guile interpreters and returning to GDB.  For details, see
4872         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
4873         and http://stackoverflow.com/questions/31514741.
4875 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
4877         Remove attempt to use C11 threads
4879         C11 threads are not needed for Emacs now, and their use is causing
4880         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
4881         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
4882         * configure.ac: Do not check for C11 threads. Remove unnecessary
4883         fiddling with CPPFLAGS when configuring pthreads.
4884         * src/emacs-module.c (main_thread, check_main_thread)
4885         (module_init): Do not worry about C11 threads.
4887 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4889         Set utf8 encoding with stty in Tramp
4891         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4892         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
4893         encoding with stty.
4895 2015-12-15  Alan Mackenzie  <acm@muc.de>
4897         Tidy up documentation associated with window groups.
4899         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
4900         Groups".  Correct example function to `window-group-start'.
4901         (Window Start and End, Textual scrolling): Point to the new anchor.  State
4902         that (most of) the args in window group functions have the same meaning as for
4903         the corresponding window primitives.
4905         * doc/lispref/positions.texi (Screen Lines).  Same as above.
4907 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4909         Complete last commit
4911         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4912         Move uname check up.  Handle Mac OS X eol encoding.
4914 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4916         Handle Mac OS X eol encoding in Tramp
4918         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4919         Handle Mac OS X eol encoding.
4921 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4923         Fix variable name typo in compute_tip_xy
4925         * src/w32fns.c (compute_tip_xy):
4926         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
4927         when `right' is integer.
4929 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
4931         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
4933 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
4935         Revert "Fix rx matcher overflow without limiting"
4937         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
4939 2015-12-14  Alan Mackenzie  <acm@muc.de>
4941         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
4943         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
4944         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
4946 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
4948         Fix rx matcher overflow without limiting
4950         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
4951         change to the regexp without imposing a limit on the length of the
4952         options.
4954 2015-12-14  Alan Mackenzie  <acm@muc.de>
4956         Enhance ispell-skip-region-alist by generating part of it at runtime.
4958         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
4959         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
4960         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
4961         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
4962         Include the result of ispell--make-filename-or-URL-re in regexps.
4964 2015-12-14  Glenn Morris  <rgm@gnu.org>
4966         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
4968 2015-12-14  Alan Mackenzie  <acm@muc.de>
4970         Replace GROUP argument in six window primitives by new functions.
4972         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
4973         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
4974         from description of six window functions.  Add in description of new functions
4975         window-group-start, window-group-end, set-window-group-start,
4976         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
4977         together with the six variables indirecting to the pertinent group
4978         functions.
4980         * src/window.c
4981         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
4982         applies to these two files, which added the GROUP argument to six window
4983         primitives.
4985         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
4986         functions.
4988         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
4989         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
4990         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
4991         to window primitives (e.g. window-start) with a GROUP argument by calls to
4992         new functions (e.g. window-group-start).
4994         * lisp/ispell.el (ispell-command-loop): Replace call to
4995         pos-visible-in-window-p with pos-visible-in-window-group-p.
4997         * lisp/window.el (window-group-start, window-group-end)
4998         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
4999         (selected-window-group, move-to-window-group-line): New functions.
5000         (window-group-start-function, window-group-end-function)
5001         (set-window-group-start-function, recenter-group-function)
5002         (pos-visible-in-window-group-p-function, selected-window-group-function)
5003         (move-to-window-group-line-function): New variables.
5005 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
5007         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
5009 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
5011         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
5013 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
5015         Improve regex to not trigger stack overflow
5017         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
5018         order not to trigger a stack overflow in regex matcher with unbalanced
5019         brackets (bug#22146).
5021 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
5023         Fix visiting files with raw-text
5025         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
5026         when some stuff was actually read.  (Bug#22162)
5028 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
5030         Fix regex matching keyval labels
5032         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
5033         matching keyval labels.
5035 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
5037         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
5039         ... in case of Tramp.  (Bug#20821)
5041 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
5043         Fix performance regression with gcc -O0
5045         This fixes the smaller performance hit that I noted in:
5046         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
5047         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
5048         * src/puresize.h (puresize_h_PURE_P)
5049         (puresize_h_CHECK_IMPURE):
5050         New macros, with the old contents of the functions.
5051         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
5052         * src/puresize.h (PURE_P, CHECK_IMPURE):
5053         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
5054         * src/conf_post.h (ATTRIBUTE_UNUSED):
5055         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
5057 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
5059         * lisp/emacs-lisp/package.el (package-unpack): Security check
5061         Check that we received the package we were offered.
5063 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
5065         * lisp/emacs-lisp/package.el (package--compile): Don't activate
5067         `package-unpack' takes care of all activations now (other than
5068         `package-initialize).  `package--compile' now only compiles.
5070 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5072         Document the new bindings of <UP> and <DOWN> in the minibuffer
5074         * doc/emacs/mini.texi (Minibuffer History): Describe the new
5075         bindings of <UP> and <DOWN> in the minibuffer.
5077 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5079         Document new features of Ido
5081         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
5083 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
5085         Fix frame height calculations with added menu bar on Windows (Bug#22105)
5087         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
5088         when simultaneously specifying multiple parameters for
5089         `modify-frame-parameters' that all may change the frame's size.
5090         * src/w32fns.c (x_set_menu_bar_lines): Don't set
5091         windows_or_buffers_changed here.
5092         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
5093         with third argument false.
5094         * src/w32menu.c (set_frame_menubar): Set
5095         windows_or_buffers_changed here.
5096         * src/w32term.c (x_set_window_size): Determine third argument of
5097         AdjustWindowRect from whether the frame has a menu bar and not
5098         from whether it wants one.
5100 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5102         Document the change in interactive shell mode
5104         * doc/emacs/misc.texi (Interactive Shell): Document that the
5105         '*shell*' buffer by default displays in a new window.
5107 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5109         Document new features of package.el
5111         * doc/emacs/package.texi (Package Menu): Document the 'external'
5112         status and the new menu commands.
5113         (Package Installation): Document archive priorities.
5115         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
5116         (package-menu-hide-low-priority): Doc fix.
5118 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5120         Update and document new features of xterm support
5122         * doc/emacs/frames.texi (Text-Only Mouse): Document that
5123         track-mouse is supported by newer xterm versions.
5125 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5127         Document new features of Prettify Mode
5129         * doc/emacs/programs.texi (Misc for Programs): Document
5130         'prettify-symbols-compose-predicate' and
5131         'prettify-symbols-unprettify-at-point'.
5133         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
5134         (prettify-symbols-default-compose-p)
5135         (prettify-symbols-compose-predicate)
5136         (prettify-symbols--compose-symbol): Doc fixes.
5138 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5140         Document multi-mode indentation facilities
5142         * doc/lispref/text.texi (Mode-Specific Indent): Document
5143         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
5145         * lisp/progmodes/prog-mode.el (prog-indentation-context)
5146         (prog-widen): Doc fixes.
5148 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5150         Document 'vc-refresh-state'
5152         * doc/emacs/maintaining.texi (Version Control): Document
5153         'vc-refresh-state'.
5155         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
5157 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5159         Fix echo for "C-u"
5161         * src/keyboard.c (command_loop_1): Undo last change.  It caused
5162         duplicate echo of C-u.  (Bug#22107)
5164 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5166         Avoid errors when creating files under SVN in new directory
5168         * lisp/vc/vc-svn.el (vc-svn-registered): Use
5169         file-accessible-directory-p, to avoid cd'ing to a non-existing
5170         directory, which signals an error on some systems.  (Bug#21984)
5171         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
5172         Use declare-function to avoid byte-compiler warnings.
5174 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5176         Improve Lua support in etags
5178         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
5179         "function".
5181         * etc/NEWS: Mention improved Lua support by 'etags'.
5183         * test/etags/lua-src/test.lua (test): Add tests for indented
5184         function definitions.
5185         * test/etags/ETAGS.good_1:
5186         * test/etags/ETAGS.good_2:
5187         * test/etags/ETAGS.good_3:
5188         * test/etags/ETAGS.good_4:
5189         * test/etags/ETAGS.good_5:
5190         * test/etags/ETAGS.good_6:
5191         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
5193 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5195         Fix 'this-command-keys' wrt prefix argument
5197         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
5198         was part of this-command-keys, but not of this-single-command-keys.
5199         (Bug#22107)
5201         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
5202         commentary about the function's return value.
5204 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5206         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
5208 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5210         Improve and document Ruby support in 'etags'
5212         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
5213         (Ruby_functions): Support "module" and overloaded operators.
5214         (Ruby_help): Mention "module".
5216         * test/etags/ruby-src/test.rb:
5217         * test/etags/ruby-src/test1.ruby: New files.
5218         * test/etags/Makefile (RBSRC): New tests.
5219         (SRCS): Add ${RBSRC}.
5220         * test/etags/ETAGS.good_1:
5221         * test/etags/ETAGS.good_2:
5222         * test/etags/ETAGS.good_3:
5223         * test/etags/ETAGS.good_4:
5224         * test/etags/ETAGS.good_5:
5225         * test/etags/ETAGS.good_6:
5226         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
5228         * doc/man/etags.1: Mention Ruby support.
5229         * etc/NEWS: Mention Ruby support.
5231 2015-12-11  Xi Lu  <lx@shellcodes.org>
5233         Initial support for Ruby in 'etags'
5235         * lib-src/etags.c <Ruby_suffixes>: New variable.
5236         (lang_names): Add an entry for Ruby.
5237         (Ruby_functions): New function.  (Bug#22116)
5239 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5241         Clarify documentation of 'modify-frame-parameters'
5243         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
5244         PARMs" mean for 'modify-frame-parameters'.
5246         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
5247         PARMs" mean for this function.  (Bug#22104)
5249 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5251         Fix setting buffer unibyte when reading from a device
5253         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
5254         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
5256 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5258         Clarify documentation of 'values'
5260         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
5261         updated by any evaluation commands in 'lisp-interaction-mode'.
5262         (Bug#22056)
5264 2015-12-11  Anders Lindgren  <andlind@gmail.com>
5266         Fixed subversion vc error when opening file in new directory (bug#21984).
5268         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
5270 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
5272         Yet another fix for when point ends up in invisible text
5274         * src/xdisp.c (redisplay_window): When someone forced
5275         window-start, and honoring that failed to show the cursor, try
5276         moving out of invisible text, before falling back to the middle of
5277         the window.  (Bug#22098)
5279 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
5281         Fix error in Tramp perl script for cygwin
5283         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
5284         error if file doesn't exist.
5286 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5288         Remove font workaround for limited outdated versions
5290         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
5291         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
5293 2015-12-09  Anders Lindgren  <andlind@gmail.com>
5295         Don't add "." to load path (bug#21104)
5297         When configured with --enable-locallisppath=no, which is the
5298         default for OS X, the load-path incorrectly was populated with ".".
5300         * src/lread.c (init_lread): Don't call `decode_env_path' when
5301         PATH_SITELOADSEARCH is empty.
5303 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
5305         * lisp/emacs-lisp/package.el (package--with-response-buffer):
5307         Search for the blank-line in the right buffer.
5309 2015-12-08  Glenn Morris  <rgm@gnu.org>
5311         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
5312         for recent change.
5314 2015-12-08  Glenn Morris  <rgm@gnu.org>
5316         Fix some display-warning usage.
5318         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
5319         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
5320         * lisp/calendar/holidays.el (calendar-holiday-list):
5321         * lisp/mail/rmailout.el (rmail-output-read-file-name):
5322         Fix display-warning usage.
5324 2015-12-08  Glenn Morris  <rgm@gnu.org>
5326         * lisp/calendar/cal-html.el: Require diary-lib.
5328         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
5330 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5332         Add Obsolete-since header to eudcb-ph.el
5334         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
5336 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
5338         Spelling fixes
5340         * doc/misc/calc.texi (Predefined Units): Use the bland modern
5341         scientific style for spelling the units “ampere” and
5342         “angstrom” rather than the older style “Ampere” and
5343         “Ångstrom”.  The latter spelling was wrong anyway (it should
5344         have been “Ångström”).
5345         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
5346         Fix misspelling of ‘atom’ in code.
5348 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
5350         Improve documentation of kill commands
5352         * lisp/simple.el (region-extract-function, delete-backward-char)
5353         (delete-forward-char, kill-region, copy-region-as-kill)
5354         (kill-ring-save): Better document the optional argument REGION in
5355         the doc strings.  Mention in the doc strings that text put in the
5356         kill-ring can be filtered by 'filter-buffer-substring'.
5358         * doc/lispref/text.texi (Kill Functions): Mention that functions
5359         described in this subsection can filter text they put in the
5360         kill-ring.  Add a cross-reference to "Buffer Contents" and an
5361         index entry.  Document the optional argument 'region' and its
5362         effect.
5363         (Bug#21315)
5365 2015-12-07  Alan Mackenzie  <acm@muc.de>
5367         Further progress making Isearch, Ispell, Replace work with Follow Mode.
5369         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
5370         no longer exists.  Add follow-post-command-hook to  three special purpose
5371         hooks at setup, and remove them at tear down.
5373         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
5374         isearch-lazy-highlight-new-loop.
5375         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
5376         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
5377         it.
5378         (isearch-lazy-highlight-maybe-new-loop): function removed.
5380         * lisp/replace.el: (replace-update-post-hook): New hook variable.
5381         (perform-replace): Add second (nil) argument to looking-back.  Invoke
5382         replace-update-post-hook before calling replace-highlight.
5384         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
5385         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
5386         call of pos-visible-in-window-p.
5387         (ispell-display-buffer): Place *Choices* window at the top of the last window
5388         in a window group.
5390 2015-12-07  Alan Mackenzie  <acm@muc.de>
5392         Amend doc of `mapconcat': it can take sequences, not merely strings.
5394         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
5395         to say that SEPARATOR and the results from FUNCTION may be any character
5396         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
5398 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
5400         Fix an utf8 problem for Tramp on BSD
5402         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5403         Make lax check for utf8.
5404         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
5406 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5408         Make eudcb-ph.el obsolete
5410         * doc/misc/eudc.texi: Bump version to 1.40.0.
5411         Remove PH/QI sections and mentions.
5412         * lisp/obsolete/eudcb-ph.el: Make obsolete.
5413         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
5414         (eudc-ph-bbdb-conversion-alist): Make obsolete.
5415         * etc/NEWS: Mention this.  (Bug#21191)
5417 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
5419         Remove overenthusiastic eassert
5421         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
5422         previous change.  It breaks on MS-Windows --with-wide-int.
5423         Problem reported by Eli Zaretskii in:
5424         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
5426 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5428         Pacify gcc -Wparentheses
5430         * src/xdisp.c (row_containing_pos): Reparenthesize.
5432 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5434         Port mod-test to 32-bit Emacs --without-wide-int
5436         * modules/mod-test/test.el (mod-test-sum-test):
5437         Bring back the 2**29 tests, but port them to 32-bit Emacs
5438         --without-wide-int.
5440 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
5442         Fix minor Tramp problems found on BSD
5444         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
5445         trailing slash.  Quote apostrophes.
5446         (tramp-sh-handle-file-truename): Do not append trailing slash in
5447         the "ls" case.
5448         (tramp-get-ls-command-with-w-option): New defun.
5449         (tramp-do-file-attributes-with-ls)
5450         (tramp-do-directory-files-and-attributes-with-stat): Use it.
5452         * test/automated/tramp-tests.el
5453         (tramp-test31-special-characters-with-perl)
5454         (tramp-test31-special-characters-with-ls)
5455         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
5456         Suppress also readlink.
5458 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
5460         Fix cursor display when invisible text is at line beginning
5462         * src/xdisp.c (redisplay_window): When scrolling fails to show
5463         point, prefer using the desired matrix if possible for finding the
5464         fallback glyph row for displaying the cursor.  (Bug#22098)
5465         (row_containing_pos): Exit the loop as soon as we hit the first
5466         disabled glyph row.  Otherwise we risk accessing garbled data and
5467         departing to the no-no land.
5469 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5471         Improve module interface when WIDE_EMACS_INT
5473         * src/emacs-module.c (plain_values): New constant.
5474         (module_nil): Now a constant.
5475         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
5476         (syms_of_module): Use if, not #ifdef, so that both sides are
5477         checked at compile-time, and so that GCC doesn’t complain
5478         about an unused var in the typical case.  Also, depend on
5479         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
5480         that WIDE_EMACS_INT implies !USE_LSB_TAG.
5481         (value_to_lisp_bits, lisp_to_value_bits): New functions.
5482         Sign-extend integers rather than zero-extending them, as small
5483         negative integers are more likely.
5484         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
5485         functions.
5486         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
5487         (mark_modules): Remove.  All uses removed.
5488         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
5489         to GCALIGNMENT.
5490         (syms_of_module): Check that module_nil converts to Qnil.
5491         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
5492         we prefer signed to unsigned when either will do.
5493         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
5494         a bit better for emacs-module.c.
5496 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5498         Port mod-test to x86-64 GNU/Linux running 32-bit
5500         * modules/mod-test/test.el (mod-test-sum-test):
5501         Don’t attempt to match descriptions to operating systems.
5502         It didn’t work on Fedora x86-64 running a 32-bit executable,
5503         and it’s not worth the trouble anyway.
5504         Port to 32-bit platforms by removing an assumption about
5505         fixnum widths.
5507 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
5509         Fix auto-revert-tests.el when filenotify isn't used
5511         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
5512         Make it working also when filenotify isn't used.
5514 2015-12-06  Juri Linkov  <juri@linkov.net>
5516         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
5518         Let-bind isearch-regexp-function to nil.  (Bug#22097)
5520 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5522         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
5524         (package--with-response-buffer): NOERROR and ERROR-FORM only
5525         handle connection errors.
5526         (bad-signature): New error type.
5527         (package--check-signature-content): Use it.
5528         (package--check-signature): Properly distinguish connection errors
5529         from bad-signature errors.  Do the check for
5530         `package-check-signature' `allow-unsigned' here instead of forcing
5531         the callbacks to do it.  Add a new argument, UNWIND.
5532         (package--download-one-archive, package-install-from-archive):
5533         Update usage of `package--check-signature'.
5535 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
5537         Fix Bug#22092.
5539         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
5540           Clean up inconsistent line endings. (Bug#22092)
5541           (icalendar--clean-up-line-endings): New.
5542         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
5543           for Bug#22092.
5545 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5547         Document 'bookmark-set-no-overwrite'
5549         * doc/emacs/regs.texi (Bookmarks): Document the new command
5550         'bookmark-set-no-overwrite' and its keybinding.
5552 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5554         Document new binding of 'mouse-buffer-menu'
5556         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
5557         now also on C-F10.
5559 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5561         Initial documentation of dynamic modules
5563         * doc/lispref/loading.texi (Dynamic Modules): New section with
5564         initial documentation for dynamic modules.
5565         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
5566         detailed menu
5568         * etc/NEWS: Fix typos in dynamic modules' entry.
5570 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5572         Remove copyright statements from trivial test files
5574 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5576         Add "Preliminaries" section to etc/DEBUG
5578         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
5579         Most of the content was suggested by Phillip Lord
5580         <phillip.lord@russet.org.uk>.  Remove the section about debugging
5581         with the Visual Studio, as building Emacs with the Microsoft
5582         compilers is no longer supported.  Minor fixes in some other
5583         sections.
5585 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
5587         Improve parsing of version strings
5589         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
5590         (version-to-list): More helpful error messages.
5591         (version-to-list): ".5" is valid (update docstring).  Make
5592         "22.8X3" invalid, as the doc string says.
5594         * test/automated/subr-tests.el (ert-test-version-parsing): New
5595         tests for version string processing.
5597 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5599         Fix documentation of 'undo' changes
5601         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
5602         English conventions for spelling and whitespace between sentences.
5604         * etc/NEWS: Fix wording and spelling of undo-related entries.
5605         Mark them as documented.
5607 2015-12-05  Glenn Morris  <rgm@gnu.org>
5609         * lisp/net/net-utils.el: Small improvements.
5611         (net-utils--executable-find-sbin): New function.
5612         (ifconfig-program): Check sbin directories.
5613         Fallback to "ip".  (Bug#22091)
5614         (ifconfig-program-options): Check the actual program in use.
5615         (arp-program): Check sbin directories.
5617 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
5619         Fix wrong-type-argument integer-or-marker-p nil error
5621         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
5622         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
5624 2015-12-04  Alan Mackenzie  <acm@muc.de>
5626         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
5628         Merge necessitated by a rebase operation.
5630 2015-12-04  Alan Mackenzie  <acm@muc.de>
5632         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
5634 2015-12-04  Alan Mackenzie  <acm@muc.de>
5636         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
5638         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
5639         Windows" and new @defun selected-window-group.
5640         (Window Start and End): Describe new &optional parameter GROUP and
5641         ...-group-function for window-start, window-end, set-window-start, and
5642         pos-visible-in-window-p.
5643         (Textual Scrolling) Describe the same for recenter.
5644         doc/lispref/positions.texi (Screen Lines): Describe the same for
5645         move-to-window-line.
5647         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
5648         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
5649         new optional parameter "group".  At the beginning of each, check whether the
5650         corresponding ...-group-function is set to a function, and if so execute this
5651         function in place of the normal processing.
5652         (syms_of_window): Define symbols for the six new variables below.
5653         (window-start-group-function, window-end-group-function)
5654         (set-window-start-group-function, recenter-group-function)
5655         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
5656         New permanent local buffer local variables.
5657         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
5658         Fpos_visible_in_window_p.
5660         lisp/window.el (selected-window-group-function): New permanent local buffer
5661         local variable.
5662         (selected-window-group): New function.
5664         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
5665         enable, kill them at mode disable.  Add/remove follow-after-change to/from
5666         after-change-functions.
5667         (follow-start-end-invalid): New variable.
5668         (follow-redisplay): Manipulate follow-start-end-invalid.
5669         (follow-after-change, follow-window-start, follow-window-end)
5670         (follow-set-window-start, follow-pos-visible-in-window-p)
5671         (follow-move-to-window-line, follow-sit-for): New functions.
5673         lisp/isearch.el (isearch-call-message): New macro.
5674         (isearch-update, with-isearch-suspended, isearch-del-char)
5675         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
5676         (with-isearch-suspended): Rearrange code such that isearch-call-message is
5677         invoked before point is moved.
5678         (isearch-message): Add comment about where point must be at function call.
5679         (isearch-search): Remove call to isearch-message.
5680         (isearch-lazy-highlight-window-group): New variable.
5681         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
5682         the battery of tests to ...
5683         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
5684         Note: (sit-for 0) is still called.
5685         (isearch-lazy-highlight-update): Check membership of
5686         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
5687         property.
5688         (isearch-update, isearch-done, isearch-string-out-of-window)
5689         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
5690         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
5691         (isearch-lazy-highlight-update): Call the six amended primitives (see
5692         src/window.c above) with the new `group' argument set to t, to cooperate
5693         with Follow Mode.
5695 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5697         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
5699         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
5700         (ert--explain-format-atom, ert--explain-equal-rec)
5701         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
5702         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
5704 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5706         * lisp/character-fold.el: Remove special case-folding support
5708         (character-fold-to-regexp): Remove special code for
5709         case-folding.  Char-fold search still respects the
5710         `case-fold-search' variable (i.e., f matches F).  This only
5711         removes the code that was added to ensure that f also matched
5712         all chars that F matched.  For instance, after this commit, f
5713         no longer matches 𝔽.
5715         This was necessary because the logic created a regexp with
5716         2^(length of the string) redundant paths.  So, when a very
5717         long string "almost" matched, Emacs took a very long time to
5718         figure out that it didn't.  This became particularly relevant
5719         because isearch's lazy-highlight does a search bounded by (1-
5720         match-end) (which, in most circumstances, is a search that
5721         almost matches).  A recipe for this can be found in bug#22090.
5723 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5725         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
5727         Fixes (bug#21701)
5729 2015-12-04  Daiki Ueno  <ueno@gnu.org>
5731         lisp/gnus/qp.el: Don't replace "from " at bol
5733         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
5734         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
5736 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
5738         Externalize some symbols in undo-auto
5740          * doc/lispref/text.texi: Update symbols.
5741          * lisp/simple.el (undo-auto--amalgamate,
5742            undo-auto--current-boundary-timer): Make symbols public.
5743          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
5744            updated symbol.
5746 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
5748         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
5750 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
5752         Some error message improvements in tramp-sh.el
5754         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5755         Suppress error messages for "mesg" and "biff" calls.
5756         (tramp-get-remote-path): Ignore errors when expanding
5757         `tramp-own-remote-path'.  Raise a warning instead.
5759 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5761         Document 'nacl' value for 'system-type'
5763         * doc/lispref/os.texi (System Environment): Document the 'nacl'
5764         value of 'system-type'.
5766 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5768         Document 'window-max-chars-per-line'
5770         * doc/lispref/windows.texi (Window Sizes): Document
5771         'window-max-chars-per-line'.
5773 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5775         Fix some file headers for the purpose of `package--builtins'
5777         * lisp/emacs-lisp/cl-preloaded.el
5778         * lisp/emacs-lisp/eieio-compat.el
5779         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
5781         * lisp/ielm.el: Fix summary line.
5783 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5785         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
5787         Reload any previously loaded package files before compiling
5788         the package (also reload the same files after compiling).
5789         This ensures that we have the most recent definitions during
5790         compilation, and avoids generating bad elc files when a macro
5791         changes and it is used in a different file from the one it's
5792         defined in.
5794 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5796         * lisp/emacs-lisp/package.el: Refactor package activation code
5798         (package-activate): Move code that activates dependencies into
5799         package-activate-1.
5800         (package--load-files-for-activation): New function.
5801         (package-activate-1): Add code for (optionally) activating
5802         dependencies, and move file-loading code into
5803         `package--load-files-for-activation'.
5805 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5807         Document new font-related functionality
5809         * doc/lispref/display.texi (Low-Level Font): Document
5810         'default-font-width', 'default-font-height', 'window-font-width',
5811         and 'window-font-height'.
5813         * etc/NEWS: Move entries for 'default-font-width',
5814         'default-font-height', 'window-font-width', and 'window-font-height'
5815         to their place and mark them documented.
5817 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5819         Fix documentation and implementation of 'directory-name-p'
5821         * lisp/files.el (directory-name-p): Modify to recognize
5822         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
5823         accordingly.  Use '=', not char-equal, for comparison, as
5824         letter-case cannot possibly be an issue here.
5826         * doc/lispref/files.texi (Directory Names): Move the documentation
5827         of directory-name-p here from "Relative File Names".  Update the
5828         description per the changes in implementation.
5830         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
5831         place and mark it documented.
5833 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
5835         Minor copyedit in Emacs manual
5837         * doc/emacs/search.texi (Lax Search): Make wording about character
5838         folding by default less definitive.  (Bug#22043)
5840 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
5842         More emacs-module.c fixes for wide ints
5844         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
5845         unsigned data types to manipulate pointers, to avoid sign
5846         extension coming after us with a vengeance.
5848         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
5849         Emacs with wide ints that verify integer values near the critical
5850         value that requires us to switch to a cons cell.
5852 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
5854         Fix bug#22069 in cl-generic.el
5856         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
5857         not run thru `format'.
5859 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
5861         APPEND etags--xref-backend to xref-backend-functions
5863         * lisp/progmodes/xref.el (xref-backend-functions):
5864         Use APPEND when adding the default element
5865         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
5867 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5869         More accurate documentation of lax whitespace matching
5871         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
5872         (word-search-backward, word-search-forward)
5873         (word-search-backward-lax, word-search-forward-lax): Mention in
5874         doc strings that toggling lax whitespace matching has no effect on
5875         these commands.
5877         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
5878         lax whitespace matching has no effect on these commands.
5880 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5882         Fix emacs-module.c for wide ints
5884         * src/emacs-module.c (lisp_to_value): Compare the produced value
5885         with the original Lisp object, not with the one potentially
5886         converted into a Lisp_Cons.  Fixes assertion violations when
5887         working with integers larger than fit into a 32-bit value.
5889         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
5890         large integers, to test --with-wide-int.
5892 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5894         Document 'directory-files-recursively'
5896         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
5897         the argument MATCH to REGEXP, to be more explicit about its form.
5899         * doc/lispref/files.texi (Contents of Directories): Improve the
5900         documentation of 'directory-files-recursively'.  Add
5901         cross-references.
5903         * etc/NEWS: Move the entry for 'directory-files-recursively' to
5904         its place and mark it documented.
5906 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5908         Document 'inhibit-read-only' property
5910         * doc/lispref/text.texi (Special Properties): Describe the new
5911         'inhibit-read-only' text property.  Add cross-reference to where
5912         read-only buffers are described.
5913         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
5914         'inhibit-read-only' property exempts text from being read-only.
5915         Add cross-reference to "Special Properties".
5917         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
5918         its place and mark it documented.
5920 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
5922         * lisp/emacs-lisp/package.el: Update header comments
5924 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
5926         * lisp/character-fold.el: Add back multi-char matching
5928         (character-fold-to-regexp): Uncomment recently commented code
5929         and make the algorithm "dummer" by not checking every possible
5930         combination.  This will miss some possible matches, but it
5931         greatly reduces regexp size.
5933         * test/automated/character-fold-tests.el
5934         (character-fold--test-fold-to-regexp): Comment out test of
5935         functionality no longer supported.
5937 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
5939         * doc/emacs/ack.texi (Acknowledgments): Update.
5941 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
5943         Check `file-remote-p' over absolute files names in files.el
5945         * lisp/files.el (directory-files-recursively)
5946         (get-free-disk-space): Check `file-remote-p' over absolute files names.
5948 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
5950                 * src/lread.c (syms_of_lread): Doc fix.
5952 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
5954         Don't mistake certain JS method calls for keywords
5956         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
5957         Braceless keyword can't come after a period (bug#22063).
5959 2015-12-01  David Reitter  <david.reitter@gmail.com>
5961         Read frame_title_format from buffer-local variable for NS port
5963         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
5964         icon-title-format variables from buffer in appropriate window.
5965         (Bug#22048)
5967 2015-12-01  Juri Linkov  <juri@linkov.net>
5969         * lisp/replace.el (occur-engine): Count matches in empty lines.
5971         (Bug#22062)
5973 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
5975         * src/emacs-module.h: Fix finalizer typedef for C++11
5977         C++11 standard doesn't allow exception-specification in typedef.
5978         The workaround is to declare a dummy function prototype and use
5979         decltype on it.
5981 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
5983         Fix last change
5985         * src/emacs-module.c (lisp_to_value, value_to_lisp)
5986         [WIDE_EMACS_INT]: Avoid compiler warnings.
5988 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
5990         Rely on conservative stack scanning to find "emacs_value"s
5992         * src/emacs-module.c (struct emacs_value_tag)
5993         (struct emacs_value_frame, struct emacs_value_storage): Remove.
5994         (value_frame_size): Remove constant.
5995         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
5996         (lisp_to_value): Remove first arg.
5997         (module_nil): New constant.
5998         Use it instead of NULL when returning an emacs_value.
5999         (module_make_function): Adjust to new calling convention of
6000         Qinternal_module_call.
6001         (DEFUN): Receive args in an array rather than a list.
6002         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
6003         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
6004         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
6005         Adjust to new type of non_local_exit info.
6006         (ltv_mark) [WIDE_EMACS_INT]: New constant.
6007         (value_to_lisp, lisp_to_value): Rewrite.
6008         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
6009         (allocate_emacs_value): Remove function.
6010         (mark_modules): Gut it.
6011         (initialize_environment): Don't initialize storage any more.
6012         Keep the actual env object on Vmodule_environments.
6013         (finalize_environment): Don't finalize storage any more.
6014         (syms_of_module): Initialize ltv_mark and module_nil.
6016         * src/emacs-module.h (emacs_value): Make it more clear that this type
6017         is really opaque, including the fact that NULL may not be valid.
6019         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
6020         Don't assume that NULL is a valid emacs_value.
6022 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
6024         Yet another doc improvement for search commands
6026         * doc/emacs/search.texi (Word Search, Symbol Search)
6027         (Regexp Search): Document commands that don't support lax
6028         whitespace matching or character folding.
6029         (Nonincremental Search): Mention the search commands that can be
6030         invoked from the menu bar.
6032         * lisp/isearch.el (isearch-define-mode-toggle-word)
6033         (isearch-define-mode-toggle-symbol)
6034         (isearch-define-mode-toggle-character-fold): Note in the doc
6035         string that turning these on exits the regexp mode.
6036         (isearch-forward-regexp, isearch-forward-word)
6037         (isearch-forward-symbol, isearch-backward-regexp)
6038         (word-search-backward, word-search-forward)
6039         (word-search-backward-lax, word-search-forward-lax): State in the
6040         doc string which commands don't support character folding and/or
6041         lax-whitespace matching.
6043 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
6045         Run `window-size-change-functions' also when reading from minibuffer
6047         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
6048         also when reading from minibuffer.
6050 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
6052         Fix scrambling of html-rendered item buffers
6054         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
6055           scrambling of contents by wrapping call to html-renderer in
6056           save-selected-window.
6058 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6060         Fix font typo in previous doc fix.
6062 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6064         A bit more security doc, esp. file local vars
6066         * doc/emacs/emacs.texi (Top):
6067         * doc/emacs/misc.texi (Miscellaneous Commands):
6068         Refer to new Host Security section.
6069         (Host Security): New section.
6070         * doc/lispref/os.texi (Security Considerations):
6071         Mention file local variables.
6073 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6075         * lisp/character-fold.el: Comment out branching code
6077         (character-fold-to-regexp): Comment out code that uses multi-char
6078         table.  The branching caused by this induces absurdly long regexps,
6079         up to 10k chars for as little as 25 input characters.
6081 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6083         Spelling and grammar fixes
6085 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
6087         Make lisp-completion-at-point a wrapper instead of an alias
6089         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
6090         Turn into an obsolete wrapper around elisp-completion-at-point
6091         (bug#20455).
6093 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6095         * lisp/isearch.el (isearch-search-fun-default): Nicer error
6097         message when the search fails.
6099 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
6101         Update menu-bar-goto-uses-etags-p for the current xref API
6103         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
6104         xref-backend-functions, instead of now-nonexistent
6105         xref-find-function.
6107 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6109         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
6111 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6113         * lisp/menu-bar.el: Use folding in searches
6115         (nonincremental-search-forward): Use `isearch-search-fun-default'
6116         to determine the search function.
6117         (nonincremental-search-backward)
6118         (nonincremental-repeat-search-forward)
6119         (nonincremental-repeat-search-backward): Use it.
6121 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6123         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
6125 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6127         * lisp/character-fold.el (character-fold-to-regexp): Be careful
6129         not to return huge regexps.
6131 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6133         Improve documentation of string-collate-* functions
6135         * doc/lispref/strings.texi (Text Comparison): Improve wording and
6136         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
6138         * etc/NEWS: Move the entry of 'string-collate-equalp' and
6139         'string-collate-lessp' to "Lisp Changes" section and mark it as
6140         documented.
6142 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6144         Document truncate-string-ellipsis
6146         * doc/lispref/display.texi (Size of Displayed Text): Document
6147         'truncate-string-ellipsis'.
6149         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
6150         (truncate-string-to-width): Mention in the doc string that the
6151         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
6153         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
6154         Changes" section.
6156 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6158         Fix confusion wrt character folding in the Emacs manual
6160         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
6161         Document that invoking search-forward/backward and
6162         re-search-forward/backward supports only case folding, but not the
6163         rest of the lax-search features.  Reported by Mike Kupfer
6164         <m.kupfer@acm.org>.
6166 2015-11-29  Ken Brown  <kbrown@cornell.edu>
6168         Update mod-test-sum-test
6170         * modules/mod-test/test.el (mod-test-sum-test): Update to
6171         accommodate the lack of dladdr on Cygwin.
6173 2015-11-29  Alan Mackenzie  <acm@muc.de>
6175         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
6177         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
6178         to `funcall', (i) Output an error message; (ii) Generate code to signal a
6179         `wrong-number-of-arguments' error.
6181 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
6183         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
6185 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6187         * lisp/character-fold.el (character-fold-to-regexp)
6189         Warn about using long strings.
6191         * test/automated/character-fold-tests.el
6192         (character-fold--test-lax-whitespace)
6193         (character-fold--test-consistency): Reduce string size for tests.
6195 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6197         Document renaming of x-select-enable-* variables
6199         * doc/emacs/killing.texi (Clipboard): Rename
6200         x-select-enable-clipboard to select-enable-clipboard and
6201         x-select-enable-primary to select-enable-primary.  Update index
6202         entries.
6204         * etc/NEWS: Mark entry as documented.
6206 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6208         Document the shorthand hints displayed by M-x
6210         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
6211         suggest-key-bindings.  Document the shorthand hints for commands
6212         that have no key bindings.  Document that M-x completion ignores
6213         obsolete commands.
6215         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
6216         documented.
6218 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6220         Update docs of character folding
6222         * doc/emacs/search.texi (Lax Search): Update the description of
6223         character folding for the latest changes.
6225 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6227         * lisp/character-fold.el: Also play nice with case-folding
6229         (character-fold-to-regexp): Take `case-fold-search' into account.
6231 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6233         * lisp/character-fold.el: Add support for multi-char matches
6235         (character-fold-table): Now has an extra-slot. This is a second
6236         char-table that holds multi-character matches.  See docstring for
6237         details.
6238         (character-fold-to-regexp): Can build branching regexps when a
6239         character's entry the extra slot of `character-fold-table' matches the
6240         characters that succeed it.
6242 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6244         * lisp/character-fold.el: Code simplifications
6246         (character-fold-table): Reduce the scope of a variable.
6247         (character-fold-to-regexp): Change logic to work directly on the
6248         input string.  It's a little easier to understand, probably
6249         faster, and sets us up for implementing multi-char matches.
6251         * test/automated/character-fold-tests.el
6252         (character-fold--test-fold-to-regexp): New test.
6254 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6256         Document changes in "C-h l"
6258         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
6260         * etc/NEWS: mark "C-h l" changes as documented.
6262 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6264         Finalize documentation of 'custom-prompt-customize-unsaved-options'
6266         * doc/emacs/custom.texi (Saving Customizations): Index the new
6267         function 'custom-prompt-customize-unsaved-options'.
6269         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
6270         is useful.
6272 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6274         Document 'comment-line'
6276         * doc/emacs/programs.texi (Comment Commands): Document
6277         'comment-line'.
6279         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
6281 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6283         Document new checkdoc features
6285         * doc/lispref/tips.texi (Tips, Library Headers): Document the
6286         keyword-checking features of checkdoc and the commands
6287         'checkdoc-file' and 'checkdoc-current-buffer'.
6289         * etc/NEWS: Move the checkdoc-related entries to their own
6290         section.
6292 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
6294         Simplify the prologue of emacs-module.c functions
6296         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
6297         (module_make_global_ref)
6298         (module_free_global_ref, module_make_function, module_funcall)
6299         (module_intern, module_type_of, module_extract_integer)
6300         (module_make_integer, module_extract_float, module_make_float)
6301         (module_copy_string_contents, module_make_string)
6302         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
6303         (module_get_user_finalizer, module_set_user_finalizer)
6304         (module_vec_set, module_vec_get, module_vec_size): Use new helper
6305         macro MODULE_FUNCTION_BEGIN.
6307 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6309         Don't reject module calls with no arguments
6311         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
6313 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
6315         Make module-call be visible from Lisp
6317         * src/emacs-module.c (module_make_function): Use internal--module-call.
6318         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
6319         checks.
6320         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
6321         defsubr internal--module-call.
6323 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6325         Add etags tests for the recent Lua-related bugfix
6327         * test/etags/lua-src/test.lua: New file, tests the issues raised
6328         by bug#21934.
6329         * test/etags/Makefile (LUASRC): Add test.lua.
6330         * test/etags/ETAGS.good_1:
6331         * test/etags/ETAGS.good_2:
6332         * test/etags/ETAGS.good_3:
6333         * test/etags/ETAGS.good_4:
6334         * test/etags/ETAGS.good_5:
6335         * test/etags/ETAGS.good_6:
6336         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
6337         regression fix, resolved around 25 May 2015, required changes to
6338         the "good" ETAGS files.
6340 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6342         Fix Lua tags when a function name includes '.' or ':'
6344         * lib-src/etags.c (Lua_functions): Add a tag for the last element
6345         of a function name after a dot or a colon.  (Bug#21934)
6347 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6349         Improve documentation of search and replace commands
6351         * doc/emacs/search.texi (Replacement and Lax Matches): Document
6352         which commands are affected by 'replace-character-fold'.
6353         (Lax Search): Add a cross reference to "Replacement and Lax
6354         Matches".  Improve wording.  Fix lost extra whitespace.
6355         (Search Customizations): Improve wording.  (Bug#22036)
6356         See also comments in
6357         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
6359         * lisp/replace.el (query-replace, query-replace-regexp)
6360         (query-replace-regexp-eval, replace-string, replace-regexp):
6361         Mention 'replace-character-fold' in the doc strings.
6363 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
6365         Fix minor problems found by static checking
6367         * src/undo.c (prepare_record): Add proper prototype for C.
6369 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
6371         * src/emacs-module.c (struct env_storage): Delete
6373         (struct emacs_runtime_private): Keep an emacs_env instead.
6374         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
6375         (initialize_environment): Split the arg in two.  Adjust all callers.
6376         Only store the private part in Vmodule_environments.
6377         (finalize_environment): Change the arg to only be the private env.
6378         Adjust all callers.
6380 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6382         Improve documentation of 'replace-character-fold'
6384         * lisp/replace.el (replace-character-fold): Clarify which commands
6385         are affected by this variable.
6387 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
6389         Backport: Add interactive seek command.
6391         * lisp/mpc.el (mpc-cmd-seekcur): New function.
6392         (mpc-seek-current): New command.
6393         (mpc-mode-menu): Add entry for mpc-seek-current
6394         (mpc-mode-map): Bind mpc-seek-current to "g"
6396 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
6398         Autoload etags when using its xref backend
6400         * lisp/progmodes/xref.el (xref--etags-backend):
6401         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
6402         (Bug#22026)
6404 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6406         * lisp/character-fold.el: Allow complex chars to match their decomposition
6408         (character-fold-table): When a character's decomposition does not
6409         involve a formatting tag (i.e., if it has an "exact" description via
6410         other characters), then this character is allowed to match the
6411         decomposition.
6413 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6415         * lisp/character-fold.el: More descriptive variable names
6417         (character-fold-table): Rename a lot of the lexical variables to
6418         make the code easier to read.
6420 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6422         * lisp/isearch.el: Ensure we still support `isearch-new-word'
6424         (isearch-new-regexp-function): Define variable.
6425         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
6427 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6429         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6431 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
6433         * test/automated/abbrev-tests.el: Define more tests
6435         (abbrev-table-name-test, kill-all-abbrevs-test)
6436         (clear-abbrev-table-test): New tests.
6438 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6440         Add module tests for wrong-type-argument
6442         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
6443         wrong-type-argument.
6445 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6447         Improve handling of signals and 'throw' in modules
6449         * src/emacs-module.c: Add commentary explaining how to write
6450         functions in this file.
6451         (module_make_global_ref, module_free_global_ref)
6452         (module_non_local_exit_signal, module_non_local_exit_throw)
6453         (module_make_function, module_funcall, module_intern)
6454         (module_type_of, module_is_not_nil, module_eq)
6455         (module_extract_integer, module_make_integer)
6456         (module_extract_float, module_make_float)
6457         (module_copy_string_contents, module_make_string)
6458         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
6459         (module_get_user_finalizer, module_set_user_finalizer)
6460         (module_vec_set, module_vec_get, module_vec_size)
6461         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
6462         Do nothing and return with failure indication immediately, if some
6463         previous module call signaled an error or wants to throw.  See
6464         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
6465         for the relevant discussions.
6467 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6469         Add ':version' tag to 'checkdoc-package-keywords-flag'
6471         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
6472         Add a ':version' tag.
6474 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6476         Improve documentation of 'eval-buffer' and 'eval-region'
6478         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
6480         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
6481         "accessible portion of buffer".
6483 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6485         Unbreak the Cygwin w32 build
6487         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
6488         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6490 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6492         Improve commentary in character-fold.el
6494         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
6495         description from commit log message to comments.  (Bug#22019)
6497 2015-11-26  Alan Mackenzie  <acm@muc.de>
6499         Byte Compiler: generate code to adjust stack count after call to `signal'.
6501         Corrects change from earlier today.
6503         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
6504         `byte-compile--for-effect' as argument to `byte-compile-form'.
6506 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
6508         Improve commentary of prepare_to_modify_buffer_1
6510         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
6511         that this function runs Lisp.  Suggested by Richard Stallman
6512         <rms@gnu.org>.
6514 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6516         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6518 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6520         Fix regression after merge.
6522          * src/undo.c (prepare_record): Remove call to run_undoable_change.
6524 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6526         After delete, record point location in undo.
6528         Addresses Bug #21968.
6530                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
6531                 better support intercalating calls.
6532                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
6533                 point and current buffer before each command.
6534                 * src/undo.c (record_point): Now only record the point.
6535                 * src/undo.c (prepare_record): Functionality removed form
6536                 record_point.
6537                 * src/undo.c (record_delete): Check if point needs recording.
6538                 * src/undo.c (undo-boundary): Record value of point before each
6539                 boundary.
6540                 * test/automated/simple-test.el: New tests.
6542         Conflicts:
6543                 src/undo.c
6545 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
6547         Fix compiler warnings in w32.c
6549         * src/w32.c (sys_socket): In case of error, use -1 as return
6550         value, not INVALID_SOCKET, which causes compiler warnings.
6551         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
6552         to the appropriate function signature, to avoid compiler errors.
6553         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
6555 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
6557         Check if the file exists on disk before producing the revert diff
6559         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
6560         exists on disk (bug#20558).
6562 2015-11-26  Alan Mackenzie  <acm@muc.de>
6564         Byte compiler: on setq with an odd number of arguments, generate a `signal'
6566         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
6567         it has an odd number of arguments, to allow bytecomp to handle the error.
6569         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
6570         odd number of arguments, generate a `signal' instead of the normal code.
6572 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
6574         Use find-tag-default for xref-backend-identifier-at-point
6576         * lisp/progmodes/etags.el (find-tag-tag)
6577         (tags-completion-at-point-function): Extract common code as
6578         find-tag--default.
6579         (xref-backend-identifier-at-point): Define in terms of the new
6580         function.
6582 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
6584         * src/undo.c (record_property_change): Remove now-unused local.
6586 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
6588         run_undoable_changes now called from insdel.
6590         The original calls from inside undo.c are not always at a safe position
6591         to call lisp, as they originate in varied positions within insdel.c.
6592         Calling them directly from prepare_to_modify_buffer_1 ensures that they
6593         are always run at the same point.
6595          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
6596          and symbol used.
6597          * src/insdel.c (run_undoable_changes): Add function and symbol.
6599 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
6601         Improve and update documentation of search commands
6603         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
6604         all references changed.  Move the description of lax-whitespace
6605         here.  Add description of the new character folding features and
6606         additional customizable options.
6607         (Isearch Yank): Move before "Error in Search".
6608         (Basic Isearch): Improve wording.  Add index entries.  Add short
6609         description of how to abandon search, making this subsection a
6610         complete introduction to search basics.
6611         (Repeat Isearch): Add index entries.  Describe additional
6612         customizable options.  Describe mouse clicks.
6613         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
6614         area.  Describe more customizable options.
6615         (Error in Isearch): Add index entries.
6616         (Special Isearch): Move actual description of some isearch
6617         commands to other sections, leaving here just the summary of the
6618         commands.  Add command that toggles character folding.  Describe
6619         commands, like "C-h C-h", that were previously omitted for some
6620         reason.
6621         (Not Exiting Isearch): Describe search-exit-option.  Add index
6622         entries.
6623         (Word Search): Describe eww-search-word and eww-search-prefix.
6624         (Symbol Search): Add index entries.
6625         (Regexp Search): Describe regexp-search-ring-max.
6626         (Replacement and Lax Matches): Renamed from "Replacement and
6627         Case"; all references changed.  Describe lax-whitespace matching
6628         in replace commands and related options.  Describe character
6629         folding in replace commands and related options.
6630         (Query Replace): Describe query-replace-from-to-separator and the
6631         new history features.  Add index entries for highlighted text.
6632         Describe query-replace-skip-read-only.  Describe more keys
6633         accepted by query-replace.
6634         (Other Repeating Search): More index entries for Occur.  Describe
6635         list-matching-lines-default-context-lines.
6636         (Search Customizations): New section, documents customizable
6637         options that were not documented until now.
6638         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
6639         "Character Folding".
6641         * etc/NEWS: Move search- and replace-related entries to a single
6642         parent section.
6644         * lisp/replace.el (query-replace-show-replacement): Doc fix.
6645         * lisp/isearch.el (search-nonincremental-instead)
6646         (isearch-hide-immediately): Doc fixes.
6648 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
6650         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
6652         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
6653         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
6654         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
6656 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6658         Fix module_format_fun_env when dynlib_addr fails
6660         * src/emacs-module.c (module_format_fun_env):
6661         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
6662         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
6664 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6666         Disambiguate variable help a bit better
6668         * lisp/help-fns.el (describe-variable): Quote the
6669         variable’s value if it is a symbol other than t or nil.
6670         See: T.V Raman in:
6671         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
6673 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
6675         Pass SVN commit message through log-edit-extract-headers
6677         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
6678         log-edit-extract-headers (bug#18954).
6680 2015-11-24  Alan Mackenzie  <acm@muc.de>
6682         CC Mode: Eliminate compiler warning messages.
6684         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
6685         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
6686         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
6687         (c-awk-set-syntax-table-properties): Clarify comments about
6688         `font-lock-syntactic-keywords'.
6690         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
6691         of this before the real (interpreted) one, to satisfy the byte compiler.
6693 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
6695         Extend the test suite for json.el
6697         * lisp/json.el (json-plist-p): Clarify docstring.
6699         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
6700         macro.
6701         (test-json-join, test-json-alist-p)
6702         (test-json-plist-p, test-json-advance, test-json-peek)
6703         (test-json-pop, test-json-skip-whitespace)
6704         (test-json-read-keyword, test-json-encode-keyword)
6705         (test-json-read-number, test-json-encode-number)
6706         (test-json-read-escaped-char, test-json-read-string)
6707         (test-json-encode-string, test-json-encode-key)
6708         (test-json-new-object, test-json-add-to-object)
6709         (test-json-read-object, test-json-encode-list)
6710         (test-json-read-array, test-json-encode-array)
6711         (test-json-read, test-json-read-from-string)
6712         (test-json-encode): New tests.
6713         (json-read-simple-alist): Merged into `test-json-read-object'.
6714         (json-encode-string-with-special-chars): Merged into
6715         `test-json-encode-string'.
6716         (json-read-string-with-special-chars): Split into
6717         `test-json-encode-string' and `test-json-read-from-string'.
6719 2015-11-24  Anders Lindgren  <andlind@gmail.com>
6721         Fixed bug#18283: Enable applescript in NextStep.
6723         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
6725 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6727         Allow completion on dynamic module files in load-library
6729         * lisp/files.el (load-library): Bind completion-ignored-extensions
6730         to nil, to allow completion on dynamic modules typed as file
6731         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6733 2015-11-24  Alan Mackenzie  <acm@muc.de>
6735         CC Mode: eliminate almost all byte compilation warnings
6737         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
6738         (cc-require): Remove the crude hack that saved and restored
6739         byte-compile-noruntime-functions.
6740         (cc-conditional-require, cc-conditional-require-after-load): New macros.
6742         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
6743         cc-fix.el using the new macros in cc-bytecomp.el.
6745         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
6746         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
6747         forms to remove the superflous quotes.
6749 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6751         Add one more mod-test test
6753         * modules/mod-test/test.el (mod-test-sum-test): Test the error
6754         signaled when the function is invoked with a wrong number of
6755         arguments.
6757 2015-11-24  Philipp Stephani  <phst@google.com>
6759         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
6761 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6763         Implement dynlib_addr for MS-Windows
6765         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
6766         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
6767         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
6768         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
6769         if undefined.
6770         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
6771         zero.
6772         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
6773         the full file name of the module for a given address.
6775 2015-11-24  Alan Mackenzie  <acm@muc.de>
6777         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6779 2015-11-24  Alan Mackenzie  <acm@muc.de>
6781         Squashed commit of the following:
6783         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
6784         Author: Alan Mackenzie <acm@muc.de>
6785         Date:   Tue Nov 24 16:50:09 2015 +0000
6787             Byte compile: minor amendments.
6789             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
6790             add a comment to explain the binding of variables around a subsidiary
6791             compilation.
6792             (byte-compile-new-defuns): Amend the doc string.
6794         commit c537bfed1dda1593d218956ff00c6105a3ff0316
6795         Author: Alan Mackenzie <acm@muc.de>
6796         Date:   Sat Nov 21 18:43:57 2015 +0000
6798             Byte compiler: fix spurious warnings "might not be defined at runtime".
6800             Also initialize byte-compile-noruntime-functions between runs.
6802             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
6803             (byte-compile-initial-macro-environment): For eval-when-compile: bind
6804             byte-compile-unresolved-functions and byte-compile-new-defuns around
6805             byte-compile-top-level, to prevent spurious entries being made.
6806             (byte-compile-warn-about-unresolved-functions): Check whether function is
6807             in byte-compile-new-defuns before emitting a warning about it.
6808             (byte-compile-from-buffer): Initialize new variable and
6809             byte-compile-noruntime-functions to nil.
6810             (byte-compile-file-form-require): record all new functions defined by a
6811             `require' in byte-compile-new-defuns.
6812             (byte-compile-file-form-defmumble): record the new alias in
6813             byte-compile-new-defuns.
6815 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6817         Fix crash at startup related to GC of font entities
6819         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
6820         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
6821         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
6822         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
6823         Don't ifdef away font cache compaction on NT_GUI, as the problems
6824         which led to that seem to have been solved.
6825         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
6826         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
6827         cousins.  (Bug#21999)
6829 2015-11-24  Alan Mackenzie  <acm@muc.de>
6831         Byte compile: Output an error, not a warning, for odd number of args to setq
6833         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
6835 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
6837         Fix kbd_buffer iteration loop in readable_events
6839         * src/keyboard.c (readable_events): Wrap the event pointer back to the
6840         start of the kbd_buffer array inside the top of the loop instead of
6841         right before checking the loop condition, since kbd_fetch_ptr and
6842         kbd_store_ptr point past the end of the array to mean that element 0
6843         is next. (bug#21935)
6845 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6847         Improve text-quoting-style doc again
6849         * doc/lispref/help.texi (Keys in Documentation):
6850         Omit overkill discussion of ‘setq’.  Mention Emacs versions
6851         where ‘grave’ style was standard.
6853 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6855         Improve text-quoting-style doc
6857 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6859         Simplify module_make_function
6861         * src/emacs-module.c (module_make_function):
6862         Simplify by calling build_unibyte_string.
6864 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6866         Port better to FreeBSD’s dlfunc vs dlsym
6868         This avoids warnings when converting between void * and
6869         function pointers, which strict C11 does not allow.
6870         * configure.ac (dlfunc): Check for existence.
6871         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
6872         (dynlib_func): New function.
6873         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
6874         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
6875         dynlib_sym, for function pointers.
6877 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6879         Simplify use of emacs_finalizer_function type
6881         * src/emacs-module.h (emacs_finalizer_function):
6882         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
6883         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
6885 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6887         module_format_fun_env fixes
6889         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
6890         * src/emacs-module.c (module_format_fun_env):
6891         Convert path and sym to UTF-8.
6892         Don’t use VLAs, as the C11 standard says they’re optional,
6893         and anyway they can cause core dumps with large allocations.
6894         Use exprintf rather than snprintf, as exprintf handles arbitrarily
6895         long strings.  Simplify the code a bit.
6897 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
6899         Don't use package-user-dir in elisp-library-roots if it's not bound
6901         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
6902         use package-user-dir if it's not bound (bug#19759).
6904 2015-11-23  Anders Lindgren  <andlind@gmail.com>
6906         New visible-bell for NextStep (OS X El Capitan compatible).
6908         Instead of inverting a rectangle in the middle of the frame, use
6909         the standard NextStep image "caution", represented using an
6910         warning sign with an exclamation mark.  (Bug#21662)
6912         Implemented based on a suggestion drafted by Mustafa Kocaturk.
6914         * src/nsterm.m (EmacsBell): New class for managing the caution
6915         image.  Support multiple active bells, the image is removed once
6916         all bells have timed out.
6917         (ns_timeout): Removed, no longer used.
6918         (ns_ring_bell): Reimplemented to use EmacsBell.
6920 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
6922         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
6924         (remove-function): Ditto. (Bug#20376)
6926 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
6928         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
6930 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
6932         Improve how non-ASCII strings are accepted from modules
6934         * src/emacs-module.c (module_make_function, module_make_string):
6935         Build a unibyte Lisp string and then decode it by UTF-8, instead
6936         of building a multibyte string without decoding.  This is more
6937         tolerant to deviations from UTF-8.
6939 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6941         Port recent module changes to pickier compilers
6943         * src/emacs-module.c (module_make_function)
6944         (module_make_string): Add casts to fix pointer signedness issues.
6946 2015-11-23  Philipp Stephani  <phst@google.com>
6948         Fix how strings are accepted from modules
6950         * src/emacs-module.c (module_make_function, module_make_string): Use
6951         make_multibyte_string.
6952         (module_copy_string_contents): Encode before reading the byte
6953         size.  Return false if and only if an error occurred.
6955 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
6957         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6959 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
6961         Add the tamil-dvorak input method
6963         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
6965         * etc/NEWS: Mention the new input method.
6967 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
6969         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
6971         * src/frame.c (adjust_frame_size): Don't set
6972         FRAME_WINDOW_SIZES_CHANGED here ...
6973         * src/window.c (resize_frame_windows): ... but here, as suggested
6974         by Stefan Monnier.  Also remove some dead code along the way.
6976 2015-11-23  Alan Mackenzie  <acm@muc.de>
6978         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
6980 2015-11-23  Alan Mackenzie  <acm@muc.de>
6982         Signal an error when `setf' gets an odd number of arguments.
6984         * lisp/emacs-lisp/gv.el (setf): Amend.
6986 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6988         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
6990 2015-11-23  Alan Mackenzie  <acm@muc.de>
6992         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
6994 2015-11-23  Alan Mackenzie  <acm@muc.de>
6996         Expunge occurrences of `setq' with an odd number of arguments.
6998         * lisp/apropos.el (apropos-documentation):
6999         * lisp/obsolete/complete.el (PC-include-file-all-completions):
7000         * lisp/progmodes/compile.el (compilation-goto-locus):
7001         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
7002         Insert missing nil at end of `setq' forms.
7004         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
7005         erroneous trailing variable name from a setq, thus allowing a compilation
7006         properly to track functions not defined at runtime.
7008 2015-11-23  John Wiegley  <johnw@newartisans.com>
7010         Add a note about a questionable use of bool in xdisp.c
7012 2015-11-23  Alan Mackenzie  <acm@muc.de>
7014         Issue a warning from the byte compiler on a malformed `setq' form.
7016         Partly fixes bug#20241.
7017         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
7018         `setq' form with an odd number of arguments is compiled.
7020 2015-11-23  Alan Mackenzie  <acm@muc.de>
7022         Don't let cconv_convert insert a nil argument into a `setq' form.
7024         Fixes bug#21983.
7025         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
7026         argument into a `setq' when there're an odd number of args.  This enables the
7027         byte compiler to issue a message in this case.
7029 2015-11-23  Alan Mackenzie  <acm@muc.de>
7031         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
7033         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
7034         (syms_of_eval): Add a DEFSYM for Qsetq.
7036 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
7038         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
7040         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
7042 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7044         Add EUDC BBDB 3 entry in NEWS
7046         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
7048 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7050         Improve EUDC to BBDB 3 export
7052         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
7053         entry to single item.  Add company conversion.
7054         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
7055         (bbdb-parse-phone): Declare function.
7056         (eudc-bbdbify-phone): Add BBDB 3 support.
7057         (Bug#21971)
7059 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7061         Add BBDB 3 support for EUDC export
7063         * lisp/net/eudc.el: Add bbdb-version defvar.
7064         (eudc--using-bbdb-3-or-newer-p): New function.
7065         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
7066         bbdb-create-internal argument list changes introduced in BBDB 3.
7067         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
7068         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
7069         (Bug#21971)
7071 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
7073         Allow loading modules by 'load-file'
7075         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
7076         2nd arg, to avoid the "binding stack not balanced" error.
7077         (syms_of_lread) <module-file-suffix>: New Lisp variable.
7079         * lisp/files.el (module-file-suffix): Declare.
7080         (load-file): Remove 'module-file-suffix' from
7081         'completion-ignored-extensions', to allow completion on modules.
7083         * etc/NEWS: Mention 'module-file-suffix'.
7085 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
7087         Fix unoptimized builds
7089         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
7090         builds.
7092 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
7094         Work around the asynchronous-empty-diff problem
7096         * lisp/vc/vc-rcs.el (vc-rcs-diff):
7097         * lisp/vc/vc-mtn.el (vc-mtn-diff):
7098         * lisp/vc/vc-hg.el (vc-hg-diff):
7099         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
7100         do a synchronous process call (bug#21969).
7102 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
7104         Finish excising electric indent from `open-line'
7106         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
7108         * test/automated/simple-test.el (open-line-indent, open-line-hook):
7109           Adjust accordingly.
7111         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
7112         (git commit c59353896) started.  It turns out that having INTERACTIVE
7113         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
7114         still had the electric indent behavior, as `post-self-insert-hook'
7115         normally contains `electric-indent-post-self-insert-function' ever
7116         since `electric-indent-mode' has been on by default.  Tracing the code
7117         change in `open-line' is mildly twisty, because Artur Malabarba's
7118         earliest two commits of 24 Oct 2015 first removed the `interactive'
7119         form entirely (git commit 6939896e2) and then restored it with the new
7120         extra "p" already added (git commit bd4f04f86), such that there is no
7121         single-commit diff in which one sees the second "p" appear.  Thus this
7122         change is effectively a reversion of parts of each of those commits.
7124         This could close bug#21884, at least until further discussion.
7126 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
7128         Adhere closer to the "implicit tag name" definition
7130         * lisp/progmodes/etags.el (etags-tags-completion-table):
7131         Adhere closer to the "implicit tag name" definition.  Simplify
7132         the regexp.  Search for the explicit tag name first, and when
7133         not found, search locally for the implicit one.  (Bug#21934)
7135 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
7137         Unrevert most of regexp reentrancy abort patch
7139         The problem was in:
7140           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
7141         which is hence not unreverted.
7142         The rest is:
7143         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7144         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
7145         All callers in regex.c changed back to the _FAST versions.
7147         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
7148         propertization in backward-sexp.
7150 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
7152         Revert regexp reentrancy abort patch
7154         Although the patch does fix Bug#21688 and prevents a core dump,
7155         it also makes the message-mode-propertize test fail; see:
7156         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
7157         Perhaps someone else can come up with a better fix some day.
7158         * src/syntax.c (update_syntax_table_forward):
7159         Propertize even when truncated.
7160         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7161         (UPDATE_SYNTAX_TABLE_FAST): Remove.
7162         All callers changed back to the non-_FAST versions.
7164 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
7166         Add a few safety checks when ENABLE_CHECKING
7168         This was motivated by the recent addition of module code,
7169         which added some ENABLE_CHECKING-enabled checks that are
7170         useful elsewhere too.
7171         * src/alloc.c (compact_font_cache_entry):
7172         * src/fns.c (sweep_weak_table):
7173         * src/lread.c (oblookup):
7174         Use gc_asize rather than doing it by hand.
7175         * src/emacs-module.c (module_make_global_ref)
7176         (module_free_global_ref, module_vec_size):
7177         Omit assertions that lisp.h now checks.
7178         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
7179         check that the result is nonnegative.  Use eassume, as this
7180         info can help a bit when optimizing production code.
7181         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
7182         to be consistent with the USE_LSB_TAG case.
7183         (gc_asize): New function, when ASIZE is needed in the gc.
7184         (gc_aset): Use it.
7185         (HASH_TABLE_P): Move definition up, so that it can be used ...
7186         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
7188 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7190         Simplify recording of main thread's ID on MS-Windows
7192         * src/w32term.c (w32_initialize):
7193         * src/w32console.c (initialize_w32_display):
7194         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
7195         ID independently for each type of session (GUI, TTY, batch).
7196         * src/w32term.c (w32_init_main_thread): New function, records the
7197         main thread's thread ID.
7198         * src/w32term.h: Add prototype for w32_init_main_thread.
7199         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
7201         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
7202         main_thread, for consistency with other threading libraries.  All
7203         users changed.  Include w32term.h.
7204         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
7205         make sure the main thread is alive, as we hold a handle on it
7206         opened by w32_init_main_thread.
7207         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
7208         w32_init_main_thread, instead of calling the requisite APIs once
7209         more.
7211 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
7213         Backport: Fix issue where a new tempfile was created every refresh
7215         * lisp/mpc.el (mpc-format): Leave dir as relative path
7217 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7219         Call 'window-size-change-functions' for mini-windows
7221         * src/window.c (grow_mini_window, shrink_mini_window): Set the
7222         frame's 'window_sizes_changed' flag.
7223         * src/xdisp.c (redisplay_internal): Call the hooks on
7224         'window-size-change-functions' if the call to 'echo_area_display'
7225         sets the frame's 'window_sizes_changed' flag.
7226         (syms_of_xdisp) <window-size-change-functions>:
7227         Update doc string to indicate the mini-window resizes trigger a
7228         call to the hooks, and don't promise that will happen "before
7229         redisplay".  (Bug#19576, Bug#21333)
7231         * doc/lispref/windows.texi (Window Hooks): Update the description
7232         of 'window-size-change-functions'.
7234 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7236         Improve documentation of dynamic modules
7238         * src/fns.c (Frequire): Doc fix to include the dynamic module
7239         support.
7240         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
7241         dynamic module support.
7242         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
7243         wrt the MUST-SUFFIX argument.
7245         * etc/NEWS: Expand documentation of dynamically loaded modules.
7247 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
7249         Initial documentation for dynamic modules
7251         * etc/NEWS: Mention the new support for dynamically loaded modules.
7253 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
7255         Add xref--etags-backend to xref-backing-functions using add-hook
7257         * lisp/progmodes/xref.el (xref-backend-functions): Move the
7258         default value into a separate `add-hook' call (bug#21964).
7260         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
7261         Don't declare the xref-backend-functions variable.
7262         It doesn't make any difference.
7264 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7266         Fix double-decrement bug when freeing global refs
7268         * src/emacs-module.c (module_free_global_ref): Add a FIXME
7269         comment about error reporting.  Fix a recently-introduced typo
7270         that double-decremented the refcount.
7272 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7274         Declare emacs_module_init in the module API
7276         * src/emacs-module.h (emacs_module_init): New decl.
7277         Without it, GCC might complain about a module that defines
7278         emacs_module_init without using it.  This also checks the
7279         API better.
7281 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7283         Fix module test to use ptrdiff_t nargs too
7285         * modules/mod-test/mod-test.c (Fmod_test_return_t)
7286         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
7287         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
7288         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
7289         (Fmod_test_userptr_get, Fmod_test_vector_fill)
7290         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
7291         (finalizer): Remove; no longer used.
7293 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7295         Fix reindent-introduced typo in module code
7297         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
7298         introduced while reindenting the code earlier, and add a
7299         comment explaining the unusual use of do-while here.
7301 2015-11-20  Anders Lindgren  <andlind@gmail.com>
7303         Fixed bug#19576: `write-file' saves wrong buffer.
7305         If a function on the hook `window-size-change-functions' doesn't
7306         restore the current buffer, functions that save and restore the
7307         current window configuration (like `y-or-no-p') could silently
7308         change the current buffer.  When `write-file' asked the user
7309         confirmation to overwrite a file, `y-or-no-p' changed the current
7310         buffer, and the wrong buffer was saved to the file.
7312         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
7313         using the `norecord' parameter.
7314         (follow-window-size-change): Restore current buffer. Call
7315         `select-frame' using the `norecord' parameter. Cleanup.
7317 2015-11-20  John Wiegley  <johnw@newartisans.com>
7319         Correct a documentation error in frames.texi
7321 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
7323         * lisp/cedet/mode-local.el: Delete obsolete comment
7325 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7327         Module function arg counts are ptrdiff_t, not int
7329         * src/emacs-module.c (struct module_fun_env)
7330         (module_make_function, module_funcall, Fmodule_call):
7331         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
7332         Use ptrdiff_t, not int, for arg counts.
7333         * src/emacs-module.c (module_make_function): Don’t bother
7334         checking arity against MOST_POSITIVE_FIXNUM, as that’s
7335         unnecessary here.  Make the checking clearer by negating it.
7336         (module_make_function, Fmodule_call): No need to use xzalloc
7337         since the storage doesn’t need to be cleared.
7338         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
7339         for it, and many implementations are buggy with large VLAs anyway.
7340         Use SAFE_ALLOCA_LISP instead.
7341         (module_vec_set): Don’t crash if i < 0.
7342         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
7343         (module_vec_set, module_vec_get): Do fixnum checks only when
7344         i is out of array bounds, for efficiency in the usual case.
7345         (Fmodule_load): Simplify fixnum range check.
7346         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
7347         integer overflow in array allocation size.
7349 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
7351         Minor improvements in module test
7353         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
7354         about missing prototype of malloc.
7355         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
7356         compiler warnings.
7358 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
7360         Improve MS-Windows implementation in dynlib.c
7362         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
7363         No need to include windows.h, as w32.h already does that.
7364         <dynlib_last_err>: New static variable.
7365         (dynlib_reset_last_error): New function.
7366         (dynlib_open): Convert forward slashes to backslashes.  Convert
7367         file names from UTF-8 to either UTF-16 or the current ANSI
7368         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
7369         argument is NULL, return a handle to the main module, like
7370         'dlopen' does.  Record the error, if any, for use by dynlib_error.
7371         (dynlib_sym): Check the handle for validity. Record the error, if
7372         any, for use by dynlib_error.
7373         (dynlib_error): Call w32_strerror to produce the error string, and
7374         zero out the last error code, like dlerror does.
7375         (dynlib_close): Check the handle for validity.  Record the error,
7376         if any, for use by dynlib_error.  Don't call FreeLibrary with a
7377         handle for the main module.
7378         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
7380 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7382         Include-file tweaks for modules
7384         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
7385         * src/dynlib.h: Do not include config.h.
7386         It’s every .c file’s responsibility to include config.h first.
7387         * src/emacs-module.c: Include emacs-module.h immediately after
7388         config.h, to test that emacs-module.h doesn’t depend on
7389         include files other than config.h.
7391 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7393         Simplify push_handler and profile its malloc
7395         * src/lisp.h (PUSH_HANDLER): Remove.
7396         All callers changed to use push_handler directly.
7397         * src/eval.c (internal_condition_case)
7398         (internal_condition_case_1, internal_condition_case_2)
7399         (internal_condition_case_n):
7400         Use same pattern as for other invokers of push_handler.
7401         (push_handler, push_handler_nosignal): Use call-by-value
7402         instead of call-by-reference.  All uses changed.
7403         (push_handler): Simplify by rewriting in terms of
7404         push_handler_nosignal.
7405         (push_handler_nosignal): Profile any newly allocated memory.
7407 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7409         * src/emacs-module.h: Include stddef.h, not stdlib.h.
7411 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
7413         Discover repository version in linked worktrees (bug#21930)
7415         * lisp/version.el (emacs-repository--version-git-1): Do not assume
7416         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
7417         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
7418         is nil too.
7420 2015-11-20  Juri Linkov  <juri@linkov.net>
7422         * lisp/replace.el (occur-regexp-descr): New function.
7423         (occur-1, occur-engine): Use it.
7425         * lisp/isearch.el (isearch-occur): Propertize regexp with
7426         isearch-string and isearch-regexp-function-descr for
7427         occur-regexp-descr to display the correct description
7428         message in the header (bug#21176, bug#21180).
7430 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
7432         Revert `open-line' electric-indent sensitivity
7434         * lisp/simple.el (open-line): Remove electric indent code.
7435           (electric-indent-just-newline): Don't declare.
7437         * test/automated/simple-test.el (open-line-indent): Adjust test.
7439         This partly reverts Artur Malabarba's change that added electric
7440         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
7441         commit bd4f04f86), and adjusts a new test he added right afterwards
7442         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
7443         However, the new INTERACTIVE argument to `open-line', which he also
7444         added in the first commit, is not reverted here.
7446         See the thread "Questioning the new behavior of `open-line'." on the
7447         Emacs Devel mailing list, and in particular this message:
7449           From: Artur Malabarba
7450           Subject: Re: Questioning the new behavior of `open-line'.
7451           To: Karl Fogel
7452           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
7453           Date: Wed, 18 Nov 2015 21:03:58 +0000
7454           Message-ID: \
7455             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
7457           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
7459 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7461         Omit unnecessary clear in Fmodule_load
7463         * src/emacs-module.c (Fmodule_load):
7464         Simplify and avoid unnecessary initialization of priv member to 0.
7466         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
7468 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7470         Prefer signed integer types in module code
7472         Generally speaking, at the C level the Emacs source code prefers
7473         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
7474         partly to avoid the usual signedness confusion when comparing values.
7475         Change the module API to follow this convention.
7476         Use ‘int’ for small values that can’t exceed INT_MAX.
7477         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
7478         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
7479         (Fmod_test_vector_eq):
7480         * src/emacs-module.c (struct emacs_value_frame)
7481         (module_make_global_ref, module_free_global_ref)
7482         (module_copy_string_contents, module_make_string)
7483         (module_vec_set, module_vec_get, module_vec_size):
7484         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
7485         * src/lread.c (suffix_p):
7486         Prefer signed to unsigned integer types.
7488 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7490         Omit ‘const’ on locals
7492         Remove ‘const’ qualifier from locals that were newly added.
7493         We don’t normally bother declaring locals with ‘const’ even
7494         though they are not modified, for the same reason we don’t
7495         bother declaring them with ‘register’ even though their
7496         addresses are not taken; the advantage in compile-time
7497         checking isn’t worth the loss of readability.
7498         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
7499         (Fmod_test_vector_fill, Fmod_test_vector_eq):
7500         * src/emacs-module.c (MODULE_SETJMP_1)
7501         (module_make_global_ref, module_free_global_ref)
7502         (module_non_local_exit_get, module_make_function)
7503         (module_extract_integer, module_extract_float)
7504         (module_get_user_ptr, module_set_user_ptr)
7505         (module_get_user_finalizer, module_set_user_finalizer)
7506         (module_vec_get, Fmodule_call)
7507         (module_non_local_exit_signal_1)
7508         (module_non_local_exit_throw_1, lisp_to_value)
7509         (finalize_storage, allocate_emacs_value, mark_modules)
7510         (module_handle_signal, module_handle_throw)
7511         (module_format_fun_env):
7512         * src/eval.c (push_handler, push_handler_nosignal)
7513         (init_handler):
7514         * src/lread.c (suffix_p):
7515         Omit unnecessary ‘const’.
7517 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7519         Prefer intmax_t to int64_t in module code
7521         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
7522         * src/emacs-module.c (module_extract_integer)
7523         (module_make_integer):
7524         * src/emacs-module.h (struct emacs_env_25):
7525         Prefer intmax_t to int64_t.  This doesn’t change the generated
7526         code on any of the machines Emacs currently ports to, but it’s
7527         at least in theory more future-proof as C99 doesn’t guarantee
7528         that int64_t exists.
7530 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7532         Rename module.c to emacs-module.c, etc.
7534         * src/emacs-module.c: Rename from src/module.c.
7535         * src/emacs-module.h: Rename from src/module.h.
7536         All uses changed.
7538 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7540         Fix minor module problems found by static checking
7542         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
7543         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
7544         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
7545         (Fmodule_call): Tell GCC that the default case is unreachable.
7547 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7549         Style fixes for indenting etc. in module code
7551         This is mostly indenting and spacing changes.  Also, remove
7552         some unnecessary static decls instead of bothering to reindent them.
7553         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
7554         as most other Emacs files do for this sort of thing.
7556 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
7558         Minor improvements in modules testing Makefile
7560         * modules/mod-test/Makefile (EMACS, SO): New variables.
7561         (CFLAGS): When SO = dll, don't use -fPIC.
7562         (check): New target, runs the test.
7564 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
7566         * .gitignore: Add "*.dll".
7568 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7570         Migrate modules/.gitignore into .gitignore
7572         * .gitignore: Add former contents of modules/.gitignore.
7573         * modules/.gitignore: Remove.
7575 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7577         Add copyright notices to module code
7579         Put them in the usual format for GNU Emacs copyright notices.
7581 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7583         Rename emacs_module.h to module.h
7585         * src/module.h: Rename from src/emacs_module.h.
7586         All uses changed.
7588 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
7590         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
7592         * src/lread.c (Fload): Remove unused variable `size'
7594 2015-11-19  Alan Mackenzie  <acm@muc.de>
7596         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
7598 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
7600         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
7602         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
7603         vc-parent-buffer over log-view-mode fallback (bug#21955).
7605 2015-11-18  Alan Mackenzie  <acm@muc.de>
7607         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
7609 2015-11-18  Ken Brown  <kbrown@cornell.edu>
7611         * configure.ac (LIBMODULES): Don’t define on Cygwin
7613 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
7615         Fix MS-Windows build --with-modules
7617         * src/module.c: Reformat copyright commentary.
7618         (module_vec_get): Use explicit cast to size_t to avoid compiler
7619         warning in 32-bit builds.
7620         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
7621         Compare thread IDs directly, as GetThreadId is not available
7622         before Windows Vista.
7623         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
7624         without using APIs and constants not available on XP and older
7625         systems.  Obtain and store the thread ID as well.
7627 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7628             Philipp Stephani  <phst@google.com>
7630         Add dynamic module test and helper script
7632         Add 'modhelp.py' script (python2) to automate module testing and
7633         module generation.
7635         To build and test all modules in the modules/ dir
7636           $ ./modhelp.py test
7638         To generate a module from template code (good starting point)
7639           $ ./modhelp init mynewtestmodule
7641         See the script -h option for more documentation.
7643         * modules/modhelp.py: New module helper script.
7644         * modules/mod-test/Makefile: New file. Makefile for the test module.
7645         * modules/mod-test/mod-test.c: New file. Test module source file.
7646         * modules/mod-test/test.el: New file. ert test suite for the test module.
7647         * modules/.gitignore: New file. Local .gitignore file.
7649 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7651         Make 'Fload' look for modules
7653         'Fload' can now load dynamic modules. This also makes 'require' work.
7655         * src/lread.c:
7656           (suffix_p): New function.
7657           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
7658           with a module suffix.
7659           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
7661 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7662             Philipp Stephani  <phst@google.com>
7664         Add dynamic module module support
7666         * configure.ac: Add '--with-modules' option.  Conditionally add
7667           dynlib.o and module.o to the list of objects.  Add any system
7668           specific flags to the linker flags to support dynamic libraries.
7669         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
7670           attributes.
7671         * src/Makefile.in: Conditionally add module objects and linker flags.
7672         * src/alloc.c (garbage_collect_1): protect module local values from
7673           GC.
7674         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
7675         * src/emacs-module.h: New header file included by modules.  Public
7676           module API.
7677         * src/emacs-module.c: New module implementation file.
7679 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7681         Add new User Pointer (User_Ptr) type
7683         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
7684         (XUSER_PTR): New User_Ptr accessor.
7685         * src/alloc.c (make_user_ptr): New function.
7686         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
7687         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
7688         (Fuser-ptrp): New user pointer type predicate function.
7689         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
7690         subr.
7691         * src/print.c (print_object): Add printer for User_Ptr type.
7693 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7694             Philipp Stephani  <phst@google.com>
7696         Add portable layer for dynamic loading
7698         * src/dynlib.h: New file.
7699         * src/dynlib.c: New file.
7701 2015-11-18  Philipp Stephani  <phst@google.com>
7703         Add catch-all & no-signal version of PUSH_HANDLER
7705         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
7706         a new "catch-all" handler type.
7708         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
7709           functions.
7710         * src/fns.c (hash_remove_from_table): Expose function public.
7711         * src/lisp.h: New handler type, define macro to push_handler call.
7713 2015-11-18  Ken Brown  <kbrown@cornell.edu>
7715         Silence byte-compiler warning
7717         * lisp/server.el (server-process-filter): Silence byte-compiler
7718         warning.
7720 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
7722         Quote symbols in docstrings using `'
7724         Be more systematic about quoting symbols `like-this' rather than
7725         `like-this or 'like-this' in docstrings.  This follows up Artur
7726         Malabarba's email in:
7727         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
7729 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
7731         Fix savegames in dunnet
7733         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
7734           of separate implementation.
7736 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
7738         * lisp/emacs-lisp/package.el (package--with-response-buffer):
7740         Ensure we're at the start of the buffer before searching for
7741         the end of headers.
7743 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
7745         * admin/release-process: Improve wording.
7747 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
7749         Backport: * CONTRIBUTE: Remove information about feature freeze.
7751         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
7753 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
7755         Backport: Document the release process
7757         * admin/notes/versioning: Add information about RC releases.
7758         * admin/release-process: Document the release process.
7759         * admin/authors.el (authors-ignored-files):
7760         * admin/README: Change FOR-RELEASE to release-process.
7761         * CONTRIBUTE:
7762         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
7764         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
7766 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
7768         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
7770         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
7772 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
7774         Backport: Mention CONTRIBUTE in README
7776         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
7777         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
7778         * README: Mention CONTRIBUTE.
7780         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
7782 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
7784         Fix docstring quoting problems with ‘ '’
7786         Problem reported by Artur Malabarba in:
7787         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
7788         Most of these fixes are to documentation; many involve fixing
7789         longstanding quoting glitches that are independent of the
7790         recent substitute-command-keys changes.  The changes to code are:
7791         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
7792         (describe-mode-local-overload):
7793         Substitute docstrings before displaying them.
7794         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
7795         Quote the generated docstring for later substitution.
7797 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
7799         Improve configure --help text for wide ints
7801         * configure.ac (wide-int): Clarify user-level advantages and
7802         disadvantages.
7804 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
7806         Improve doc string
7808         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
7810 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
7812         eval_sub followed dangling pointer when debugging
7814         Problem reported by Pip Cet (Bug#21245).
7815         This bug could occur in eval_sub if the C compiler reused
7816         storage associated with the ‘argvals’ local after ‘argvals’
7817         went out of scope, and if the Elisp debugger stopped on Elisp
7818         function exit and accessed ‘argvals’.  It could also occur if
7819         a variadic function was called with so many arguments (over
7820         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
7821         SAFE_FREE freed the arguments, then the memory manager used
7822         the storage for other purposes, then the debugger accessed the
7823         arguments.
7824         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
7825         function body.  Simplify local decls.
7826         When allocating args via SAFE_ALLOCA, call
7827         debugger before invoking SAFE_FREE, as the debugger needs
7828         access to the args.
7829         (eval_sub, apply_lambda): Rework to avoid need for
7830         set_backtrace_debug_on_exit hack.  This is cleaner,
7831         and should work better with buggy custom debuggers.
7833 2015-11-17  Daiki Ueno  <ueno@gnu.org>
7835         * lisp/image-mode.el: Support encrypted file
7837         (image-toggle-display-image): Read content from the buffer instead
7838         of the file, if the buffer holds a decrypted data.  (Bug#21870)
7840 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
7842         ELF unexec: align section header
7844         This ports the recent unexelf.c changes to Fedora x86-64
7845         when configured with GCC’s -fsanitize=undefined option.
7846         * src/unexelf.c (unexec): Align new_data2_size to a multiple
7847         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
7848         pointer aligned appropriately for its type.
7850 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
7852         Do more checks on bytecode objects (Bug#21929)
7854         * src/eval.c (funcall_lambda): Check size of compiled function
7855         object.
7856         (Ffetch_bytecode): Likewise.
7858 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
7860         pcase.el: Fix edebugging of backquoted cons patterns
7862         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
7863         cons patterns. (Bug#21920)
7865 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
7867         Improve fix for regex reentrancy abort
7869         Suggested by Stefan Monnier (Bug#21688).
7870         * src/syntax.c (update_syntax_table_forward):
7871         Remove recently-added PROPERTIZE arg, and assume it is true.
7872         All callers changed.
7873         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7874         Invoke update_syntax_table directly.
7876 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
7878         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
7880         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
7882         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
7884 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
7886         Recognize .rbw and .pyw files (bug#18753)
7888         * lisp/progmodes/python.el (auto-mode-alist):
7889         Recognize .pyw files.
7891         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
7892         Recognize .rbw files.
7894 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
7896         Fix ruby-mode auto-mode-alist entry
7898         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
7899         around the extensions (bug#21257).
7901 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7903         Fix etags completion near eob
7905         * lisp/progmodes/etags.el (tags-completion-at-point-function):
7906         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
7908 2015-11-15  Alan Mackenzie  <acm@muc.de>
7910         De-pessimize detection of C++ member initialization lists.
7912         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
7913         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
7914         is only called when a construct "looks right" rather than continually.
7915         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
7917 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
7919         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
7921         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
7922         `url-insert-buffer-contents'.
7923         (url-insert-buffer-contents): New function
7925         (package--with-response-buffer): Use `url-insert-buffer-contents'.
7926         The previous code had some issues with decoding. Refactoring that
7927         function allows us to use the decoding from url-handlers while still
7928         treating both sync and async requests the same.
7930 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
7932         Improve a few doc strings, comments
7934         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
7935         * lisp/cedet/ede/locate.el (ede-locate-base):
7936         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
7937         * src/fns.c (Fdelq): Improve doc string.
7939         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
7941 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7943         Enhance NSTRACE (trace output for NextStep).
7945         Trace can be disabled for groups of functions. By default, event
7946         functions and functions that generate lots of output are disabled.
7948         Trace output of Objective-C functions now use the "[ClassName
7949         parameter:]" form.
7951         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
7952         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
7953         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
7954         controlling in which function groups trace should be active.
7955         (NSTRACE_WHEN): Support for silencing a function, this also
7956         silencing all called functions.
7957         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
7958         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
7959         print the full screen state in NSTRACE functions.
7961         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
7962         can be accessed from multiple threads.
7963         (nstrace_enabled_global): New variable, when FALSE, trace is
7964         silenced.
7965         (nstrace_restore_global_trace_state): New function, used to
7966         restore `nstrace_enabled_global' at end of block.
7967         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
7968         ([EmacsWindow setFrame:display:animation:])
7969         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
7970         and call corresponding super function.
7971         (Many functions): Add or enhance trace output.
7973         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
7975         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
7977         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
7978         and call corresponding super function.
7980 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7982         Fixed a toolbar related issue on OS X.
7984         Earlier, when toggling the tool-bar in a maximized frame, the
7985         frame size didn't match the number of text lines, leaving an
7986         unused area at the bottom of the frame.
7988         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
7989         fullscreen modes when tool bar is disabled.
7991 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7993         Fixed OS X 10.6.8 build issue (bug#21862).
7995         * src/nsterm.h (EmacsView): Add missing declarations.
7996         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
7997         the standard method but without the notification parameter.
7998         Intended to be used for direct calls.
7999         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
8000         version of `windowDidBecomeKey'. Made the notification method call
8001         the non-notification method instead of the vice versa.
8002         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
8003         needed.
8005 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
8007         * lisp/faces.el (faces--attribute-at-point): Fix an issue
8009         Previous code would signal an error when the face at point was
8010         a manually built list of attributes such as '(:foregroud "white").
8012         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
8014 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
8016         Fix regex abort when it tries to reenter itself
8018         Problem reported by Ken Raeburn.
8019         Solution suggested by Stefan Monnier (Bug#21688).
8020         * src/regex.c (re_match_2_internal):
8021         Use new _FAST functions to avoid regex code reentering itself.
8022         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
8023         All callers changed.
8024         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
8025         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
8027 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
8029         Improve Ruby 1.9-style keyword keys highlighting
8031         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
8032         Handle required keyword arguments (bug#21367).
8033         And highlight the colon together with the name.
8035 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
8037         Unify the absolutely equal xref-backend-references implementations
8039         * lisp/progmodes/elisp-mode.el (xref-backend-references):
8040         Remove.
8042         * lisp/progmodes/etags.el (xref-backend-references):
8043         Remove.
8045         * lisp/progmodes/xref.el (xref-backend-references):
8046         Define the default implementation.
8048 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
8050         Update project-find-regexp for the new xref API
8052         * lisp/progmodes/project.el (project--read-regexp):
8053         Update to use the new xref API methods.
8055         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
8057 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
8059         Fix replacing a match with a shorter string
8061         In effect, partially reverting fe973fc.
8063         * lisp/progmodes/xref.el (xref-query-replace): Store the end
8064         of each match as a marker again, instead of length.
8065         (xref--query-replace-1): Update accordingly.
8067 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
8069         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
8071         Signal user-errors instead.
8073 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8075         Document 'describe-symbol'
8077         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
8078         (Name Help): Document "C-h o" and describe-symbol.
8080         * lisp/help-fns.el (describe-symbol): Doc fix.
8082 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
8084         Change test name to avoid spellcheck issue.
8086 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8088         Avoid signaling an error in 'describe-symbol'
8090         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
8091         exists as a function/variable/face/etc., but is undocumented.
8093         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
8094         test.
8096 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8098         * INSTALL (--with-cairo): Document this new configure option.
8100 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8102         Document that GNU Make >= 3.81 is required to build Emacs
8104         * doc/lispref/internals.texi (Building Emacs): Document that GNU
8105         Make 3.81 or later is now required.
8107 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
8109         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
8111         (package--with-work-buffer-async): Reimplement as
8112         `package--with-response-buffer'.
8113         (package--with-work-buffer): Mark obsolete.
8114         (package--with-response-buffer): New macro. This is a more self
8115         contained and less contrived version of
8116         `package--with-work-buffer-async'.  It uses keyword arguments,
8117         doesn't have async on the name, doesn't fallback on
8118         `package--with-work-buffer', and has _much_ simpler error
8119         handling.  On master, this macro will soon be part of another
8120         library (either standalone or inside url.el), which is why this
8121         commit is not to be merged back.
8123         (package--check-signature, package--download-one-archive)
8124         (package-install-from-archive, describe-package-1): Use it.
8126         (package--download-and-read-archives): Let
8127         `package--download-one-archive' take care of calling
8128         `package--update-downloads-in-progress'.
8130 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8132         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
8134 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8136         Merge branch 'master' into emacs-25
8138 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8140         Use generic dispatch for xref backends
8142         * lisp/progmodes/xref.el (xref-backend-functions):
8143         New variable.
8144         (xref-find-function): Remove.
8145         (xref-find-backend)
8146         (xref--etags-backend): New functions.
8147         (xref-identifier-at-point-function)
8148         (xref-identifier-completion-table-function): Remove.
8149         (xref-backend-definitions, xref-backend-references)
8150         (xref-backend-apropos, xref-backend-identifier-at-point)
8151         (xref-backend-identifier-completion-table):
8152         New generic functions.
8154         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add
8155         `elisp--xref-backend' to the beginning of
8156         `xref-backend-functions', locally.  Delete references to
8157         removed functions and vars.
8158         (elisp-xref-find): Remove.
8159         (elisp--xref-backend): New function.
8160         (elisp--xref-find-references, elisp--xref-find-apropos)
8161         (elisp--xref-identifier-completion-table):
8162         Turn into appropriately named generic methods.
8164         * lisp/progmodes/etags.el (etags-xref-find): Remove.
8165         (xref-backend-identifier-completion-table)
8166         (xref-backend-references, xref-backend-definitions)
8167         (xref-backend-apropos): New generic methods.
8169 2015-11-14  Juri Linkov  <juri@linkov.net>
8171         Support rectangular regions for more commands
8173         * lisp/simple.el (region-extract-function): Handle the arg value ‘bounds’.
8174         (region-insert-function): New function.
8175         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
8176         If non-nil, operate on multiple chunks.
8177         (region-noncontiguous-p): New function.
8179         * lisp/rect.el: Add function rectangle--insert-region
8180         around region-insert-function.
8181         (extract-rectangle-bounds): New function.
8182         (rectangle--extract-region): Handle the arg value ‘bounds’.
8183         (rectangle--insert-region): New function.
8185         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
8186         around region-insert-function.
8187         (cua--extract-rectangle-bounds): New function.
8188         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
8190         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
8191         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
8192         (query-replace-regexp-eval, map-query-replace-regexp)
8193         (replace-string, replace-regexp): Use ‘use-region-p’.
8194         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
8195         (perform-replace): Add arg ‘region-noncontiguous-p’.
8196         If non-nil, operate on multiple chunks.
8198         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
8199         If non-nil, operate on multiple chunks. (Bug#19829)
8201 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8203         Handle multiple matches on the same line; add highlighting
8205         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
8206         column value in characters.
8207         (xref--collect-matches): Rename from `xref--collect-match'.
8208         Search for all matches in the hit line.  Add `highlight' face to
8209         the matched region in the summary.  Update both callers.
8211 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8213         Replace xref-match-bounds with xref-match-length
8215         Relying on xref-location-marker to point to the beginning of the match
8217         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
8218         (xref-match-length): Add.
8219         (xref-make-match): Change the arguments.
8220         (xref--match-buffer-bounds): Remove.
8221         (xref-match-item): Store length, instead of end-column.
8222         (xref-pulse-momentarily)
8223         (xref--collect-match)
8224         (xref--query-replace-1): Update accordingly.
8225         (xref-query-replace): Ditto.  And check that the search results
8226         are up-to-date.
8228 2015-11-13  John Wiegley  <johnw@newartisans.com>
8230         Merge remote-tracking branch 'origin/master' into emacs-25
8232 2015-11-13  l3thal  <kwhite@gnu.org>
8234         Merge branch 'erc-async-reconnect' into emacs-25
8236         Reconnect asynchronously.
8238 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
8240         Merge from gnulib
8242         This incorporates:
8243         2015-11-13 xalloc-oversized: improve performance with GCC 5
8244         * lib/xalloc-oversized.h: Copy from gnulib.
8246 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
8248         Spruce up ftfont.c memory allocation
8250         * src/ftfont.c (setup_otf_gstring):
8251         Avoid O(N**2) behavior when reallocating.
8252         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
8253         reallocating buffers; this simplifies the code.  Do not trust
8254         mflt_run to leave the output areas unchanged on failure, as
8255         this isn’t part of its interface spec.
8257 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8259         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
8261 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
8263         Port recent XCB changes to 64-bit ‘long int’
8265         For historical reasons, libX11 represents 32-bit values like Atoms as
8266         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
8267         do that, so adapt the recent XCB code to behave properly on 64-bit
8268         platforms.  Also, fix what appears to be a bug in the interpretation
8269         of xcb_get_property_value_length, at least on my Fedora platform
8270         which is running libxcb-1.11-5.fc21.
8271         * src/xfns.c (x_real_pos_and_offsets):
8272         * src/xterm.c (get_current_wm_state):
8273         xcb_get_property_value_length returns a byte count, not a word count.
8274         For 32-bit quantities, xcb_get_property_value returns a vector
8275         of 32-bit words, not of (possibly 64-bit) long int.
8277         Backport.
8279 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
8281         * src/undo.c (run_undoable_change): Now static.
8283         Backport.
8285 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8287         Remove support for ':timeout' from w32 tray notifications
8289         * src/w32fns.c (Fw32_notification_notify): Delete the code that
8290         supports ':timeout'.
8291         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
8292         with dbusbind.c when D-Bus is compiled in.
8294         * doc/lispref/os.texi (Desktop Notifications): Don't mention
8295         ':timeout'.
8297         Backport.
8299 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
8301         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
8303         (simple-test--transpositions): New macro.
8304         (simple-transpose-subr): New test.
8306         Backport.
8308 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
8310         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
8312         Backport.
8314 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
8316         * src/undo.c: Small fixes for previous change
8318         (run_undoable_change): Mark void argument list.
8319         (record_property_change): Remove unused variable `boundary'.
8321         Backport.
8323 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8325         Add a few more variables to redisplay--variables
8327         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
8328         and bidi-display-reordering to the list.
8330         Backport.
8332 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8334         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
8336         Backport.
8338 2015-11-13  Eli Barzilay  <eli@barzilay.org>
8340         Fix point positioning after transposing with negative arg
8342         * lisp/simple.el (transpose-subr): When invoked with a negative
8343         argument, move point to after the transposed text, like we do
8344         when invoked with a positive argument.  (Bug#21885)
8346         Backport.
8348 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8350         Fix last change in shr.el
8352         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
8353         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
8355         Backport.
8357 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8359         Fix last change
8361         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
8362         Don't DEFSYM tray notification symbols if D-Bus is being used.
8364         Backport.
8366 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8368         Another fix for MinGW64 and Cygwin builds due to notifications
8370         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
8371         being compiled into Emacs.
8372         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
8373         Sw32_notification_notify and Sw32_notification_close if the code
8374         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
8376         Backport.
8378 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8380         Remove intern calls and XXX comments from Fx_export_frames
8382         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
8383         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
8384         for consistency with image types.  Remove XXX comments.
8385         (syms_of_xfns) <Qpdf>: DEFSYM it.
8387         Backport.
8389 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
8391         Port recent XCB changes to 64-bit ‘long int’
8393         For historical reasons, libX11 represents 32-bit values like Atoms as
8394         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
8395         do that, so adapt the recent XCB code to behave properly on 64-bit
8396         platforms.  Also, fix what appears to be a bug in the interpretation
8397         of xcb_get_property_value_length, at least on my Fedora platform
8398         which is running libxcb-1.11-5.fc21.
8399         * src/xfns.c (x_real_pos_and_offsets):
8400         * src/xterm.c (get_current_wm_state):
8401         xcb_get_property_value_length returns a byte count, not a word count.
8402         For 32-bit quantities, xcb_get_property_value returns a vector
8403         of 32-bit words, not of (possibly 64-bit) long int.
8405 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
8407         * src/undo.c (run_undoable_change): Now static.
8409 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
8411         Adapt Tramp version, do not merge with master
8413         * doc/misc/trampver.texi (trampver):
8414         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
8416 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8418         Remove support for ':timeout' from w32 tray notifications
8420         * src/w32fns.c (Fw32_notification_notify): Delete the code that
8421         supports ':timeout'.
8422         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
8423         with dbusbind.c when D-Bus is compiled in.
8425         * doc/lispref/os.texi (Desktop Notifications): Don't mention
8426         ':timeout'.
8428 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
8430         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
8432         (simple-test--transpositions): New macro.
8433         (simple-transpose-subr): New test.
8435 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
8437         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
8439 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
8441         * src/undo.c: Small fixes for previous change
8443         (run_undoable_change): Mark void argument list.
8444         (record_property_change): Remove unused variable `boundary'.
8446 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8448         Add a few more variables to redisplay--variables
8450         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
8451         and bidi-display-reordering to the list.
8453 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8455         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
8457 2015-11-13  Eli Barzilay  <eli@barzilay.org>
8459         Fix point positioning after transposing with negative arg
8461         * lisp/simple.el (transpose-subr): When invoked with a negative
8462         argument, move point to after the transposed text, like we do
8463         when invoked with a positive argument.  (Bug#21885)
8465 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8467         Fix last change in shr.el
8469         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
8470         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
8472 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8474         Fix last change
8476         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
8477         Don't DEFSYM tray notification symbols if D-Bus is being used.
8479 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
8481         Another fix for MinGW64 and Cygwin builds due to notifications
8483         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
8484         being compiled into Emacs.
8485         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
8486         Sw32_notification_notify and Sw32_notification_close if the code
8487         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
8489 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8491         Remove intern calls and XXX comments from Fx_export_frames
8493         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
8494         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
8495         for consistency with image types.  Remove XXX comments.
8496         (syms_of_xfns) <Qpdf>: DEFSYM it.
8498 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
8500         shr: don't invoke unbound function (Bug#21895)
8502         * lisp/net/shr.el (have-fringes-p): New function.
8503           (shr-insert-document, shr-fill-text): Use it.
8505 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
8507         * test/automated/keymap-tests.el: Fix test to make it repeatable
8509         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
8510         entry to its initial value to make the test repeatable in interactive
8511         sessions (assuming it doesn't fail and crashes Emacs, of course).
8513 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
8515         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
8517 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
8519         : Tests for undo-auto functionality.
8521 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
8523         The heuristic that Emacs uses to add an `undo-boundary' has been
8524         reworked, as it interacts poorly with functions on `post-command-hook'
8525         or `after-change-functions'.
8527         * lisp/simple.el: New section added.
8528         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
8529         (self_insert_command): Calls simple.el to amalgamate.
8530         (delete_char): Calls simple.el to amalgamate.
8531         * src/keyboard.c (last_undo_boundary): Removed.
8532         * src/undo.c (run_undoable_change): New function.
8534 2015-11-12  Juri Linkov  <juri@linkov.net>
8536         Bind [?\S-\ ] to previous line command in Dired-like modes.
8538         * lisp/arc-mode.el (archive-mode-map):
8539         * lisp/dired.el (dired-mode-map):
8540         * lisp/proced.el (proced-mode-map):
8541         * lisp/vc/vc-dir.el (vc-dir-mode-map):
8542         Bind [?\S-\ ] to previous line command.
8543         (Bug#20790)
8545 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
8547         Fix the MinGW64 and Cygwin-w32 builds
8549         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
8550         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
8551         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
8552         which cause trouble with MinGW42 headers.  Ifdef away tray
8553         notifications code for Cygwin.  Reported by Andy Moreton
8554         <andrewjmoreton@gmail.com>.
8556 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
8558         Enable sorting of JSON object keys when encoding
8560         * lisp/json.el (json-encoding-object-sort-predicate): New variable for
8561         specifying a sorting predicate for JSON objects during encoding.
8562         (json--plist-to-alist): New utility function.
8563         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
8564         are to be sorted.
8565         (json-encode-alist): Sort output by
8566         `json-encoding-object-sort-predicate, when set.
8567         (json-encode-plist): Re-use `json-encode-alist' when object keys are
8568         to be sorted.
8569         (json-pretty-print-buffer-ordered): New command to pretty print the
8570         buffer with object keys sorted alphabetically.
8571         (json-pretty-print-ordered): New command to pretty print the region with
8572         object keys sorted alphabetically.
8574         * test/automated/json-tests.el (test-json-plist-to-alist)
8575         (test-json-encode-plist, test-json-encode-hash-table)
8576         (test-json-encode-alist-with-sort-predicate)
8577         (test-json-encode-plist-with-sort-predicate): New tests.
8579         * etc/NEWS: Add an entry for the new commands.
8581 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
8583         * test/automated/keymap-tests.el: New test file
8585 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
8587         Speed up x_real_pos_and_offsets using XCB
8589         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
8590         all X calls, and pipeline requests when possible, collecting results
8591         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
8593 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
8595         Enable use of XCB for checking window manager state
8597         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
8598         of XGetWindowProperty plus error-catching, since we can explicitly
8599         check for errors in the XCB version.  This eliminates 3 XSync calls on
8600         top of the round-trip actually fetching the information.
8602 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
8604         Detect XCB and save a connection handle
8606         * configure.ac: If using X11, check for XCB libraries and header.
8607         * src/Makefile.in (XCB_LIBS): Define.
8608         (LIBX_EXTRA): Include it.
8610         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
8611         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
8612         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
8614 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
8616         Reduce some data dependencies between X calls
8618         Gains nothing in the traditional-Xlib code, but more closely aligns
8619         with how the XCB version will work.
8621         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
8622         send coordinates (0,0) to the X server and add in the real coordinates
8623         after getting the response.  Move XGetGeometry for outer window inside
8624         error-trapping block.  Use DPY variable more, since it's available.
8626 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
8628         Use color cache for creating bitmap
8630         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]: Set
8631         attributes to use the caching color allocator.  Initialize and free
8632         the cache.
8634 2015-11-12  Eli Barzilay  <eli@barzilay.org>
8636         Add "^" to the interactive specs of `dired-next/previous-line'
8638         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
8639         to bind these commands to the arrow keys, and that means that they work
8640         better with a "^" in the `interactive' declaration so selection works
8641         as expected.
8643 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8645         Sync with soap-client repository, version 3.0.2
8647         * lisp/net/soap-client.el: Bump version to 3.0.2.
8649         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
8651         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
8652         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
8654         * lisp/net/soap-client.el: Support Emacs versions that do not have
8655         define-error.
8657         * lisp/net/soap-inspect.el: Remove version header.
8659         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
8660         format.
8662 2015-11-11  Alan Mackenzie  <acm@muc.de>
8664         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
8666         lisp/progmodes/cc-engine.el (c-backward-single-comment, c-backward-comments)
8667         (c-invalidate-state-cache-1, c-parse-state-1, c-guess-basic-syntax):
8668         remove bindings of open-paren-in-column-0-is-defun-start to nil.
8669         (c-get-fallback-scan-pos): "New" function (existed several years ago).
8670         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
8671         c-get-fallback-scan-pos.
8672         (c-parse-state-1): Handle 'BOD strategy.
8674         lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
8675         c-font-lock-fontify-region): remove bindings of
8676         open-paren-in-column-0-is-defun-start to nil.
8678         cc-mode.texi (Performance Issues, Limitations and Known Bugs): Fix mix up
8679         between @chapter and @appendix.
8681 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
8683         * lisp/obarray.el: Fix shadowed variables
8685         (obarray-map, obarray-remove, obarray-put, obarray-get):
8686         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
8688 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
8690         Avoid error in submitting a form with EWW
8692         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
8693         CHUNK to be nil.  (Bug#21881)
8695 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
8697         Rename seq-p and map-p to seqp and mapp
8699         * lisp/emacs-lisp/seq.el (seqp): New name.
8700         * lisp/emacs-lisp/map.el (mapp): New name.
8701         * doc/lispref/sequences.texi: Update the documentation for seqp.
8702         * test/automated/map-tests.el: Update the tests for mapp.
8704 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
8706         Rename obarray-p to obarrayp
8708         * lisp/obarray.el (obarrayp): New name.
8709         * test/automated/obarray-tests.el: Update the tests.
8711 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
8713         Rename obarray-foreach to obarray-map
8715         * lisp/obarray.el (obarray-map): New name.
8716         * test/automated/obarray-tests.el: Update the corresponding tests.
8718 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
8720         New file with obarray functions.
8722         * lisp/obarray.el: basic obarray functions extracted from abbrev.el
8723         * test/automated/obarray-tests.el: new file
8725 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
8727         Implement tray notifications for MS-Windows
8729         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
8730         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
8731         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
8732         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
8733         (EMACS_NOTIFICATION_MSG): New macros.
8734         (NI_Severity): New enumeration.
8735         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
8736         (delete_tray_notification, Fw32_notification_notify)
8737         (Fw32_notification_close): New functions.
8738         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
8739         keywords used by w32-notification-notify.
8741         * doc/lispref/os.texi (Desktop Notifications): Describe the native
8742         w32 tray notifications.
8744 2015-11-11  Alan Mackenzie  <acm@muc.de>
8746         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
8748         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
8749         Windows" and new @defun selected-window-group.
8750         (Window Start and End): Describe new &optional parameter GROUP and
8751         ...-group-function for window-start, window-end, set-window-start, and
8752         pos-visible-in-window-p.
8753         (Textual Scrolling) Describe the same for recenter.
8754         doc/lispref/positions.texi (Screen Lines): Describe the same for
8755         move-to-window-line.
8757         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
8758         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
8759         new optional parameter "group".  At the beginning of each, check whether the
8760         corresponding ...-group-function is set to a function, and if so execute this
8761         function in place of the normal processing.
8762         (syms_of_window): Define symbols for the six new variables below.
8763         (window-start-group-function, window-end-group-function)
8764         (set-window-start-group-function, recenter-group-function)
8765         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
8766         New permanent local buffer local variables.
8767         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
8768         Fpos_visible_in_window_p.
8770         lisp/window.el (selected-window-group-function): New permanent local buffer
8771         local variable.
8772         (selected-window-group): New function.
8774         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
8775         enable, kill them at mode disable.  Add/remove follow-after-change to/from
8776         after-change-functions.
8777         (follow-start-end-invalid): New variable.
8778         (follow-redisplay): Manipulate follow-start-end-invalid.
8779         (follow-after-change, follow-window-start, follow-window-end)
8780         (follow-set-window-start, follow-pos-visible-in-window-p)
8781         (follow-move-to-window-line, follow-sit-for): New functions.
8783         lisp/isearch.el (isearch-call-message): New macro.
8784         (isearch-update, with-isearch-suspended, isearch-del-char)
8785         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
8786         (with-isearch-suspended): Rearrange code such that isearch-call-message is
8787         invoked before point is moved.
8788         (isearch-message): Add comment about where point must be at function call.
8789         (isearch-search): Remove call to isearch-message.
8790         (isearch-lazy-highlight-window-group): New variable.
8791         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
8792         the battery of tests to ...
8793         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
8794         Note: (sit-for 0) is still called.
8795         (isearch-lazy-highlight-update): Check membership of
8796         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
8797         property.
8798         (isearch-update, isearch-done, isearch-string-out-of-window)
8799         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
8800         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
8801         (isearch-lazy-highlight-update): Call the six amended primitives (see
8802         src/window.c above) with the new `group' argument set to t, to cooperate
8803         with Follow Mode.
8805 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
8807         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
8809         * lisp/net/tramp.el (tramp-handle-file-equal-p)
8810         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
8811         Harvey Chapman <hchapman@3gfp.com>
8813         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
8814         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
8815         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
8816         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
8818 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
8820         * CONTRIBUTE: Encourage adding tests.
8822         Based on this post from John Wiegley:
8824           From: "John Wiegley" <johnw@newartisans.com>
8825           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
8826           To: Juanma Barranquero <lekktu@gmail.com>
8827           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
8828               emacs-devel <emacs-devel@gnu.org>
8829           Date: Wed, 28 Oct 2015 18:45:29 -0700
8830           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
8832           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
8834 2015-11-10  David Reitter  <david.reitter@gmail.com>
8836         Avoid creating notification objects when possible
8838         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:,
8839         windowDidEnterFullScreen, windowDidExitFullScreen): provide
8840         convenience functions that do not require a notification object.  When
8841         needed, define NSWindowDidEnterFullScreenNotification to allow for
8842         compilation on OS X 10.6.8.
8844 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
8846         Move INTEGER_TO_CONS body out of .h file
8848         * src/data.c (INTBIG_TO_LISP): New macro, with most
8849         of the contents of the old INTEGER_TO_CONS.
8850         (intbig_to_lisp, uintbig_to_lisp): New functions.
8851         * src/lisp.h (INTEGER_TO_CONS):
8852         Simplify by using EXPR_SIGNED and the new functions.
8853         This shrinks code size a bit, and makes it easier to
8854         put a breakpoint on handling of large integers.
8856 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
8858         Merge from gnulib
8860         This incorporates:
8861         2015-11-10 intprops: new public macro EXPR_SIGNED
8862         2015-11-10 intprops: fix typo in clang port
8863         * lib/intprops.h: Copy from gnulib.
8865 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
8867         Spelling fixes
8869         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
8870         Fix misspelling in output.
8872 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8874         * doc/lispref/variables.texi (Directory Local Variables):
8876         Document dir-locals wildcards
8878         * lisp/files.el (dir-locals-file): Point to Info node.
8880         * doc/emacs/custom.texi (Directory Variables):
8881         Document dir-locals wildcards.
8883         * etc/NEWS: Document new functionality.
8885 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8887         * lisp/files.el: Don't allow customization of dir-locals sorting
8889         In retrospect, this is not a good idea for the same reason that
8890         `dir-locals-file' is a defconst, because it is important that this
8891         behaviour be "uniform across different environments and users".
8892         Sure, the user can still change the sorting with a hack, but we
8893         shouldn't encourage them to change it.
8895         (dir-locals--all-files): Return list in the order returned by
8896         `file-expand-wildcards'.
8897         (file-expand-wildcards): Document the sorting predicate used.
8898         (dir-locals-sort-predicate): Delete variable.
8900 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8902         * lisp/files.el (dir-locals-read-from-file): Better handle errors
8904         * lisp/isearch.el (search-default-regexp-mode): change default value
8906 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8908         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files
8910         `locate-dominating-file' will now keep looking if the files it finds in
8911         a given directory are unreadable (or not files).
8913 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8915         * lisp/files.el (dir-locals-file): Allow wildcards
8917         (dir-locals-find-file, dir-locals-collect-variables)
8918         (dir-locals-read-from-file): Update accordingly.
8919         (hack-dir-local-variables): Rename a local variable.
8921         * lisp/files-x.el (modify-dir-local-variable): Update accordingly
8923         * lisp/help-fns.el (describe-variable): Update accordingly
8925         * .gitignore: Add .dir-locals?.el
8927 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8929         * lisp/emacs-lisp/map.el (map-merge-with): New function
8931         * test/automated/map-tests.el (test-map-merge-with): New test
8933 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
8935         Fix some recently-perturbed bookmark autoloads
8937         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
8938           (bookmark-set): Restore autoload.
8939           (bookmark-set-no-overwrite): Add autoload.
8941         Thanks to Juanma Barranquero for noticing the autoload problems
8942         introduced by my recent commit adding/changing the above functions
8943         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
8945 2015-11-10  Noah Friedman  <friedman@splode.com>
8947         (ydump-buffer): Handle case where gap is at the start of buffer.
8948         I don't recall if older versions of gdb were less strict but you
8949         cannot dump a 0-length range in gdb 7.9.1.
8951 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
8953         * lisp/progmodes/project.el: Update Commentary.
8955         Merge branch 'project-next'
8957 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
8959         Fold `project-ask-user' into `project-current'
8961         * lisp/progmodes/project.el (project-find-functions): Remove
8962         `project-ask-user'.
8963         (project-ask-user): Remove function and the corresponding
8964         `project-roots' implementation.
8965         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
8966         user in case there's no project in the current directory.  Update
8967         all callers.
8969 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
8971         When VC detects a conflict, specify which file
8973         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
8974         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
8975         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
8976         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
8977         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
8978           to display a standard message that specifies the conflicted file.
8980         Before this change, the message VC used for indicating a conflicted
8981         file was just "There are unresolved conflicts in this file" without
8982         naming the file (and this language was duplicated in several places).
8983         After this change, it's "There are unresolved conflicts in file FOO"
8984         (and this language is now centralized in one function in vc.el).
8986         Justification: It's important for the message to name the conflicted
8987         file because the moment when VC realizes a file is conflicted does not
8988         always come interactively.  For example, some people automatically
8989         find a set of Org Mode files on startup, and may keep those .org files
8990         under version control.  If any of the files are conflicted, the user
8991         just sees some messages fly by, and might later check the "*Messages*"
8992         buffer to find out what files were conflicted.  I'm not saying this
8993         happened to me or anything; it's a purely hypothetical example.
8995 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
8997         Fix assertion violation in define-key
8999         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
9000         objects.  Reported by Drew Adams <drew.adams@oracle.com>
9001         and Juanma Barranquero <lekktu@gmail.com>.
9003 2015-11-09  Dima Kogan  <dima@secretsauce.net>
9005         Fix a memory leak in GC of font cache
9007         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
9008         entities if some of the fonts it references are marked.  This
9009         plugs a memory leak.  (Bug#21556)
9011 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
9013         Use INT_ADD_WRAPV etc. to check integer overflow
9015         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
9016         * src/buffer.c (record_overlay_string, overlay_strings):
9017         * src/casefiddle.c (casify_object):
9018         * src/ccl.c (Fccl_execute_on_string):
9019         * src/character.c (char_width, c_string_width, lisp_string_width)
9020         (count_size_as_multibyte, string_escape_byte8):
9021         * src/coding.c (coding_alloc_by_realloc, produce_chars):
9022         * src/data.c (arith_driver):
9023         * src/dispnew.c (realloc_glyph_pool, init_display):
9024         * src/editfns.c (styled_format):
9025         * src/fns.c (Ffillarray):
9026         * src/ftfont.c (ftfont_shape_by_flt):
9027         * src/gnutls.c (gnutls_hex_string):
9028         * src/gtkutil.c (get_utf8_string):
9029         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
9030         * src/keymap.c (Fkey_description):
9031         * src/lisp.h (SAFE_ALLOCA_LISP):
9032         * src/term.c (encode_terminal_code):
9033         * src/tparam.c (tparam1):
9034         * src/xselect.c (x_property_data_to_lisp):
9035         * src/xsmfns.c (smc_save_yourself_CB):
9036         * src/xterm.c (x_term_init):
9037         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
9038         more-complicated code involving division and/or
9039         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
9040         subtraction and/or INT_ADD_OVERFLOW.
9041         * src/casefiddle.c (casify_object): Simplify multibyte size check.
9042         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
9043         * src/data.c (arith_driver): Also check for division overflow,
9044         as that’s now possible given that the accumulator can now contain
9045         any Emacs integer.
9046         * src/lisp.h (lisp_word_count): Remove; no longer used.
9048 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
9050         Make sure that the ignore file exists
9052         * lisp/vc/vc.el (vc-default-ignore-completion-table):
9053         Make sure that the ignore file exists.
9055 2015-11-09  Michael Sperber  <mike@xemacs.org>
9057         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
9058         `gnus-summary-delete-article` in a way that also works on XEmacs.
9060 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
9062         Add support for retrieving paths to JSON elements
9064         Add support for retrieving the path to a JSON element. This can for
9065         instance be useful to retrieve paths in deeply nested JSON
9066         structures.
9068         * lisp/json.el (json-pre-element-read-function)
9069         (json-post-element-read-function): New variables to hold pre- and post
9070         read callback functions for `json-read-array' and `json-read-object'.
9071         (json--path): New variable used internally by `json-path-to-position'.
9072         (json--record-path, json--check-position): New functions used
9073         internally by `json-path-to-position'.
9074         (json-path-to-position): New function for retrieving the path to a
9075         JSON element at a given position.
9076         (json-read-object, json-read-array): Call
9077         `json-pre-element-read-function' and `json-post-element-read-function'
9078         when set.
9080         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
9081         (test-json-path-to-position-with-arrays)
9082         (test-json-path-to-position-no-match): New tests for
9083         `json-path-to-position'.
9085 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
9087         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
9089         This really should been part of my previous commit
9090         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
9092 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
9094         Offer non-overwrite bookmark setter (Bug#15746)
9096         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
9097           what `bookmark-set' used to do, but with more choices for overwrite
9098           vs push, and with minor changes to the interactive prompt format.
9099           (bookmark-set): Rewrite as wrapper around above.
9100           If overwriting, inform the user of that in the prompt.
9101           (bookmark-set-no-overwrite): New function, also done as wrapper.
9102           Bind to "M" in `ctl-x-r-map' autoloads.
9103           (bookmark-map): Similarly bind "M" here.
9105 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
9107         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
9109 2015-11-08  Alan Modra  <amodra@gmail.com>
9111         ELF unexec: Don't insert a new section
9113         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
9114         don't need to mess with symbol st_shndx, or section sh_link and
9115         sh_info.
9117         This does lead to eu-elflint complaints about symbols defined in .bss
9118         with a needed version, because normally it is undefined symbols that
9119         have needed versions;  Defined symbols have version definitions.
9120         The exception is symbols defined by the linker in .dynbss for
9121         variables copied from a shared library in order to avoid text
9122         relocations, with copy relocs to copy their initial values from the
9123         shared library.  These symbols are both defined and have needed
9124         versions, and eu-elflink only expects to see them in SHT_NOBITS
9125         sections.  Of course there is no real problem with having such symbols
9126         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
9128         * src/unexelf.c: Delete outdated comments.
9129         (PATCH_INDEX): Delete.
9130         (find_section): Delete.
9131         (unexec): Don't add a new section.  Instead reuse the last bss
9132         section, extending it to cover dumped data.  Make bss sections
9133         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
9134         st_shndx.  Rename bss sections.
9136 2015-11-08  Alan Modra  <amodra@gmail.com>
9138         ELF unexec: Drive from PT_LOAD header rather than sections
9140         This rewrites bss handling in the ELF unexec code.  Finding bss
9141         sections by name results in complicated code that
9142         - does not account for all names of possible bss sections,
9143         - assumes specific ordering of bss sections,
9144         - can wrongly choose a SHT_NOBITS section not in the bss segment,
9145         - incorrectly calculates bss size (no accounting for alignment gaps),
9146         - assumes .data and .bss are in the same segment.
9148         All of these problems and more are solved by finding the bss segment
9149         in PT_LOAD headers, ie. the address range included in p_memsz but not
9150         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
9151         in that address range.
9153         * src/unexelf.c: Delete old ppc comment.
9154         (OLD_PROGRAM_H): Define.
9155         (round_up): Delete.
9156         (unexec): Don't search for bss style sections by name.  Instead,
9157         use the last PT_LOAD header address range covered by p_memsz
9158         but not p_filesz and match any SHT_NOBITS section in that
9159         address range.  Simplify initialisation of section header vars.
9160         Don't assume that section headers are above bss segment.  Move
9161         copying of bss area out of section loop.  Align .data2 section
9162         to 1, since it now covers the entire bss area.  For SHT_NOBITS
9163         sections in the bss segment, leave sh_addr and sh_addralign
9164         unchanged, but correct sh_offset.  Clear memory corresponding
9165         to SHT_NOBITS .plt section.  Delete comment and hacks for
9166         sections partly overlapping bss range now that the full range
9167         is properly calculated.  Delete now dead .sbss code.
9168         (Bug#20614)
9170 2015-11-08  Alan Modra  <amodra@gmail.com>
9172         ELF unexec: R_*_NONE relocs
9174         These should be ignored on all targets.
9176         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
9177         not just Alpha.  Comment on reloc size assumption.
9179 2015-11-08  Alan Modra  <amodra@gmail.com>
9181         ELF unexec: _OBJC_ symbols in bss sections
9183         This code assumed that there was only one bss section.  Rather than
9184         checking for a particular index, check the section type.  Also, handle
9185         the possibility that the section was SHT_NOBITS originally and is
9186         unchanged, in which case no clearing is needed (and sh_offset isn't
9187         necessarily valid, which can lead to a wild memset).
9189         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in bss sections.
9191 2015-11-08  Alan Modra  <amodra@gmail.com>
9193         ELF unexec: Symbol table patching
9195         No st_shndx value larger than SHN_LORESERVE should be changed.
9196         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
9197         SHN_LORESERVE.  Error on SHN_XINDEX.
9199 2015-11-08  Alan Modra  <amodra@gmail.com>
9201         ELF unexec: Merge Alpha and MIPS COFF debug handling
9203         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
9204         Don't find .mdebug section index, find the section in the loop.
9205         Allow for unlikely possibility that .mdebug is located at sh_offset
9206         before bss segment, by calculating move from difference in
9207         sh_offset rather than just assuming new_data2_size.  Simplify
9208         cbLineOffset handling.
9210 2015-11-08  Alan Modra  <amodra@gmail.com>
9212         ELF unexec: Tidy code
9214         Separate out some of the more mechanical changes so following patches
9215         are smaller.
9217         * src/unexelf.c (unexec): Rearrange initialisation of program
9218         header vars.  Use pointer vars in loops rather than indexing
9219         section header array via macros.  Simplify _OBJC_ sym code
9220         and reloc handling code.
9222 2015-11-08  Alan Modra  <amodra@gmail.com>
9224         ELF unexec: Correct section header index
9226         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
9227         it should have been using "NEW_SECTION_H (nn)" to find the name of the
9228         section currently being processed.  Of course, before the bss
9229         sections, n and nn have the same value, so this doesn't matter except
9230         in the case of .sbss.  For .sbss this probably meant .bss (most likely
9231         the next section) was copied from memory.  A later patch removes the
9232         bogus .sbss handling anyway.
9234         * src/unexelf.c (unexec): Use correct index to look up names.
9236 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
9238         Fix Bug#21841
9240         * lisp/filenotify.el (file-notify--rm-descriptor):
9241         Use `descriptor' instead of computing its value.
9242         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
9243         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
9244         (Bug#21841)
9246 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
9248         Remove dirs in vc project roots from the the vc project library roots
9250         * lisp/progmodes/project.el (project-library-roots): Remove
9251         directories inside the project roots from the result.
9252         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
9254 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
9256         Move and rename xref-find-regexp to the project package
9258         * lisp/progmodes/project.el (project-find-regexp)
9259         (project--read-regexp)
9260         (project--find-regexp-in): New functions.
9262         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
9263         xref--show-xrefs.  Use in existing callers in place of that
9264         function.
9265         (xref--show-xrefs): Only do the "show" part.
9266         (xref-find-regexp): Rename, more or less, to
9267         project-or-libraries-find-regexp.
9269 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
9271         Abolish temporary buffer management for xref
9273         * lisp/progmodes/xref.el (xref--temporary-buffers)
9274         (xref--current)
9275         (xref--inhibit-mark-current)
9276         (xref--mark-selected): Remove.  Remove all references.
9277         (xref--show-xrefs): Do not construct the
9278         list of the temporary buffers, nor pass it along.
9280 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
9282         Rename "search path" to "library roots"
9284         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
9285         of the elements from CL-LIST1.
9287         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
9288         Update WRT to the above change.
9290         * lisp/progmodes/project.el (project-search-path-function): Rename
9291         to project-library-roots-function, update the documentation and
9292         references.
9293         (project-search-path): Likewise, to project-library-roots.
9294         (project-roots): Clarify documentation.
9295         (project-vc-search-path): Likewise, to project-vc-library-roots.
9296         (project-library-roots): In addition to the renames, thread the
9297         results through file-name-as-directory.
9298         (project-prune-directories): Accept a variable number of
9299         arguments.  Rename to project-combine-directories.
9300         (project-subtract-directories): New function.
9302         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
9303         Append project-roots and project-library-roots together.
9305         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
9307 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
9309         Prefer xpalloc to doubling buffers by hand
9311         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
9312         (read1): Use it for simplicity.
9313         * src/macros.c (store_kbd_macro_char):
9314         * src/minibuf.c (read_minibuf_noninteractive):
9315         * src/term.c (encode_terminal_code):
9316         * src/xrdb.c (magic_db):
9317         Prefer xpalloc to growing buffers by hand.
9318         This doesn’t fix any bugs, but simplifies the code a bit.
9320 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
9322         Merge from gnulib
9324         This incorporates:
9325         2015-11-05 timespec-sub: fix overflow bug; add tests
9326         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
9327         2015-11-03 intprops: add parentheses
9328         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
9329         Copy from gnulib.
9331 2015-11-07  David Reitter  <david.reitter@gmail.com>
9333         Provide NS notification objects where required to eliminate warnings
9335         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
9336         Call notification functions with notification objects
9337         as per delegate APIs.
9339 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
9341         Add test for bug #21824
9343         * test/automated/buffer-tests.el: New file.
9344         (overlay-modification-hooks-message-other-buf): New test.
9346 2015-11-07  Kelvin White  <kwhite@gnu.org>
9348         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
9350 2015-11-07  David Reitter  <david.reitter@gmail.com>
9352         Ignore fullscreen exit notifications on NS when frame is dead
9354         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
9355         (windowDidExitFullScreen:): Return if frame is dead.
9356         These functions may be called when a fullscreen frame
9357         is closed; they are called before, not after.
9359         May address Bug#21428.
9361 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
9363         Speed up lookup in redisplay--variables
9365         * lisp/frame.el (redisplay--variables): Make it a hash-table.
9367         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
9368         as a hash-table.  This speeds up this function by an order of
9369         magnitude: where previously a setq was slowed down by 100% by
9370         introducing the maybe_set_redisplay test, it is now only 5%
9371         slower.
9372         (syms_of_xdisp) <redisplay--variables>: Doc fix.
9374 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
9376         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
9378         The defsubst was being created as:
9379             (cl-defsubst name (args) ("DOC") ...)
9381         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
9382         Add test.
9384 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
9386         Update doc string of hexl-mode
9388         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
9390 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
9392         Fix error in copy-abbrev-table
9394         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
9395         property of the abbrev-table.  (Bug#21828)
9397         * test/automated/abbrev-tests.el: New file.
9399 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
9401         Add test to auto-revert-tests.el for Bug#21841
9403         * test/automated/auto-revert-tests.el
9404         (auto-revert-test01-auto-revert-several-files): New test.
9405         (auto-revert-test02-auto-revert-tail-mode)
9406         (auto-revert-test03-auto-revert-mode-dired): Rename them.
9408 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
9410         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
9412 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
9414         In x_consider_frame_title don't set title of tooltip frames
9416         * src/xdisp.c (x_consider_frame_title): Return immediately for
9417         tooltip frames to avoid displaying empty tooltips.
9419 2015-11-06  Anders Lindgren  <andlind@gmail.com>
9421         Fixed NextStep fullscreen problem (bug#21770).
9423         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
9424         fullscreen frames.
9426 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
9428         Ensure redisplay after evaluation
9430         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
9431         Revert last change.
9432         * lisp/frame.el (redisplay--variables): Populate the
9433         redisplay--variables list.
9434         * src/xdisp.c (maybe_set_redisplay): New function.
9435         (syms_of_xdisp) <redisplay--variables>: New variable.
9436         * src/window.h (maybe_set_redisplay): Declare prototype.
9437         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
9439 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9441         * test/automated/subr-tests.el (subr-test-when): Fix again.
9443 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
9445         Don't invoke overlay modification hooks in wrong buffer
9447         * src/buffer.c (report_overlay_modification): When called with
9448         AFTER non-zero, don't invoke overlay modification hooks if the
9449         buffer recorded in last_overlay_modification_hooks is different
9450         from the current buffer.  (Bug#21824)
9452 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
9454         * admin/notes/repo: Fix a few obsolete references to Bazaar.
9456 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9458         * test/automated/subr-tests.el (subr-test-when): Fix test.
9460 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
9462         Avoid division by zero crash observed by Yuan MEI
9464         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
9466         * src/dispnew.c (required_matrix_height, required_matrix_width):
9467         Avoid division by zero.
9468         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
9469         dpyinfo->smallest_char_width to 1.
9471 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
9473         Ensure redisplay after "C-x C-e"
9475         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
9476         redisplay happens to account for any side effects of the evaluated
9477         sexp.  (Bug#21835)
9479 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
9481         Skip some file notification tests for cygwin
9483         * test/automated/file-notify-tests.el (file-notify--test-with-events):
9484         Remove argument TIMEOUT.  Adapt all callees.
9485         (file-notify-test02-events, file-notify-test04-file-validity):
9486         Skip for cygwin.  (Bug#21804)
9488 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
9490         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
9492 2015-11-05  Daiki Ueno  <ueno@gnu.org>
9494         Suppress redundant Pinentry startup messages
9496         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
9497         * lisp/epg.el: Declare `pinentry-start'.
9498         (epg--start): Call `pinentry-start' with QUIET argument set.
9500 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
9502         * doc/emacs/ack.texi (Acknowledgments): Updates.
9504 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
9506         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
9507         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
9509 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
9511         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
9512         Add prettification support for \times.
9514 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
9516         * test/automated/process-tests.el: Skip tests when bash is unavailable.
9517         (process-test-sentinel-accept-process-output)
9518         (process-test-sentinel-sit-for): skip-unless bash executable found.
9520 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
9522         Add test for bug #21831
9524         * test/automated/process-tests.el
9525         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
9526         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
9528 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
9530         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
9532         (eieio--generic-static-object-generalizer): Fix typo.
9533         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
9534         like the underlying cause of bug#17852 was fixed in the mean time.
9536 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
9538         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
9540         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
9541         It breaks bootstrapping (duh).
9543 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
9545         * lisp/files.el (report-errors): Obsolete.
9547         (normal-mode, hack-local-variables, dir-locals-find-file):
9548         Use `with-demoted-errors' instead.
9550 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
9552         * lisp/subr.el (when): Use `macroexp-progn'.
9554         * test/automated/subr-tests.el (subr-test-when): New test.
9556 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
9558         * lisp/progmodes/xref.el: Doc fixes.
9559         (xref-make-file-location, xref-make-buffer-location, xref-make)
9560         (xref-make-bogus-location, xref-make-match): Add cross-references.
9561         (xref--insert-xrefs): Fix typo in docstring.
9563 2015-11-04  Anders Lindgren  <andlind@gmail.com>
9565         Render fringe bitmaps correctly on NextStep (bug#21301)
9567         The fringe bitmaps were inverted, the background was not transparent,
9568         the image data was horizontally mirrored, and periodic fringe bitmaps
9569         were not supported.
9571         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
9572         When both background and foreground colors are 0, set the background
9573         alpha channel to 0 (making the background transparent).  When
9574         copying the image data, do this from the most significant bit
9575         (leftmost) to the least (rightmost), to avoid mirroring.
9576         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
9577         Add support for periodic images (e.g. the empty line indicator).
9579 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
9581         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
9583 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
9585         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
9587         * admin/MAINTAINERS: Add thunk.el.
9589 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
9591         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
9593 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
9595         Fix a stupid error in gfilenotify.c
9597         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
9598         if we've got a `deleted' signal AND the file name is the watched one.
9600 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
9602         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
9604         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
9605         Use case-insensitive string compare for file names.
9606         (emacs-test-dir): Add 'downcase' to cause case differences (at
9607         least on my system).
9609 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
9611         flymake-tests.el (warning-predicate-rx-gcc): Fix check
9613         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
9614         Also check that "make" is available, not just "gcc".
9616 2015-11-02  Ken Brown  <kbrown@cornell.edu>
9618         Document behavior of collation on Cygwin
9620         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
9621         expected failure on Cygwin.
9622         * doc/lispref/strings.texi (Text Comparison): Document that
9623         punctuation and whitespace are not ignored for sorting on Cygwin.
9625 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
9627         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
9629 2015-11-01  Glenn Morris  <rgm@gnu.org>
9631         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
9632         (Bug#21794)
9633         * test/automated/f90.el (f90-test-bug21794): New test.
9635 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
9637         Fix incompatibility with TCC in test for bug#18745
9639         * test/automated/process-tests.el (process-test-quoted-batfile):
9640         Remove spaces unrelated to the bug being tested.
9642 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
9644         Improve completion in tramp-gvfs.el
9646         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
9647         Rename from `tramp-zeroconf-parse-service-device-names'.
9648         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
9649         with `tramp-zeroconf-parse-device-names'.
9650         (tramp-gvfs-parse-device-names): New defun.
9651         (top): Use it when `tramp-zeroconf-parse-device-names' is not
9652         applicable.
9654         * lisp/net/tramp.el (tramp-set-completion-function): The argument
9655         could also be a zeroconf service type.
9657 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9659         * lisp/net/ntlm.el: Change version to 2.0.0.
9661 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
9663         Fix bug#21762
9664         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
9665         `eql' instead of `=' to accommodate the case that (syntax-after (point))
9666         returns nil.
9667         * test/automated/python-tests.el (python-indent-inside-paren-7):
9668         New test.
9670 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
9672         * test/automated/python-tests.el: Avoid warnings.
9673         (python-tests-with-temp-buffer, python-tests-with-temp-file):
9674         Bind `python-indent-guess-indent-offset' to nil.
9676 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
9678         * src/alloc.c: Silence compiler warnings.
9679         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
9681 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
9683         * etc/NEWS: Fix js-jsx-mode entry punctuation.
9685 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
9687         Add JSX indentation via js-jsx-mode  (Bug#21799)
9689         * lisp/progmodes/js.el: Add JSX indentation support.
9690         (js--jsx-end-tag-re)
9691         (js--jsx-after-tag-re): New variables.
9692         (js--jsx-find-before-tag)
9693         (js--jsx-indented-element-p)
9694         (js--as-sgml)
9695         (js--expression-in-sgml-indent-line)
9696         (js-jsx-indent-line)
9697         (js-jsx-mode): New functions.
9698         * test/indent/js-jsx.js: New file.
9699         * etc/NEWS: Add information about js-jsx-mode.
9701 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
9703         Minor fix in filenotify.el
9705         * lisp/filenotify.el (file-notify--event-file-name)
9706         (file-notify--event-file1-name): Normalize result with
9707         `directory-file-name'.
9709 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
9711         Avoid errors in redisplay--pre-redisplay-functions
9713         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
9714         use 'bobp', instead compare window-point with 1.  (Bug#21730)
9716 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
9718         Merge from gnulib
9720         This incorporates:
9721         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
9722         2015-10-25 stdalign: port to Sun C 5.9
9723         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
9724         Copy from gnulib.
9726 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
9728         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
9729         (w32_compare_strings): Adjust for the correction.
9731 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
9733         * test/automated/vc-tests.el (vc-test--state)
9734         (vc-test--working-revision, vc-test--checkout-model):
9735         Add result messages.
9737 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9739         * test/automated/faces-tests.el: Add another test
9741 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9743         * lisp/faces.el (faces--attribute-at-point): Fix bug
9744         introduced by previous commit.
9746 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9748         * test/automated/faces-tests.el: New file.
9750 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9752         * lisp/faces.el: Refactor common code and fix a bug.
9753         (faces--attribute-at-point): New function.  Fix a bug when the
9754         face at point is a list of faces and the desired attribute is not
9755         on the first one.
9756         (foreground-color-at-point, background-color-at-point): Use it.
9758 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
9760         * etc/tutorials/TUTORIAL.translators: Fix PL names.
9762 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
9764         * lisp/character-fold.el: Provide `character-fold'.
9766 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
9768         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
9769         for Gnus and ivy.
9771 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
9773         Some minor fixes for tramp-gvfs.el
9775         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
9776         An attribute returned by gvfs-info might be empty.  In case of
9777         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
9778         (tramp-zeroconf-parse-service-device-names): New defun.
9779         Derived from `tramp-zeroconf-parse-workstation-device-names'.
9780         (top): Add completion functions for "afp" and "smb" methods.
9782 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9784         * test/automated/character-fold-tests.el: New file
9786 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9788         * test/automated/sort-tests.el: New file.
9789         Tests in this file are randomly generated and then tested with
9790         regular, reverse, and case-fold sorting.
9792 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
9794         Describe known problems with pinning Emacs to taskbar
9796         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
9797         on Windows 10.  For the details, see the discussion starting at
9798         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
9800 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9802         * lisp/isearch.el: Avoid an error that blocks isearch.
9803         (isearch-update): Don't error if `isearch--current-buffer' has
9804         been killed.
9806         * test/automated/isearch-tests.el (isearch--test-update):
9807         New file.
9809 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
9811         Fix documentation of 'beginning/end-of-buffer'
9813         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
9814         conditions under which the mark will be pushed at the previous
9815         position.  (Bug#21748)
9817 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
9819         Add RefTeX feature idea: editing RefTeX TOC buffers
9821         More face defs for ivy, swiper, ace-window, eshell
9823 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9825         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
9826         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
9827         just VAR.
9828         (auth-source-backend-parse): Use make-instance.
9829         (auth-source-search): Remove unused key args.
9830         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
9831         (auth-source-search-backends): Use slot names rather than their initarg.
9832         (auth-source-netrc-create):
9833         (auth-source-delete):
9834         (auth-source-secrets-create, auth-source-plstore-search)
9835         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
9836         (auth-source-plstore-create, auth-source-netrc-search)
9837         (auth-source-netrc-parse): Remove unused key args.
9838         (auth-source-forget+): Simplify the arglist.
9839         (auth-source-macos-keychain-search-items)
9840         (auth-source-token-passphrase-callback-function): Mark unused args.
9841         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
9842         (pp-escape-newlines): Declare.
9843         (auto-source--symbol-keyword): New function.
9844         (auth-source-plstore-create, auth-source-netrc-create)
9845         (auth-source-netrc-normalize): Use it.
9846         (auth-source-netrc-search): Don't pass :delete to
9847         auth-source-netrc-parse since it doesn't use it.
9848         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
9849         symbol-value to index in keyword args.
9850         (auth-source-macos-keychain-result-append): Avoid setq.
9851         (auth-source-netrc-create): Remove unused vars `file' and `add'.
9852         (auth-source-user-or-password): Remove unused var `cname'.
9854 2015-10-29  Juri Linkov  <juri@linkov.net>
9856         * lisp/dired.el (dired-unmark-all-files-query): Declare.
9857         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
9858         (Bug#21746)
9860 2015-10-29  Juri Linkov  <juri@linkov.net>
9862         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
9863         to go to the beginning of text line instead of command line.
9864         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
9866 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
9868         Fix encoding of saving *Help* buffers
9870         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
9871         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
9873 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9875         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
9876         (cl--generic-derived-specializers): New function.
9877         (cl--generic-derived-generalizer): New generalizer.
9878         (cl-generic-generalizers): New specializer (derived-mode MODE).
9879         (cl--generic-split-args): Apply the rewriter, if any.
9880         (cl-generic-define-context-rewriter): New macro.
9881         (major-mode): Use it to define a new context-rewriter, so we can write
9882         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
9884         * lisp/frame.el (window-system): New context-rewriter so we can write
9885         `(window-system VAL)' instead of (window-system (eql VAL)).
9886         (cl--generic-split-args): Apply the rewriter, if any.
9887         (frame-creation-function): Use the new syntax.
9889         * lisp/term/x-win.el (window-system-initialization)
9890         (handle-args-function, frame-creation-function)
9891         (gui-backend-set-selection, gui-backend-selection-owner-p)
9892         (gui-backend-selection-exists-p, gui-backend-get-selection):
9893         * lisp/term/w32-win.el (window-system-initialization)
9894         (handle-args-function, frame-creation-function)
9895         (gui-backend-set-selection, gui-backend-get-selection)
9896         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
9897         * lisp/term/pc-win.el (gui-backend-get-selection)
9898         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
9899         (gui-backend-set-selection, window-system-initialization)
9900         (frame-creation-function, handle-args-function):
9901         * lisp/term/ns-win.el (window-system-initialization)
9902         (handle-args-function, frame-creation-function)
9903         (gui-backend-set-selection, gui-backend-selection-exists-p)
9904         (gui-backend-get-selection):
9905         * lisp/startup.el (handle-args-function):
9906         * lisp/term/xterm.el (gui-backend-get-selection)
9907         (gui-backend-set-selection): Use the new syntax.
9909 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9911         * test/indent/css-mode.css: Add tests for url(...) syntax.
9913 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9915         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
9916         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
9917         (smie-prec2->grammar): Use `declare'.
9919 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9921         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
9922         (cl--generic-generalizer): Add `name' field.
9923         (cl-generic-make-generalizer): Add corresponding `name' argument.
9924         (cl-generic-define-generalizer): New macro.
9925         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
9926         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
9927         (cl--generic-t-generalizer): Use it.
9928         (cl-generic-ensure-function): Add `noerror' argument.
9929         (cl-generic-define): Use it so we don't follow aliases.
9930         (cl-generic-define-method): Preserve pre-existing ordering of methods.
9931         (cl--generic-arg-specializer): New function.
9932         (cl--generic-cache-miss): Use it.
9933         (cl-generic-generalizers): Only fset a temporary definition
9934         during bootstrap.
9935         (cl--generic-struct-tag, cl--generic-struct-specializers):
9936         Allow extra arguments.
9938         * lisp/emacs-lisp/eieio-compat.el
9939         (eieio--generic-static-symbol-generalizer)
9940         (eieio--generic-static-object-generalizer):
9941         Use cl-generic-define-generalizer.
9942         (eieio--generic-static-symbol-specializers): Allow extra arguments.
9944         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
9945         (eieio--generic-subclass-generalizer):
9946         Use cl-generic-define-generalizer.
9947         (eieio--generic-subclass-specializers): Allow extra arguments.
9949 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9951         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
9953 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
9955         Add "afp" method to Tramp
9957         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
9959         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
9960         (tramp-gvfs-handle-expand-file-name)
9961         (tramp-gvfs-handler-mounted-unmounted)
9962         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
9963         (tramp-gvfs-maybe-open-connection): Support also "afp".
9964         (tramp-gvfs-handle-file-attributes): Handle the case of empty
9965         "owner::user" and "owner::group" entries.
9967 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
9969         Handle negative coordinates in ‘x_calc_absolute_position’
9971         * src/w32term.c (x_calc_absolute_position): Find display origin to
9972         allow for negative coordinates.
9974 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
9976         (internal--syntax-propertize): Save match-data here (bug#21766)
9978         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
9979         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
9981 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
9983         Don't require default-directory to end with a slash
9985         * doc/lispref/files.texi (Magic File Names): Document the change
9986         in unhandled-file-name-directory.
9988         * lisp/url/url-handlers.el
9989         (url-handler-unhandled-file-name-directory): Update accordingly.
9991         * src/buffer.c (default-directory): Update the docsting.
9993         * src/fileio.c (unhandled-file-name-directory): Default to calling
9994         `file-name-as-directory'
9995         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
9997 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
9999         * lisp/isearch.el: Delete some outdated comments.
10001 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
10003         Fix eshell/clear not working if the output has a small line count
10005         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
10006         number of newlines to be inserted. This fixes the issue where
10007         eshell/clear wouldn't work if the prompt was not at the bottom of the
10008         window, and the output wasn't too long.
10010 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
10012         * lisp/files.el (write-file): Use vc-refresh-state.
10014         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
10016         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
10018 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
10020         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
10021         (macroexp-unprogn): Make sure we never return an empty list.
10022         (macroexp-if): Remove unused (and unsafe) optimization.
10023         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
10024         occur occasionally.
10026 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
10028         Fix bug#21766 and add test
10029         * lisp/simple.el (delete-trailing-whitespace): Save match data when
10030         calling `skip-syntax-backward'.
10031         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
10032         New test.
10034 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10036         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
10038 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
10040         * src/dispnew.c (init_display): Simplify overflow checking.
10042 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10044         * lisp/character-fold.el (character-fold-to-regexp): Fix case
10045         where string ends in space
10047 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10049         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
10051         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
10053 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10055         * lisp/character-fold.el: Make compatible with lax-whitespace.
10056         (character-fold-to-regexp): Rework internals to play nice with
10057         lax-whitespacing.
10059         When the user types a space, we want to match the table entry for
10060         ?\s, which is generally a regexp like "[ ...]".  However, the
10061         `search-spaces-regexp' variable doesn't "see" spaces inside these
10062         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
10063         manually expose a space).
10065         Furthermore, the lax search engine acts on a bunch of spaces, not
10066         on individual spaces, so if the string contains sequential spaces
10067         like "  ", we need to keep them grouped together like this:
10068         "\\(  \\|[ ...][ ...]\\)".
10070 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10072         * lisp/isearch.el: Refactor momentary messages.
10073         (isearch--momentary-message): New function.
10074         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
10075         (isearch-toggle-invisible): Use it.
10077 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10079         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
10080         (isearch-define-mode-toggle): New macro.
10081         (isearch-toggle-invisible): Rename to
10082         `isearch-define-mode-toggle'.
10083         (isearch-toggle-case-fold, isearch-toggle-invisible)
10084         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
10085         with `isearch-define-mode-toggle'.
10087 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
10089         Avoid using `add-to-list' on a let-local var in tramp-smb.el
10091         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
10092         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
10094 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
10096         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
10097         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
10098         does not exist in XEmacs 21.4.
10100 2015-10-28  Anders Lindgren  <andlind@gmail.com>
10102         Fixed OS X startup crash
10104         Input events started to arrive before ns_term_init() was finished.
10105         Solved by blocking input.  This also seems to correct the "You
10106         can't open the application "Emacs" because it may be damaged or
10107         incomplete" error issued when double-clicking on the Emacs
10108         application.
10110         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
10111         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
10113 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10115         * src/process.c (Fget_buffer_process): Improve docstring.
10116         Document the fact that it doesn't return dead processes.
10118 2015-10-28  Anders Lindgren  <andlind@gmail.com>
10120         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
10122         * src/nsterm.h (struct ns_output): New flag, in_animation.
10123         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
10124         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
10125         in_animation flag around call to "setVisible". Set new tool bar
10126         height before call to setVisible.
10127         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
10128         andColumns:] as this fools the subsequent call to updateFrameSize
10129         from performing the real resize.
10130         (windowDidResize): Don't update anything when in_animation is
10131         non-zero.
10133         Trace output.
10135         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
10136         (EmacsToolbar):
10137         * src/nsterm.m (x_set_window_size, updateFrameSize)
10138         ([EmacsView setRows: andColumns:])
10140 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
10142         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
10144 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
10146         Prettify TeX macros not ending in a word char
10148         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
10149         Prettify macros which don't end in a word character.
10151 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
10153         Pipe Hg commit descriptions through 'tabindent'
10155         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
10156         through 'tabindent'.
10157         (vc-hg-log-view-mode): Set tab-width to 2 locally.
10158         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
10160 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10162         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
10163         (tramp-smb-handle-directory-files): Use `delete-dups'.
10165         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
10167 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10169         * lisp/international/ccl.el: Use lexical-binding.
10170         (ccl-compile-if): Remove unused var `false-ic'.
10171         (ccl-compile-write-repeat): Remove unused var `i'.
10172         (ccl-compile-map-single): Remove unused var `id'.
10173         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
10174         dynamic var `ccl-code'.
10176 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10178         * lisp/json.el (json-new-object): Optimize trivial `list' call.
10180 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10182         * lisp/help.el: Fix bug with incorrect arglist string.
10183         (help-add-fundoc-usage): Don't mistake a mis-formatted string
10184         for a list.
10186 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10188         * lisp/gnus/gnus-topic.el: Silence some warnings.
10189         (gnus-topic-prepare-topic): Remove unused var `topic'.
10190         (gnus-topic-remove-topic): Mark unused arg `hide'.
10191         (gnus-tmp-header): Declare.
10192         (gnus-topic-goto-missing-group): Remove unused var `entry'.
10193         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
10194         (gnus-topic-copy-matching): Mark unused arg `copyp'.
10195         Move initialization of `topic' into its declaration.
10197 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
10199         Minor CEDET fixes
10201         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
10202         Handle warnings from gtags about invalid options.
10203         (cedet-gnu-global-create/update-database): Do incremental update
10204         properly.
10206         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
10207         Get monotone root right.
10209 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
10211         Fall back to polling in autorevert when needed
10213         * lisp/autorevert.el (auto-revert-notify-handler): When a
10214         `stopped' event arrives from file notification, fall back to polling.
10216         * test/automated/file-notify-tests.el
10217         (file-notify-test03-autorevert): Extend test for polling when file
10218         notification ceases to work.
10220 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
10222         Show full commit messages in 'hg log' when appropriate
10224         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
10225         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
10226         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
10228 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
10230         Use a plain SVG file for the icon
10232         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
10233           format instead of the Inkscape SVG format.
10235 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
10237         Fix subtle bug in auto-revert-tests.el
10239         * test/automated/auto-revert-tests.el
10240         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
10241         buffer where it belongs to.  (Bug#21668)
10243 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
10245         * lisp/emacs-lisp/map.el: Better docstrings.
10247         * lisp/emacs-lisp/seq.el: Better docstrings.
10249         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
10251 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
10253         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
10255 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
10257         Clarify that load-path contents should be directory file names
10259         * doc/lispref/files.texi (Directory Names): Define and use "directory
10260         file name".  Recommend `expand-file-name'.
10262         * src/lread.c (load-path): Fix doc string; elements are directory file
10263         names.
10265 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
10267         Fix simple-test.el test
10269         * test/automated/simple-test.el (simple-test--dummy-buffer):
10270         Make sure indentation doesn't use TABs, otherwise the 6th test
10271         might fail.
10273 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
10275         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
10276         `substring' does not account for full width characters.
10278 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
10280         Further work on `stopped' events in filenotify.el
10282         * doc/lispref/os.texi (File Notifications): Rework examples.
10284         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
10285         (file-notify--rm-descriptor, file-notify-callback): Improve check
10286         for sending `stopped' event.
10287         (file-notify-add-watch): Check for more events for `inotify'.
10289         * test/automated/file-notify-tests.el
10290         (file-notify--test-expected-events): New defvar.
10291         (file-notify--test-with-events): Use it.
10292         (file-notify--test-cleanup): Make it more robust when deleting
10293         directories.
10294         (file-notify--test-event-test): Check also for watched directories.
10295         (file-notify--test-event-handler): Suppress temporary .#files.
10296         (file-notify-test02-events, file-notify-test04-file-validity):
10297         Rework `stopped' events.
10298         (file-notify-test05-dir-validity): Wait for events when appropriate.
10300 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
10302         * src/keyboard.c (post-command-hook): Shorten docstring.
10304 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
10306         Fix infinite loop in sh-script's SMIE code
10308         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
10309         loop (bug#21747).
10311 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10313         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
10314         Character-fold search _still_ doesn't play well with
10315         lax-whitespace.  So disable it by default (again) for now.
10317 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10319         * lisp/isearch.el: No visual feedback for default search mode.
10320         During an isearch where character-folding is the default, we don't
10321         want to take up minibuffer space just to tell the user that
10322         "Char-fold " is on.  The same goes for other modes, if the user
10323         changes the default.  In contrast, if the user toggles OFF the
10324         default mode, they should see "Literal", to distinguish it from
10325         the default mode.
10326         (isearch--describe-regexp-mode): Return "" if describing the
10327         default mode, and return "literal " if describing a plain search
10328         and it is not default.
10330 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10332         * test/automated/simple-test.el: New file.
10333         Define tests for `newline' and `open-line'.
10335 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10337         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
10338         Also run `post-self-insert-hook' when called interactively.
10340 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10342         * lisp/simple.el (open-line): Fix docstring.
10343         Also explain apparently redundant line.
10345 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10346             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
10348         Sync with soap-client repository, version 3.0.1
10350         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
10351         Bump version to 3.0.1.
10353         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
10355 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
10357         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
10359 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10361         * src/keyboard.c (post-command-hook): Extend the docstring.
10362         Mainly, explain how to use it without hanging Emacs, or giving the
10363         impression that it is hanging.  Also mention `pre-command-hook'.
10364         (pre-command-hook): Mention `post-command-hook'.
10366 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10368         * lisp/custom.el (custom-declare-variable): Shorten code again.
10369         Without using pcase this time.  We can't use pcase because it is
10370         loaded after custom in loadup.el.  Also add a comment explaining
10371         this to future dummies like me.
10373 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
10375         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
10377 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
10379         Introduce `stopped' event in file notification
10381         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
10382         (file-notify-rm-watch): Use it.
10383         (file-notify-callback): Implement `stopped' event.
10384         (file-notify-add-watch): Mention `stopped' in the docstring.
10385         Check, that upper directory exists.
10387         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
10388         Add two test cases.
10389         (file-notify-test02-events): Handle also `stopped' event.
10390         (file-notify-test04-file-validity): Add another test case.
10392 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
10394         Revert commit that broke 'make bootstrap'
10396         * lisp/custom.el (custom-declare-variable): Revert commit
10397         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
10398         even when pcase has not been defined yet, when doing bootstrapping.
10400 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
10402         Port recent inline functions fix to Standard C
10404         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
10405         All uses rewritten to define the function directly rather than to
10406         use a macro to define the function.  This conforms to Standard C,
10407         which does not allow stray semicolons at the top level.  I hope it
10408         also avoids the problems with TAGS.  Those macros, though clever,
10409         were pretty confusing anyway, and it wasn’t clear they were worth
10410         the aggravation even without the TAGS problem.
10412 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
10414         * lisp/isearch.el: Make character-fold search the default again.
10416 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
10418         * lisp/character-fold.el: Many improvements.
10419         (character-fold-search-forward, character-fold-search-backward):
10420         New command.
10421         (character-fold-to-regexp): Remove lax-whitespace hack.
10422         (character-fold-search): Remove variable.  Only isearch and
10423         query-replace use char-folding, and they both have their own
10424         variables to configure that.
10426 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
10428         * lisp/isearch.el: Generalize definition of regexp-function toggles.
10429         (isearch-specify-regexp-function): New macro for specifying
10430         possible values of `isearch-regexp-function'.
10431         (isearch-toggle-character-fold, isearch-toggle-symbol)
10432         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
10434 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
10436         * lisp/isearch.el (search-default-regexp-mode): New variable.
10437         (isearch-mode): Use it.
10439 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
10441         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
10442         (search-slow-speed, search-upper-case)
10443         (search-nonincremental-instead, search-whitespace-regexp)
10444         (search-invisible, isearch-hide-immediately)
10445         (isearch-resume-in-command-history, search-ring-max)
10446         (regexp-search-ring-max, search-ring-update, search-highlight)
10447         (isearch-fail): Delete :group entries.
10449 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
10451         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
10453 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
10455         addpm.c: Silence some warnings.
10457         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
10458         to LPBYTE.
10459         (add_registry): Pass NULL to optional lpClass argument of
10460         RegCreateKeyEx, not an empty string.
10462 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
10464         addpm.c: Do not add obsolete GTK libraries to the path.
10466         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
10467         (add_registry): Remove variables `size' and `gtk_key'.
10468         Do not add the GTK DLL directory to the library search path; it is
10469         confusing behavior (in particular, the same Emacs version with and
10470         without invoking addpm will use a different path), and the GTK image
10471         libraries are obsolete anyway.
10473 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
10475         addpm.c: Replace existing registry entries, but do not create new ones
10477         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
10478         existing values from previous versions, but do not add new ones; the
10479         key could exist for other reasons unrelated to old Emacsen, like X-style
10480         resources, or to set some environment variables like HOME or LANG, and
10481         in that case we don't want to populate it with obsolete values.
10483 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
10485         * nt/addpm.c (add_registry): Do not compute unused return value.
10487 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
10489         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
10491         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
10492         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
10493         current behavior because REG_OPTION_NON_VOLATILE is defined to
10494         be 0L anyway, but that option is actually documented only for
10495         RegCreateKeyEx.
10497 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
10499         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
10501 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
10503         Update frame title when redisplay scrolls selected window
10505         * src/xdisp.c (redisplay_window): Reconsider the frame's title
10506         when the mode-line of the frame's selected window needs to be
10507         updated.
10509 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
10511         Update frame title when scrolling the selected window
10513         * src/window.c (wset_update_mode_line): New function, sets either
10514         the window's update_mode_line flag or the global update_mode_lines
10515         variable.
10516         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
10517         (window_scroll_line_based): Call it instead of only setting the
10518         window's update_mode_line flag.
10520 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
10522         An even better fix for bug#21739
10524         * src/window.c (set_window_buffer): If the window is the frame's
10525         selected window, set update_mode_lines, not the window's
10526         update_mode_line flag.
10527         * src/buffer.c (Fkill_buffer): Undo last change.
10528         (set_update_modelines_for_buf): Function deleted.
10530 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10531             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
10533         Sync with soap-client repository, version 3.0.0
10535         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
10536         Bump version to 3.0.0.
10538         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
10540         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
10542         * lisp/net/soap-inspect.el: Shorten first line description.
10544         * lisp/net/soap-client.el: Make a small whitespace fix.
10546         * lisp/net/soap-inspect.el: Update copyright years.
10548         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
10549         first use in soap-encode-xs-element.
10551         * lisp/net/soap-client.el (soap-type-is-array?): new defun
10552         (soap-encode-xs-element): handle array elements in this function
10553         (soap-encode-xs-complex-type): flag error if asked to encode an
10554         array type, this is handled in `soap-encode-xs-element'
10556         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
10557         Do not print type for attribute group.
10559         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
10560         New function.
10561         (soap-inspect-xs-attribute-group): Likewise.
10563         * lisp/net/soap-inspect.el
10564         (soap-resolve-references-for-xs-attribute-group): Resolve
10565         references of attributes in an attribute group.
10567         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
10568         type directly, not through soap-wsdl-get.
10570         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
10571         nil if reference attribute is nil.
10573         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
10574         Convert XML schema attributes to xsd:string.
10576         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
10577         New function.
10578         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
10579         (soap-sample-value-for-xs-complex-type): Likewise.
10580         (soap-inspect-xs-attribute): New function.
10581         (soap-inspect-xs-simple-type): Print attributes.
10582         (soap-inspect-xs-complex-type): Likewise.
10584         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
10585         Resolve references for attributes.
10586         (soap-resolve-references-for-xs-complex-type): Likewise.
10588         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
10589         Rename from soap-xml-node-first-child.
10590         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
10591         (soap-xs-parse-simple-type): Likewise.
10593         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
10595         * lisp/net/soap-client.el (soap-invoke-internal): New function.
10596         (soap-invoke-async): Call soap-invoke-internal.
10597         (soap-invoke): Likewise.
10599         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
10600         url-retrieve callback is killed.
10602         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
10603         Rename function.
10604         (soap-parse-wsdl-phase-fetch-imports): Likewise.
10605         (soap-parse-wsdl-phase-parse-schema): Likewise.
10606         (soap-parse-wsdl-phase-fetch-schema): Likewise.
10607         (soap-parse-wsdl-phase-finish-parsing): Likewise.
10608         (soap-parse-wsdl): Update calls.
10610         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
10612         * lisp/net/soap-client.el (soap-invoke-async): New function.
10613         (soap-invoke): Reimplement using soap-invoke-async.
10615         * lisp/net/soap-client.el (soap-parse-server-response):
10616         Improve docstring.
10617         (soap-invoke): Inline call to soap-parse-server-response.
10619         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
10620         Prevent incorrect warning.
10622         * lisp/net/soap-client.el (soap-parse-server-response):
10623         Rename soap-process-url-response.  Destroy the mime part.
10624         (soap-invoke): Call soap-parse-server-response.
10626         * lisp/net/soap-client.el: Update copyright date.
10628         * lisp/net/soap-client.el: Fix checkdoc issues.
10630         * lisp/net/soap-client.el: Fix indentation and long lines.
10632         * lisp/net/soap-client.el (soap-time-format): Remove variable.
10633         (soap-encode-xs-basic-type): Simplify date-time format detection.
10634         (soap-decode-xs-basic-type): Remove soap-time-format support.
10636         * lisp/net/soap-client.el (soap-process-url-response): New function.
10637         (soap-fetch-xml-from-url): Call soap-process-url-response.
10638         (soap-parse-wsdl-phase-1): New function.
10639         (soap-parse-wsdl-phase-2): Likewise.
10640         (soap-parse-wsdl-phase-3): Likewise.
10641         (soap-parse-wsdl-phase-4): Likewise.
10642         (soap-parse-wsdl-phase-5): Likewise.
10643         (soap-parse-wsdl): Call phase functions.
10645         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
10646         Remove one-argument and call.
10648         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
10650         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
10651         (soap-parse-schema): Add wsdl argument.  Look up XML schema
10652         imports from wsdl.
10653         (soap-load-wsdl): Do not set soap-xmlschema-imports.
10654         (soap-parse-wsdl): Get XML schema imports from wsdl.
10656         * lisp/net/soap-client.el (soap-current-file): Remove variable.
10657         (soap-wsdl): Add current-file slot.
10658         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
10659         file from wsdl.
10660         (soap-fetch-xml-from-file): Likewise.
10661         (soap-fetch-xml): Likewise.
10662         (soap-load-wsdl): Always create wsdl object first.
10663         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
10665         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
10666         (soap-xs-parse-element): Set is-group slot.
10667         (soap-resolve-references-for-xs-element): Skip is-group elements.
10668         (soap-xs-complex-type): Add is-group slot.
10669         (soap-xs-parse-complex-type): Set is-group slot.
10670         (soap-xs-parse-sequence): Parse xsd:group elements.
10671         (soap-resolve-references-for-xs-complex-type): Inline elements
10672         from referenced xsd:group nodes.
10673         (soap-parse-schema): Parse xsd:group nodes.
10675         * lisp/net/soap-client.el (soap-invoke):
10676         Don't set url-http-version to 1.0.
10678         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
10679         Allow choice nodes to accept multiple values.
10681         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
10682         for extra header values.
10684         * lisp/net/soap-client.el (soap-well-known-xmlns):
10685         Add wsa and wsaw tags.
10686         (soap-operation): Add input-action and output-action slots.
10687         (soap-parse-operation): Parse wsaw:Action nodes.
10688         (soap-encode-body): Encode service-url for WS-Addressing.
10689         (soap-create-envelope): Likewise.
10690         (soap-invoke): Update soap-create-envelope call to provide
10691         service-url argument.
10693         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
10694         Support xsi:type override attribute.
10695         (soap-decode-array): Likewise.
10697         * lisp/net/soap-client.el (soap-parse-schema):
10698         Handle location attribute.
10700         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
10701         matched validation regexp.
10703         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
10704         Encode xsd:list nodes.
10705         (soap-decode-xs-simple-type): Decode xsd:list nodes.
10707         * lisp/net/soap-client.el (soap-get-candidate-elements):
10708         Fix reference handling.
10710         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
10711         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
10712         (soap-xs-add-list): New function.
10714         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
10715         expected, interpret nil as "false".
10717         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
10718         gYear, gMonthDay, gDay and gMonth.
10720         * lisp/net/soap-client.el (soap-time-format): New variable.
10721         (soap-encode-xs-basic-type): Handle dateTime, time, date,
10722         gYearMonth, gYear, gMonthDay, gDay and gMonth.
10723         (soap-decode-date-time): New function.
10724         (soap-decode-xs-basic-type): Use soap-decode-date-time.
10726         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
10727         after encoding.
10728         (soap-decode-xs-basic-type): Validate value before decoding.
10730         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
10731         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
10733         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
10734         instead of overwriting it.
10735         (soap-validate-xs-simple-type): Add union support.
10737         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
10738         to Emacs regexp using xsdre-translate.
10739         (soap-validate-xs-simple-type): Validate value against pattern.
10741         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
10742         inline simpleType nodes.
10743         (soap-decode-type): Handle union types.
10745         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
10746         attributes.
10748         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
10749         from soap-xs-attribute-group-consolidate, all callers updated
10750         (soap-get-xs-attributes): Rename from
10751         soap-xs-attributes-consolidate, all callers updated
10753         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
10754         (soap-xs-attribute-group): New type.
10755         (soap-xs-parse-attribute-group): New function.
10756         (soap-resolve-references-for-xs-attribute-group): Likewise.
10757         (soap-xs-add-extension): Handle attribute groups.
10758         (soap-resolve-references-for-xs-simple-type): Likewise.
10759         (soap-xs-parse-complex-type): Likewise.
10760         (soap-xs-parse-extension-or-restriction): Likewise.
10761         (soap-resolve-references-for-xs-complex-type): Likewise.
10762         (soap-xs-attribute-group-consolidate): New function.
10763         (soap-xs-attributes-consolidate): Handle attribute groups.
10764         (soap-parse-schema): Likewise.
10766         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
10767         Fix boolean encoding.
10769         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
10770         element names in warnings.
10772         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
10774         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
10775         Eliminate invalid warnings for choice types.
10777         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
10778         Also encode base type attributes.
10780         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
10781         warning.  Print e-name in warnings, or element if e-name is nil.
10783         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
10784         (soap-xs-parse-element): Set substitution-group.
10785         (soap-resolve-references-for-xs-element): Populate alternatives slot.
10786         (soap-get-candidate-elements): New function.
10787         (soap-encode-xs-complex-type): Iterate through all candidate elements.
10788         Handle types with nil type indicator.  Fix warning logic.
10790         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
10791         earlier in the file to prevent compiler warning.
10793         * lisp/net/soap-client.el (soap-node-optional): New function.
10794         (soap-node-multiple): Likewise.
10795         (soap-xs-parse-element): Call soap-node-optional and
10796         soap-node-multiple.
10797         (soap-xs-complex-type): Add optional? and multiple? slots.
10798         (soap-xml-get-children-fq): New function.
10799         (soap-xs-element-get-fq-name): Likewise.
10800         (soap-xs-complex-type-optional-p): Likewise.
10801         (soap-xs-complex-type-multiple-p): Likewise.
10802         (soap-xs-attributes-consolidate): Likewise.
10803         (soap-decode-xs-attributes): Likewise.
10804         (soap-decode-xs-complex-type): Decode types with nil type indicator.
10805         Support children that use local namespaces.  Decode attributes.
10806         Add type considerations to optional? and multiple? warnings.
10808         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
10809         Store parsed attributes.
10810         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
10812         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
10813         Don't add the xsi:type attribute (Exchange refuses requests which have
10814         this attribute).
10816         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
10817         correct compiler warnings about unused function arguments and
10818         local variables.
10820         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
10821         type indicator.
10822         (soap-parse-envelope): Handle response headers.
10823         (soap-parse-response): Likewise.  Only return non-nil decoded values.
10825         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
10826         Return validated value.
10828         * lisp/net/soap-client.el (soap-xs-parse-element)
10829         (soap-xs-parse-simple-type)
10830         (soap-xs-parse-complex-type)
10831         (soap-parse-message)
10832         (soap-parse-operation): Add the current namespace to the element
10833         being created.
10834         (soap-resolve-references-for-xs-element)
10835         (soap-resolve-references-for-xs-simple-type)
10836         (soap-resolve-references-for-xs-complex-type)
10837         (soap-resolve-references-for-operation): Resolve the namespace to
10838         the namespace tag.
10839         (soap-make-wsdl): specify a namespace tag when creating the xsd
10840         and soapenc namespaces
10841         (soap-wsdl-resolve-references): don't update namespace tags in
10842         elements here
10843         (soap-parse-port-type): bind the urn: to soap-target-xmlns
10844         (soap-encode-body): don't add nil namespace tags to
10845         soap-encoded-namespaces
10847         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
10848         for registering the soap-inspect method.  Make debbugs tests pass.
10849         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
10850         type name, also skip string only nodes when decoding a structure.
10851         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
10852         types too.
10853         (soap-encode-body): Grab the header value from the param table.
10855         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
10856         New function.
10857         (soap-encode-xs-element): Don't encode nil value unless needed.
10859         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
10860         (soap-parse-binding): Parse the message parts required in the body.
10861         (soap-encode-body): Encode only the parts that are declared to be
10862         part of the body.
10864         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
10865         when writing out the tag.
10866         (soap-encode-body): Remove hack that inserts the xmlns in the
10867         element attributes list.
10869         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
10870         (soap-xs-parse-attribute): Default slot is set from the XML
10871         "fixed" attribute.
10872         (soap-encode-xs-complex-type-attributes): Encode any attributes
10873         that have a default value.  Also, don't put the xsi:nil attribute
10874         when the complex type has no content anyway.
10876         * lisp/net/soap-client.el (soap-well-known-xmlns):
10877         Add the xml namespace.
10878         (soap-local-xmlns): Start with the xml namespace.
10879         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
10880         (soap-make-xs-basic-types): More xsd types added.
10881         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
10882         Handle "language", "time", "date", "nonNegativeInteger".
10883         (soap-resolve-references-for-xs-element): Don't signal an error if
10884         the element does not have a type.
10885         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
10886         added stum for xsd:list.
10887         (soap-xs-add-union): Call soap-l2fq on all union members.
10888         (soap-xs-add-extension): Call soap-l2fq on the base member.
10889         (soap-resolve-references-for-xs-simple-type): Don't signal an
10890         error if the simple type has no base.
10891         (soap-resolve-references-for-xs-simple-type): Bugfix, call
10892         soap-wsdl-get on each type of the base.
10894         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
10895         Referenced type can be eiher a simple type or a basic type.
10896         (soap-xs-add-restriction)
10897         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
10898         (soap-make-xs-basic-types)
10899         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
10900         Add support for more XMLSchema basic types.
10901         (soap-current-file, soap-xmlschema-imports): New defvars.
10902         (soap-parse-schema): Add locations from xsd:import tags to
10903         `soap-xmlschema-imports'.
10904         (soap-wsdl): Make destructor private.
10905         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
10906         (soap-wsdl-add-alias): Check if we try to replace aliases.
10907         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
10908         (soap-fetch-xml): New defuns.
10909         (soap-load-wsdl): Update to load the WSDL from either a file or
10910         an url.
10911         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
10912         (soap-parse-wsdl): Process wsdl:import tags and imports from
10913         `soap-xmlschema-imports'.
10914         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
10915         symbol-name.
10916         (soap-l2fq): Make the name part always a string.
10917         (soap-name-p): New defun, used for name tests.
10919         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
10920         Supply sample values for choice types with a special tag.
10921         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
10922         Handle anonymous elements correctly.
10923         (soap-encode-value): Accept nodes that have no namespace tag.
10925         * lisp/net/soap-client.el (soap-invoke): Encode the string for
10926         `url-request-data' as UTF-8.  Fixes issue 16.
10928 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
10930         Update the new icon
10932         Move the E slightly to the right in the circle.
10934         * etc/images/icons/hicolor/128x128/apps/emacs.png:
10935         * etc/images/icons/hicolor/16x16/apps/emacs.png:
10936         * etc/images/icons/hicolor/24x24/apps/emacs.png:
10937         * etc/images/icons/hicolor/32x32/apps/emacs.png:
10938         * etc/images/icons/hicolor/48x48/apps/emacs.png:
10939         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
10940         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
10941         * nt/icons/emacs.ico: New icom update.
10943 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
10945         Avoid missing inline functions from lisp.h in TAGS
10947         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
10948         need to end each invocation with a semi-colon.
10949         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
10950         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
10951         inline functions defined immediately after each invocation, and
10952         also avoid tagging every invocation of these macros.
10954 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
10956         A better fix for bug#21739
10958         * src/buffer.c (set_update_modelines_for_buf): New function.
10959         (Fkill_buffer): Use it to set the global variable
10960         update_mode_lines if the killed buffer was displayed in some
10961         window.  Don't set windows_or_buffers_changed.  This is a better
10962         fix for bug#21739 than the previous fix, since it will cause only
10963         redisplay of mode lines, not of entire windows, but will still
10964         catch attention of x_consider_frame_title in xdisp.c, which
10965         redraws the frame title.
10967 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
10969         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
10970         tar.bz2 and tar.xz archives.
10972 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
10974         Fix infloop in redisplay introduced by a recent change
10976         * src/xdisp.c (redisplay_internal): Avoid inflooping when
10977         redisplaying the selected window sets the selected frame's
10978         redisplay flag.  (Bug#21745)
10980 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
10982         * lisp/emacs-lisp/thunk.el: Better documentation.
10984 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
10986         Replace the old icon for Windows and Mac OSX
10988         * nt/icons/emacs.ico:
10989         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
10990         Use the new icons.
10992 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
10994         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
10995         `load-path' should contain only directory names.
10997 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
10999         New library thunk.el
11001         thunk.el is extracted from stream.el in ELPA, with additional tests.
11003         * lisp/emacs-lisp/thunk.el: New file.
11004         * test/automated/thunk-tests.el: New file.
11005         * etc/NEWS: Add information about thunk.el
11007 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
11009         Fix bug#21669
11011         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
11012         calling low-level functions.
11014         * test/automated/file-notify-tests.el (file-notify--test-timeout):
11015         Decrase to 6 seconds for remote directories.
11016         (file-notify-test02-events): Expect different number of
11017         `attribute-changed' events for the local and remote cases.  Apply
11018         short delays between the operations, in order to receive all
11019         events in the remote case.  Combine `attribute-change' tests.
11020         (Bug#21669)
11022 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
11024         Decode the HTML source when displaying it in EWW
11026         * lisp/net/eww.el (eww-view-source): Decode the HTML source
11027         according to its headers.
11029 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
11031         New default icon
11033         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
11034         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
11035         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
11036         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
11037         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
11038         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
11039         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
11040         Move the old logo files to emacs23.*.
11041         * etc/images/icons/hicolor/128x128/apps/emacs.png:
11042         * etc/images/icons/hicolor/16x16/apps/emacs.png:
11043         * etc/images/icons/hicolor/24x24/apps/emacs.png:
11044         * etc/images/icons/hicolor/32x32/apps/emacs.png:
11045         * etc/images/icons/hicolor/48x48/apps/emacs.png:
11046         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
11047         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
11048         New files.
11049         * etc/images/icons/README: Update the copyright information.
11051 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
11053         Fix redisplay of frame title when current buffer is killed
11055         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
11056         non-zero value, to redisplay more than just the affected windows.
11057         (Bug#21739)
11059 2015-10-23  Anders Lindgren  <andlind@gmail.com>
11061         NextStep maximization and NSTRACE rewrite
11063         Full-height, full-width, and maximized windows now cover the
11064         entire screen (except the menu bar), including the part where the
11065         system dock is placed.  The system zoom animation is no longer
11066         used.
11068         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
11069         original size.
11071         * src/nsterm.m (ns_menu_bar_height): New function, return height of
11072         the menu bar, or 0 when it's hidden.
11073         (constrain_frame_rect): New function for constraining a frame.
11074         (ns_constrain_all_frames): Set frame size explicitly rather than
11075         relying on the system doing it for us by writing back the current
11076         frame size.
11077         (windowWillUseStandardFrame): Register non-maximized width or
11078         height as new user size.  When entering full width or height,
11079         the other size component is taken from the user size.
11080         (fullscreenState): New method for accessing the fullscreen state.
11081         (constrainFrameRect): Restrict frame to be placed under the menu bar,
11082         if present.  The old version, sometimes, restricted the height of a
11083         frame to the screen, this version never does this.
11084         (zoom): Perform zoom by setting the frame to the full size of the
11085         screen (minus the menu bar).  The default system function, with the
11086         zoom animation, is no longer used, as the final frame size doesn't
11087         cover the entire screen.
11089         Rework how to constrain resizing to the character grid.  The old
11090         system used "resizeIncrements" in NSWindows.  However, once a frame
11091         was resized so that it was not aligned to the text grid, it
11092         remained unaligned even after a resize.  In addition, it conflicted
11093         when resizing a fullheight window.
11095         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
11096         unless when pixelwise frame resizing is enabled.
11097         (updateFrameSize, initFrameFromEmacs)
11098         (toggleFullScreen, handleFS): Don't set resizeIncrements.
11100         Redesign the NS trace system.  The call structure is represented
11101         using indentations and vertical lines.  The NSTRACE macro accepts
11102         printf-style arguments.  New macros for printing various
11103         information.
11105         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
11106         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
11107         block (typically a function), accept printf-style arguments.
11108         (NSTRACE_MSG): Macro for extra information, accepts
11109         printf-style arguments.
11110         (NSTRACE_what): Macros for printing various types.
11111         (NSTRACE_FMT_what): Macro with printf format string snippets.
11112         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
11113         corresponds to NSTRACE_FMT_what.
11114         (NSTRACE_RETURN): Macro to print return value, accept
11115         printf-style arguments.
11116         (NSTRACE_RETURN_what): Macros to print return value for
11117         various types.
11119         * src/nsterm.m: Remove old NSTRACE macro
11120         * src/nsterm.m (nstrace_num): Trace counter.
11121         (nstrace_depth): Current call depth.
11122         (nstrace_leave): NSTRACE support function, called when the
11123         local variable "nstrace_enabled" goes out of scope using the
11124         "cleanup" extension.
11125         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
11126         (constrain_frame_rect, ns_constrain_all_frames)
11127         (ns_update_auto_hide_menu_bar, ns_update_begin)
11128         (ns_update_window_begin, update_window_end, ns_update_end)
11129         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
11130         (ns_frame_rehighlight, x_make_frame_visible)
11131         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
11132         (x_destroy_window, x_set_offset, x_set_window_size)
11133         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
11134         (ns_defined_color, frame_set_mouse_pixel_position)
11135         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
11136         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
11137         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
11138         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
11139         (dumpcursor, ns_draw_vertical_window_border)
11140         (ns_draw_window_divider, ns_draw_relief)
11141         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
11142         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
11143         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
11144         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
11145         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
11146         (ns_create_terminal, ns_term_init, sendEvent)
11147         (applicationDidFinishLaunching, applicationDidBecomeActive)
11148         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
11149         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
11150         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
11151         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
11152         (mouse_autoselect_window, in_window, mouseDragged)
11153         (rightMouseDragged, otherMouseDragged, windowShouldClose)
11154         (updateFrameSize, windowWillResize, windowDidResize)
11155         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
11156         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
11157         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
11158         (windowDidEnterFullScreen, windowWillExitFullScreen)
11159         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
11160         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
11161         (draggingEntered, performDragOperation, validRequestorForSendType)
11162         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
11163         (EmacsScroller_initFrame, EmacsScroller_setFrame)
11164         (EmacsScroller_dealloc, condemn, reprieve, judge)
11165         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
11166         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
11168         * src/nsfns.m: Remove old NSTRACE macro
11169         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
11170         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
11171         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
11173         * src/nsimage.m: Remove old NSTRACE macro
11174         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
11175         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
11177         * src/nsmenu.m: Remove old NSTRACE macro
11178         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
11179         Use new trace system.
11181 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
11183         No need to use eval-and-compile
11185         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
11186         autoload epg functions.
11188 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
11190         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
11192         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
11193         epg-context-set-passphrase-callback, epg-decrypt-string, and
11194         epg-encrypt-string; require epg when compiling for the setf-method
11195         for epg-context-armor. (bug#21724)
11197 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
11199         Include file cleanup for w32 files in src directory
11201         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
11202         fontset.h, blockinput.h.
11203         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
11204         charset.h, fontset.h.
11205         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
11206         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
11207         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
11208         in an ifdef-ed away block.
11209         Include fcntl.h for CYGWIN.
11210         (set_frame_param): Remove unused function.
11211         * src/w32select.c: Don't include charset.h and composite.h.
11212         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
11213         due to pointer signedness mismatches.
11214         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
11215         due to pointer signedness mismatches.
11216         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
11217         process.h, dispextern.h.
11218         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
11219         (Fw32_application_type): Avoid compiler warnings due to pointer
11220         signedness mismatches.
11221         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
11222         character.h, charset.h, dispextern.h.
11223         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
11224         to pointer signedness mismatches.
11225         * src/w32inevt.c: Don't include dispextern.h, window.h,
11226         termhooks.h, w32heap.h.
11227         * src/w32font.c: Don't include dispextern.h, character.h,
11228         charset.h, fontset.h, font.h.
11229         (intern_font_name, add_font_entity_to_list)
11230         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
11231         (list_all_matching_fonts): Avoid compiler warnings due to pointer
11232         signedness mismatches.
11233         * src/w32fns.c: Don't include character.h, intervals.h,
11234         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
11235         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
11236         (w32_color_map_lookup, add_system_logical_colors_to_map)
11237         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
11238         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
11239         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
11240         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
11241         compiler warnings, mainly due to pointer signedness mismatches.
11242         (unwind_create_frame_1): Remove unused function.
11243         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
11244         window.h, termhooks.h, dispextern.h.
11245         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
11246         signedness mismatch.
11247         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
11248         w32heap.h.
11250 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
11252         Improve doc-view wrt. auto-revert-mode
11254         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
11255         is corrupted (bug#21729).
11256         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
11258 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
11260         Describe dired-do-compress-to in the manual
11262         * etc/NEWS: Update.
11264         * lisp/dired-aux.el: Fix typo.
11266         * doc/emacs/dired.texi: Add entry.
11268 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
11270         Further fix for proper locale handling in tramp-gvfs.el
11272         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
11273         Just suppress LC_MESSAGES locale category settings.
11275 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11277         New lispref section “Security Considerations”
11279         This attempts to document some of the issues recently discussed
11280         on emacs-devel, and to indicate other such issues.  The section
11281         could be a lot longer.
11282         * doc/lispref/os.texi (Security Considerations):
11283         New node.
11284         * doc/lispref/elisp.texi (Top):
11285         * doc/lispref/processes.texi (Shell Arguments):
11286         * lisp/subr.el (shell-quote-argument):
11287         * src/callproc.c (syms_of_callproc):
11288         Reference it.
11290 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11292         Merge from gnulib
11294         This incorporates:
11295         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
11296         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
11297         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
11298         Copy from gnulib.
11300 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
11302         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
11303         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
11305 2015-10-21  Ken Brown  <kbrown@cornell.edu>
11307         Further include-file cleanup
11309         * src/sheap.c: Include stdlib.h.
11310         * src/unexcw.c: Include string.h.
11312 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
11314         Fix logic in 'server-kill-emacs-query-function'
11316         * lisp/server.el (server-kill-emacs-query-function): Correct the
11317         logic that controls whether the user is asked for confirmation.
11318         (Bug#21723)
11320 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
11322         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
11323         (isearch--lax-regexp-function-p): New function.
11325 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
11327         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
11328         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
11329         around `isearch-regexp-function'.
11331 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
11333         * lisp/isearch.el: Rename word search to regexp-function search.
11334         `isearch-word' went well beyond its original purpose, and the name
11335         no longer makes sense.  It is now called
11336         `isearch-regexp-function', and its value should always be a function
11337         that converts a string to a regexp (though setting it to t is still
11338         supported for now).
11339         (isearch-word): Make obsolete.
11340         (isearch-regexp-function): New variable.
11341         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
11342         (with-isearch-suspended, isearch-toggle-regexp)
11343         (isearch-toggle-word, isearch-toggle-symbol)
11344         (isearch-toggle-character-fold, isearch-query-replace)
11345         (isearch-occur, isearch-highlight-regexp)
11346         (isearch-search-and-update, isearch-message-prefix)
11347         (isearch-search-fun-default, isearch-search)
11348         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
11349         Use it.
11350         (isearch-lazy-highlight-regexp-function): New var.
11351         (isearch-lazy-highlight-word): Make obsolete.
11352         (isearch--describe-regexp-mode): New function.
11353         (isearch--describe-word-mode): Make obsolete.
11355         * lisp/info.el (Info-isearch-search):
11356         * lisp/replace.el (replace-search, replace-highlight):
11357         * lisp/obsolete/longlines.el (longlines-search-function):
11358         * lisp/hexl.el (hexl-isearch-search-function):
11359         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
11360         Use the new var.
11362 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
11364         Add dired-do-compress-to command bound to "c"
11366         * lisp/dired-aux.el (dired-shell-command): Use the caller's
11367           `default-directory', return the result of `process-file'.
11368         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
11369         used by default.
11370         (dired-compress-files-alist): New defvar.
11371         (dired-do-compress-to): New command.
11373         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
11374         (dired-do-compress-to): Add an autoload entry.
11376         * etc/NEWS: Add two entries.
11378 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
11380         Make RefTeX work with LaTeX subfiles package
11382         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
11383         document class argument as master file for referencing purposes.
11385 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
11387         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
11389 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
11391         Include-file cleanup for src directory
11393         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
11394         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
11395         but does not include it directly.  As a general rule, a source
11396         file should include foo.h if it needs the interfaces that foo.h
11397         defines.
11398         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
11399         systime.h.
11400         * src/atimer.c: Don’t include blockinput.h.
11401         * src/buffer.c: Include coding.h, systime.h.  Don’t include
11402         keyboard.h, coding.h.
11403         * src/callint.c: Don’t include commands.h, keymap.h.
11404         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
11405         systty.h, termhooks.h.
11406         * src/casetab.c: Don’t include character.h.
11407         * src/category.c: Don’t include charset.h, keymap.h.
11408         * src/ccl.h: Don’t include character.h.
11409         * src/character.c: Don’t include charset.h.
11410         * src/charset.c: Don’t include disptab.h.
11411         * src/chartab.c: Don’t include ccl.h.
11412         * src/cm.c: Don’t include frame.h, termhooks.h.
11413         * src/cmds.c: Don’t include window.h, dispextern.h.
11414         * src/coding.c: Don’t include window.h, frame.h.
11415         * src/composite.c: Include composite.h.  Don’t include window.h,
11416         font.h.
11417         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
11418         * src/dbusbind.c: Don’t include frame.h.
11419         * src/decompress.c: Don’t include character.h.
11420         * src/dired.c: Don’t include character.h, commands.h, charset.h.
11421         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
11422         process.h, timespec.h.  Include systime.h.
11423         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
11424         * src/editfns.c: Include composite.h.  Don’t include frame.h.
11425         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
11426         commands.h, systty.h..
11427         * src/fileio.c: Don’t include intervals.h, dispextern.h.
11428         Include composite.h.
11429         * src/filelock.c: Don’t include character.h, systime.h.
11430         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
11431         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
11432         * src/font.c: Include termhooks.h.
11433         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
11434         struct composition_it, struct face, struct glyph_string.
11435         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
11436         intervals.h, window.h, termhooks.h.
11437         * src/frame.c: Don’t include character.h, commands.h, font.h.
11438         * src/frame.h: Don’t include dispextern.h.
11439         * src/fringe.c: Don’t include character.h.
11440         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
11441         character.h, charset.h, fontset.h.
11442         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
11443         fontset.h.
11444         * src/ftxfont.c: Don’t include dispextern.h, character.h,
11445         charset.h, fontset.h.
11446         * src/gfilenotify.c: Don’t include frame.h, process.h.
11447         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
11448         Don’t include syssignal.h, buffer.h, charset.h, font.h.
11449         * src/gtkutil.h: Don’t include frame.h.
11450         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
11451         Don’t include character.h.
11452         * src/indent.c: Don’t include keyboard.h, termchar.h.
11453         * src/inotify.c: Don’t include character.h, frame.h.
11454         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
11455         * src/intervals.c: Don’t include character.h, keyboard.h.
11456         * src/intervals.h: Don’t include dispextern.h, composite.h.
11457         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
11458         Include coding.h.
11459         * src/keyboard.h: Don’t incldue systime.h.
11460         * src/keymap.c: Don’t include charset.h, frame.h.
11461         * src/lread.c: Include dispextern.h and systime.h.
11462         Don’t include frame.h.  Include systime.h.
11463         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
11464         * src/menu.c: Include character.h, coding.h.  Don’t include
11465         dispextern.h.
11466         * src/menu.h: Don’t include systime.h.
11467         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
11468         intervals.h, termhooks.h.
11469         * src/print.c: Include coding.h.  Don’t include keyboard.h,
11470         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
11471         Add forward decl of struct terminal.
11472         * src/process.c: Don’t include termhooks.h, commands.h,
11473         dispextern.h, composite.h.
11474         * src/region-cache.c: Don’t include character.h.
11475         * src/scroll.c: Don’t include keyboard.h, window.h.
11476         * src/search.c: Don’t include category.h, commands.h.
11477         * src/sound.c: Don’t include dispextern.h.
11478         * src/syntax.c: Don’t include command.h, keymap.h.
11479         * src/sysdep.c: Don’t include window.h, dispextern.h.
11480         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
11481         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
11482         * src/terminal.c: Include character.h.
11483         Don’t include charset.h, coding.h.
11484         * src/textprop.c: Don’t include character.h.
11485         * src/undo.c: Don’t include character.h, commands.h, window.h.
11486         * src/unexsol.c: Don’t include character.h, charset.h.
11487         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
11488         window.h, dispextern.h, blockinput.h, character.h, font.h.
11489         * src/widgetprv.h: Don’t include widget.h.
11490         * src/window.c: Don’t include character.h, menu.h, intervals.h.
11491         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
11492         macros.h, process.h.
11493         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
11494         intervals.h.
11495         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
11496         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
11497         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
11498         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
11499         * src/xgselect.c: Don’t include timespec.h, frame.h.
11500         Include systime.h.
11501         * src/xgselect.h: Don’t include time.h.
11502         Use a forward decl to struct timespec instead.
11503         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
11504         dispextern.h.  Include systime.h.
11505         * src/xml.c: Don’t include character.h.
11506         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
11507         * src/xselect.c: Don’t include dispextern.h, character.h,
11508         buffer.h, process.h.
11509         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
11510         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
11511         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
11513 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
11515         (/ N) now returns the reciprocal of N
11517         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
11518         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
11519         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
11520         (color-xyz-to-srgb, color-xyz-to-lab):
11521         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
11522         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
11523         (shr-color-hsl-to-rgb-fractions):
11524         Exploit the change to simplify the code a bit.
11525         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
11526         Don’t complain about single-argument calls to ‘/’.
11527         * src/data.c (arith_driver, float_arith_driver):
11528         Implement the change.
11530 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
11532         Call vc-dir-refresh after stash operations
11534         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
11535         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
11537         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
11538         since it can be abbreviated (as returned by vc-find-root).
11540 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
11542         * lisp/vc/vc-svn.el:
11543         * lisp/vc/vc-mtn.el:
11544         * lisp/vc/vc-hg.el:
11545         * lisp/vc/vc-cvs.el:
11546         * lisp/vc/vc-git.el:
11547         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
11548         Its usages have been replaced with vc-run-delayed.
11550 2015-10-20  Dima Kogan  <dima@secretsauce.net>
11552         Fix memory leak in fontset handling
11554         * src/font.c (copy_font_spec): Make a deep copy of the input
11555         argument FONT.  (Bug#21651)
11557 2015-10-20  Michael Sperber  <mike@xemacs.org>
11559         * lisp/gnus/mailcap.el (mailcap-mime-data):
11560         Conditonalize `doc-view-mode', which does not exist on XEmacs.
11562 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
11564         Update the way directories are compressed
11566         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
11567         for *.tar.gz decompression to use a pipe.
11568         Add an entry for the default directory compression (to *.tar.g).
11569         (dired-compress-file): Update.
11571         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
11573 2015-10-20  Michael Sperber  <mike@xemacs.org>
11575         Unbreak `group' option for `mail-sources'
11577         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
11578         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
11579         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
11581 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
11583         New function seq-position
11585         * lisp/emacs-lisp/seq.el (seq-position): New function.
11586         * test/automated/seq-tests.el: New tests for seq-position.
11587         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
11589 2015-10-19  Ken Brown  <kbrown@cornell.edu>
11591         Enable --with-wide-int build on 32-bit Cygwin
11593         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
11594         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
11596 2015-10-19  Glenn Morris  <rgm@gnu.org>
11598         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
11600 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
11602         Resurrect image loading under auto-image-file-mode
11604         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
11605         'openp' specially.  This special case was lost in the changes on
11606         2015-08-18.  (Bug#21685)
11608 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
11610         Fix return value of 'set-file-extended-attributes'
11612         * lisp/files.el (set-file-extended-attributes): Return non-nil
11613         when setting either ACLs or SELinux context succeeds.  Document
11614         the return value.  (Bug#21699)
11616         * doc/lispref/files.texi (Changing Files): Document the return
11617         value of set-file-extended-attributes.
11619 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
11621         Improve documentation of functions that change files
11623         * doc/lispref/files.texi (Changing Files): Document that these
11624         functions signal an error on failure.
11626 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
11628         Fix doc string of 'shell-quote-argument'
11630         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
11632 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
11634         Some minor Tramp changes
11636         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
11638         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
11639         Expand `tramp-auto-save-directory'.
11641 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
11643         Minor edits in Tramp
11645         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
11646         Declare it.
11648         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
11649         Remove declaration.
11651 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
11653         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
11655 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
11657         Avoid crashes when redisplayng a window changes faces or fonts
11659         * src/xdisp.c (redisplay_internal): If redisplaying the selected
11660         window or one of the frames turns on the frame's 'redisplay' flag,
11661         redisplay again.  (Bug#21428)
11663         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
11665 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
11667         Solve timimg issues in file-notify-tests.el
11669         * test/automated/file-notify-tests.el (file-notify-test02-events):
11670         Rectify `attribute-change' tests.  There are timing issues with
11671         gfilenotify.  (Bug#21669)
11673 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
11675         Fix quoting of data within htmlfontify doc
11677         * doc/misc/htmlfontify.texi (Data Structures, Customization):
11678         Fix quoting of data structures.  A Lisp quote is needed only
11679         when data appears within Lisp code.
11681 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
11683         * lisp/emacs-lisp/package.el: Reload archive-contents if
11684         priorities change.
11685         (package--old-archive-priorities): New variable.
11686         (package-read-all-archive-contents, package-menu--refresh): Use it
11687         to decide when the `package-archive-contents' needs to be read
11688         again.
11690 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
11692         Make src headers idempotent and standalone
11694         Redo src/*.h so that each include file is idempotent (that is, can
11695         be included multiple times with the latter inclusions having no
11696         effect) and standalone (that is, can be included by itself,
11697         with no include file other than config.h needed as a prerequisite).
11698         This is standard practice in GNU programs nowadays.
11699         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
11700         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
11701         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
11702         * src/regex.h [emacs]:
11703         * src/syntax.h, src/systty.h, src/termhooks.h:
11704         Include lisp.h, for Lisp_Object.
11705         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
11706         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
11707         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
11708         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
11709         * src/termopts.h, src/tparam.h, src/unexec.h:
11710         Protect against multiple inclusion.
11711         * src/buffer.h: Include character.h, for STRING_CHAR.
11712         * src/emacsgtkfixed.h (struct frame):
11713         * src/fontset.h (struct face):
11714         * src/region-cache.h (struct buffer):
11715         * src/termhooks.h (struct glyph):
11716         * src/xsettings.h (struct x_display_info):
11717         Add possibly-forward decl.
11718         * src/syntax.h: Include buffer.h, for BVAR.
11719         * src/sysselect.h: Include lisp.h, for eassume.
11720         * src/termchar.h: Include <stdio.h>, for FILE.
11721         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
11722         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
11724 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
11726         Handle symlink targets containing spaces in tramp-gvfs.el
11728         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
11729         Handle symlink targets containing spaces.
11731 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
11733         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
11735         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
11736         same reason that `load-path' shouldn't.  Setting it via the customize
11737         interface is a trap for the user.
11739         Installed themes commonly add themselves to this variable, which means
11740         its value is not fit for being saved (it will permanently remember dirs
11741         that don't exist anymore).
11743         This is aggravated by the fact that Emacs always applies the `user'
11744         theme on top of any theme that's loaded, since this will apply the old
11745         variable value and remove any new directories that had been recently
11746         added by themes themselves.
11748         Not to mention, we already have `custom-theme-directory', which is safe
11749         to customize.
11751 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11753         * lisp/mpc.el: Rename the new toggling commands.
11754         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
11755         (mpc-toggle-shuffle): Add "-toggle" in the name.
11757 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
11759         Improve the doc string of 'completion-boundaries'
11761         * lisp/minibuffer.el (completion-boundaries): Rename the argument
11762         TABLE to COLLECTION, for consistency with other high-level
11763         completion functions.  Document how COLLECTION is called if it
11764         is a function.  (Bug#21644)
11766 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
11768         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
11770 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
11772         Make dired-do-compress work for *.zip files
11774         * lisp/dired-aux.el (dired-check-process): Transform the top-level
11775           comment into a docstring.
11776         (dired-shell-command): New command.  This mirrors
11777         `dired-check-process', but is more user-friendly for passing
11778         arguments.
11779         (dired-compress-file-suffixes): Allow to specify the command switches
11780         along with input (%i) and output (%o) inside the PROGRAM part.
11781         Add an entry for *.zip files, and update the entry for *.tar.gz files
11782         to the new style.  Update the docstring.
11783         (dired-compress-file): When PROGRAM matches %i or %o, use the new
11784         logic.
11785         (dired-update-file-line): Avoid an error when at end of buffer.
11787         Fixes bug#21637.
11789 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
11791         Minor improvement in documentation of internals
11793         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
11795 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
11797         Improve documentation of COLLECTION in completion functions
11799         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
11800         cross-reference to "Programmed Completion".
11802         * src/minibuf.c (Fcompleting_read): Improve the doc string.
11803         (Bug#21644)
11805 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
11807         Add more release info to etc/HISTORY
11809         * etc/HISTORY: Add more release information about 19.x and 20.x
11810         versions.
11812 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
11814         New file etc/HISTORY
11816         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
11817         * etc/HISTORY: New file.
11818         * etc/NEWS: Mention it.
11820 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
11822         js-mode: Don't misindent generator methods
11824         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
11825         generator methods from multiplication operator
11826         (https://github.com/mooz/js2-mode/issues/275).
11828 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
11830         Fix animation timeout delay calculation
11832         * lisp/image.el (image-animate-timeout):
11833         Don’t assume speed is floating-point.
11835 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
11837         Add commands for controlling MPD modes
11839         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
11840         (mpc-cmd-single): New functions.
11841         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
11842         (mpc-mode-menu): Add new commands as menu items.
11844 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
11846         Refer to `(elisp)Basic Completion' in completing-read docstring
11848         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
11849         Completion' in the docstring (bug#21644).
11851 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
11853         * lisp/mpc.el (mpc-format): Always push form to pred
11855 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11857         Spelling fixes
11859         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
11860         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
11861         Fix misspelling of nonexistent file name.
11863 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
11865         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
11867 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
11869         Some editing fixes in Tramp
11871         * lisp/net/tramp-gvfs.el:
11872         * doc/misc/tramp.texi: "customer option" -> "custom option".
11874         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
11876 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
11878         Use proper localization in tramp-gvfs.el
11880         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
11881         Suppress localized settings in order to proper parse gfvs output.
11883 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
11885         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
11886         Quote argument in proper order.  (Bug#21562)
11888 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
11890         Fix typos in docstrings
11892         * lisp/emacs-lisp/map.el:
11893         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
11894           macros.
11896 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
11898         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
11900 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
11902         Make dired-jump work with tar-subfile-mode
11904         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
11905           emitting an error, switch to `tar-superior-buffer'.
11907 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
11909         * .gitignore: Add build-aux/ar-lib.
11911 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
11913         Better docstrings in seq.el and map.el
11915         * lisp/emacs-lisp/map.el:
11916         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
11918 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11920         Merge from gnulib
11922         This incorporates:
11923         2015-10-13 binary-io, u64, unistd: port to strict C
11924         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
11925         2015-09-25 c-ctype: port better to z/OS EBCDIC
11926         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
11927         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
11928         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
11929         Copy from gnulib.
11931 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11933         Take XPNTR private
11935         * src/alloc.c (PURE_POINTER_P): Remove.
11936         All uses replaced with PURE_P.
11937         (XPNTR_OR_SYMBOL_OFFSET): New function.
11938         (XPNTR): Move here from lisp.h.
11939         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
11940         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
11941         Remove unnecessary cast.
11942         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
11943         to avoid an unnecessary runtime test for symbols.
11944         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
11945         Only alloc.c needs XPNTR now.
11947 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
11949         Add MPC play/pause command
11951         * lisp/mpc.el (mpc-toggle-play): New command.
11952         (mpc-mode-map): Bind it to "s".
11953         (mpc-mode-menu): Add corresponding menu item.
11955 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
11957         Add bindings and menu items for prev and next tracks
11959         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
11960         "<" to mpc-prev.
11961         (mpc-mode-menu): Add corresponding menu items
11963 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
11965         Reduce face-related consing during frame creation.
11967         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
11968         attribute list once.
11969         (face-spec-reset-face): Use it instead of building the list.
11971 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
11973         Do process ConfigureNotify events indicating size changes.
11975         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
11976         events don't have the same size, process each one.
11978 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
11980         Derive mpc-mode from special-mode
11982         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
11983         (mpc-mode): Derive from special mode.
11984         (mpc-songs-mode-map): Don't set parent keymap.
11986 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
11988         Fix error messages for when covers are not found.
11990         The last change to mpc-format let the binding to file call
11991         mpc-file-local-copy with nil argument.  Instead, employ if-let here
11992         so nil bindings don't result in needless computation and errors.
11993         * lisp/mpc.el: Require 'subr-x at compile time.
11994         * lisp/mpc.el (mpc-format): Use if-let.
11996 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
11998         Make dired-do-compress work for *.tar.gz files
12000         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
12001           "tar -zxvf" to *.tar.gz; update docstring.
12003         (dired-compress-file): Allow to specify switches after the command in
12004         `dired-compress-file-suffixes'.
12006 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
12008         Make dired-do-compress work for directories
12010         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
12011           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
12012         Also convert the top comment into a docstring.
12014 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12016         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
12018         ... since it might come straight from the memoizing table.
12020 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
12022         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
12024 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
12026         Use special-mode in eww list modes
12028         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
12029         (eww-buffers-mode): Derive from special-mode and remove redundant
12030         setting of buffer-read-only.
12031         (eww-mode-map): Remove redundant keymap parent setting.
12032         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
12033         Remove redundant keymap suppressions and mappings.
12035 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
12037         Allow setting frame pixel sizes from frame parameters (Bug#21415)
12039         Also fix some misfeatures in frame (re-)sizing code, add more
12040         debugging information and remove some dead code.
12042         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
12043         parameter names when setting `frame-size-history'.
12044         (frame--size-history): New function.
12046         * src/frame.c (frame_inhibit_resize): If frame has not been made
12047         yet, return t if inhibit_horizontal_resize or
12048         inhibit_vertical_resize bit have been set.
12049         (adjust_frame_size): Simplify.
12050         (make_frame): Initialize inhibit_horizontal_resize,
12051         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
12052         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
12053         inhibit_vertical_resize slots.
12054         (x_set_frame_parameters): Handle `text-pixels' specification for
12055         width and height parameters.  Don't consider new_height or
12056         new_width changes.  Call adjust_frame_size instead of
12057         Fset_frame_size.
12058         (x_figure_window_size): Two new arguments x_width and y_width
12059         returning frame's figures width and height.  Calculate tool bar
12060         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
12061         Handle `text-pixels' specification for width and height
12062         parameters.
12063         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
12064         (Qx_set_window_size_1, Qx_set_window_size_2)
12065         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
12066         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
12067         (Qfree_frame_menubar_2): New symbols.
12068         * src/frame.h (structure frame): New booleans
12069         tool_bar_redisplayed, tool_bar_resized,
12070         inhibit_horizontal_resize, inhibit_vertical_resize.
12071         (x_figure_window_size): Update external declaration.
12072         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
12073         calling gtk_window_resize.
12074         (update_frame_tool_bar): Make inhibiting of frame resizing more
12075         discriminative.  Set tool_bar_resized bit.
12076         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
12077         resizing more discriminative.  Call adjust_frame_size instead of
12078         x_set_window_size.
12079         (Fx_create_frame): Handle x_width and x_height if
12080         set by x_figure_window_size.
12081         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
12082         subtract 3 from tool bar height.
12083         (x_set_window_size): Add frame_size_history_add call.
12084         (x_new_font): Call adjust_frame_size instead of
12085         x_set_window_size.
12086         * src/w32fns.c (x_change_tool_bar_height): Reset
12087         tool_bar_redisplayed and tool_bar_resized bits when adding tool
12088         bar.  Make inhibiting of frame resizing more discriminative.
12089         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
12090         (Fx_create_frame): Handle x_width and x_height if set by
12091         x_figure_window_size.  Set size hints before adjusting frame size.
12092         (x_create_tip_frame): Adjust x_figure_window_size call.
12093         * src/w32term.c (x_set_window_size): Add frame_size_history_add
12094         call.
12095         * src/widget.c (set_frame_size): Remove dead code.  Add
12096         frame_size_history_add call.  When frame_resize_pixelwise is t
12097         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
12098         pixel_width and pixel_height.
12099         (update_various_frame_slots): Remove dead code.
12100         (EmacsFrameResize): Add more information in
12101         frame_size_history_add call.
12102         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
12103         is not set.
12104         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
12105         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
12106         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
12107         tool_bar_resized bits when adding tool bar.  Make inhibiting of
12108         frame resizing more discriminative.
12109         (Fx_create_frame): Handle x_width and x_height if set by
12110         x_figure_window_size.  Set size hints before adjusting frame size.
12111         (x_create_tip_frame): Adjust x_figure_window_size call.
12112         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
12113         (set_frame_menubar): On Lucid never add core-border-width to
12114         avoid that adding XtNinternalBorderWidth adds it again.
12115         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
12116         * src/xterm.c (x_new_font): In non-toolkit case handle size
12117         change of menu bar.
12118         (x_set_window_size_1): Fix calls to frame_size_history_add.
12119         (x_wm_set_size_hint): Remove dead code.  Set
12120         size_hints.min_width and size_hints.min_height to base_width and
12121         base_height.
12123 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
12125         * test/automated/file-notify-tests.el (file-notify--test-timeout):
12126         Add docstring.  Increase to 10 seconds for remote
12127         directories.  (Bug#21669)
12129 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12131         Unmacroize ebrowse.c and etags.c a bit
12133         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
12134         (streq, filename_eq, set_flag, has_flag): Now inline functions.
12135         (set_flag): First arg is now an address, not an lvalue.
12136         All callers changed.
12137         (filename_eq, set_flag, has_flag):
12138         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
12139         All callers changed.
12140         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
12141         Now inline functions.  Remove asserts that are unnecessary these
12142         days (and in some cases were too-generous anyway).
12144 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
12146         Use highlight for current items
12148         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
12149         Apply highlight face instead of region face.
12151 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
12153         Search for more cover image names in MPC
12155         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
12156         case insensitively
12158 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
12160         Remove or comment out unused variables
12162         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
12163         nontext_cursor, mode_cursor, hand_cursor and count.
12164         (x_change_tool_bar_height): Remove variable old_text_height.
12165         (deliver_wm_chars): Remove variable strip_Alt.
12166         (Fw32_shell_execute): Remove variable document_a.
12167         (Fw32_frame_geometry): Remove variable fullboth.
12168         * src/w32term.c (w32_setup_relief_color): Comment out variable
12169         w32_display_info.
12170         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
12171         (w32_read_socket): Comment out variables rows, columns.
12172         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
12174 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
12176         * src/w32proc.c (sys_select): Fix bitwise test.
12178 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
12180         Minor typo corrections in doc strings
12182         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
12183         Doc fixes.
12185 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
12187         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
12189 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
12191         Attempt to avoid crashes in plist-member
12193         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
12194         and a call to XCDR.  (Bug#21655)
12196 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
12198         * lisp/select.el (gui-get-primary-selection): In
12199         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
12201 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
12203         Support RTF in doc-view
12205         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
12207 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
12209         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
12211 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
12213         Replace the usage of an obsolete function in auth-source.el
12215         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
12216         Replace an usage of `epg-context-set-armor' with `setf'.
12218 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
12220         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
12222 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
12224         Have calc-yank recognize numbers in different bases.
12226         * lisp/calc/calc-yank.el (math-number-regexp): New function.
12227         (calc-yank): Use `math-number-regexp' to recognize numbers.
12229 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
12231         Handle an opaque-move X11 window manager operation more efficiently
12233         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
12234         followed by more ConfigureNotify events for the same window, process
12235         only the last one.
12237 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
12239         Fix cursor setting for tip frame; re-enable cursor generation
12241         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
12242         attributes sent when creating the new X window.  Don't skip setting
12243         the pointerColor parameter.
12245 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
12247         Rewrite x_set_mouse_color to sync less
12249         We can track serial numbers of X requests and correlate error events
12250         with the associated requests.  This way we can identify errors for
12251         specific calls without having to use XSync after every one.
12253         * src/xfns.c (enum mouse_cursor): New type.
12254         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
12255         (mouse_cursor_types): New array listing the Lisp variables and default
12256         cursor appearances for each cursor type.
12257         (x_set_mouse_color_handler): New function; checks error event serial
12258         number against submitted requests.
12259         (x_set_mouse_color): Updated to use the new error handler callback,
12260         and to be more table-driven, to simplify repetitious code.
12262 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
12264         Add x_catch_errors_with_handler
12266         * src/xterm.c (struct x_error_message_stack): Add new fields for a
12267         callback function and associated data pointer.
12268         (x_error_catcher): If the callback function is set, call it after
12269         saving the error message string.
12270         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
12271         accepts a callback function and data pointer.
12272         (x_catch_errors): Now a wrapper function.
12273         * src/xterm.h (x_special_error_handler): New typedef.
12274         (x_catch_errors_with_handler): Declare.
12276 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
12278         Introduce x_uncatch_errors_after_check to reduce XSync calls
12280         Both x_had_errors_p and x_check_errors call XSync, so if they're
12281         immediately followed by x_uncatch_errors, its XSync call will be
12282         redundant, resulting in a wasted round trip to the X server.
12284         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
12285         x_uncatch_errors without the XSync call.
12286         (XTmouse_position, x_wm_supports):
12287         * src/xfns.c (x_set_mouse_color):
12288         * src/xmenu.c (Fx_menu_bar_open_internal):
12289         * src/xselect.c (x_own_selection, x_get_foreign_selection):
12290         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
12291         * src/xterm.h (x_uncatch_errors_after_check): Declare.
12293 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
12295         Document the optional prefix to `calc-yank'
12297         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
12298         prefix to `calc-yank'.
12299         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
12300         the Calc buffer are yanked back unchanged.
12302 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
12304         * lisp/calendar/calendar.el: Display buffer before executing body.
12306         In each use of this macro, the modeline is derived from a window width
12307         calculation, which will be wrong if (display-buffer) splits the window
12308         horizontally.
12310 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12312         Use ‘echo’ safely with ‘\’ or leading ‘-’
12314         POSIX says that ‘echo FOO’ produces implementation-defined output
12315         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
12316         behavior in that case.
12317         * Makefile.in (removenullpaths): Remove.
12318         (epaths-force): Rewrite to avoid the need for ‘echo’.
12319         (install-etc): Be clearer about escaping the shell metacharacters
12320         ‘\’ and ‘$’.
12321         * Makefile.in (install-arch-indep, install-etcdoc):
12322         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
12323         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
12324         * configure.ac, lib-src/rcs2log, make-dist:
12325         * src/Makefile.in (lisp.mk):
12326         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
12327         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
12328         if $foo can contain arbitrary characters.
12329         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
12330         * doc/lispref/two-volume.make (vol1.pdf):
12331         * test/etags/make-src/Makefile (web ftp publish):
12332         Use ‘printf’ rather than ‘echo -e’.
12334 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
12336         Allow numbers with different radixes to be yanked.
12338         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
12339         default base 10.
12341 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12343         Improve CHECK_IMPURE and PURE_P speedup
12345         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
12347 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
12349         Use events instead of chars to keep track of steps.
12351         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
12352         to keep track of steps.
12354 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12356         Fix --enable-gcc-warnings problem with older GCC
12358         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
12359         This is for building with --enable-gcc-warnings with
12360         GCC 4.6 through 5.0.
12362 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
12364         Fix vertical-motion in truncated lines that end in a stretch
12366         * src/indent.c (Fvertical_motion): Expect overshoot when point is
12367         beyond window margin and lines are truncated, even if we have a
12368         stretch at point.  (Bug#21468)
12370 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
12372         Avoid link-time errors due to inline functions
12374         * src/emacs.c: Include puresize.h, to avoid link-time errors in
12375         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
12376         inline functions.
12378 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
12380         * src/data.c (Faset): Fix last change.
12382 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12384         CHECK_IMPURE and PURE_P speedup
12386         * src/intervals.c (create_root_interval):
12387         Do CHECK_IMPURE only for strings; not needed for buffers.
12388         Prefer ! STRINGP to BUFFERP, for a tad more speed.
12389         * src/puresize.h (CHECK_IMPURE, PURE_P):
12390         Now inline functions instead of macros.
12391         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
12392         All callers changed.
12393         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
12394         All callers changed.
12396 2015-10-09  Noah Friedman  <friedman@splode.com>
12398         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
12400 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12402         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
12404         our after-change-function, rather than re-adding it if it was removed.
12406 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12408         * lisp/cedet/ede: Silence some compiler warnings
12410         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
12411         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
12412         (ede-apply-object-keymap, ede-reset-all-buffers)
12413         (ede-auto-add-to-target): Use dolist.
12414         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
12415         Use field names rather than initarg names in `oref'.
12416         (ede-load-project-file): Remove unused var `file'.
12417         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
12418         (ede-set): Remove unused var `a'.
12420         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
12421         (ede-project-autoload): Avoid the old-style "name" argument.
12422         (ede-emacs-find-matching-target): Use field names rather than initarg
12423         names in `oref'.
12425         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
12426         (ede-linux-load, ede-project-autoload): Avoid the old-style
12427         "name" argument.
12428         (ede-linux-find-matching-target): Use field names rather than initarg
12429         names in `oref'.
12431 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12433         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
12435 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12437         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
12438         indenting too far after ":-".
12440 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
12442         Update case-table and categories of recently added characters
12444         * lisp/international/characters.el: Update information about Latin
12445         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
12446         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
12447         blocks.  (Byug#21654)
12449 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
12451         * src/frame.c (adjust_frame_size): In minibuffer-only windows
12452         don't count minibuffer height twice.  (Bug#21643)
12454 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
12456         Avoid inflooping in font-lock
12458         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
12459         inhibit-field-text-motion around the call to
12460         line-beginning-position, to avoid inflooping.  (Bug#21615)
12462 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
12464         Refactor duplicated code; ensure default is in completions
12466         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
12467         New function.
12468         (reftex-extract-bib-entries): Use it.
12469         (reftex-extract-bib-entries-from-thebibliography): Use it.
12471 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12473         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
12474         in the example.
12476 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
12478         * lisp/calc/calc.el: Silence byte-compiler warnings.
12479         (calc-scan-for-dels): Use ignore-errors.
12480         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
12481         (calc-read-key-sequence): Remove unused var `prompt2'.
12482         (calc-kill-stack-buffer): Remove unused var `buflist'.
12483         (calc): Remove unused var `oldbuf'.
12484         (calc-refresh): Use inhibit-read-only.
12485         (calc-can-abbrev-vectors): Declare.
12486         (calc-record): Remove unused var `mainbuf'.
12487         (math-sub-bignum): Remove unused var `sum'.
12488         (math-svo-c, math-svo-wid, math-svo-off): Declare.
12490 2015-10-08  Daiki Ueno  <ueno@gnu.org>
12492         Use g_clear_error instead of g_error_free
12494         * src/image.c: Define g_clear_error instead of g_error_free.
12495         (init_svg_functions): Resolve symbol g_clear_error instead of
12496         g_error_free.
12497         (svg_load_image): Use g_clear_error instead of g_error_free, to
12498         suppress GLib warnings when ERR is not set.  See bug#21641.
12500 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12502         * src/image.c (image_size_error): Simplify.
12504 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12506         Fix problems caught with --enable-gcc-warnings
12508         * src/image.c (lookup_rgb_color):
12509         * src/xfns.c (x_defined_color):
12510         * src/xterm.c (x_parse_color):
12511         Remove unused locals.
12513 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
12515         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
12517 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
12519         Format initial input uniformly
12521         * lisp/calc/calc.el (calc-digit-start-entry): New function.
12522         * lisp/calc/calc.el (calcDigit-start):
12523         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
12524         Use `calc-digit-start-entry' to format input.
12526 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
12528         Disable non-working pointerColor setting for X tooltip frame
12530         It generates a bunch of server traffic, but there's some bug wherein
12531         the new mouse cursor settings don't seem to get used.  In most
12532         situations the cursor isn't likely to be seen anyway, so it's not
12533         urgent to fix.
12535         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
12537 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
12539         Reduce some unnecessary X calls
12541         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
12542         call.  If border width is wanted, get it from the XGetGeometry call
12543         instead of calling XGetWindowAttributes on the same window.  Skip some
12544         X calls if we've already detected an error from the X server.
12545         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
12546         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
12548 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
12550         Reduce color allocation/query traffic in the TrueColor case
12552         When working with an X visual with TrueColor class, pixel values can
12553         be generated from the RGB values according to mask value provided by
12554         the server on connection.  Some of the image-handling code was already
12555         doing this.
12557         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
12558         lookup_rgb_color.
12559         (x_mutable_colormap): New function.
12560         * src/image.c (lookup_rgb_color): Move pixel composition code to
12561         x_make_truecolor_pixel.
12562         (x_kill_gs_process): Call x_mutable_colormap.
12563         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
12564         x_mutable_colormap.
12565         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
12566         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
12567         pixel value into RGB values directly, and don't send a request to the
12568         server.
12569         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
12570         value with x_make_truecolor_pixel.
12571         (x_copy_color): For an immutable color map, just return the provided
12572         pixel value.
12574 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
12576         Cache XParseColor results in the X display info structure
12578         With repeated lookups of foreground and background colors for multiple
12579         faces per frame, we issue a lot of redundant color name lookups to the
12580         X server, waiting every time for the response.  On a remote network
12581         with, say, 30ms round-trip time, this can add nearly a full second to
12582         creation of a new frame.
12584         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
12585         * src/image.c (get_spec_bg_or_alpha_as_argb):
12586         (xpm_init_color_cache, xpm_lookup_color):
12587         * src/xfns.c (x_defined_color):
12588         * src/xterm.c (x_parse_color): New function; caches color names not
12589         starting with "#" in the display-info structure.
12590         (x_delete_display): Delete the cache content.
12591         * src/xterm.h (struct color_name_cache_entry): New type.
12592         (x_parse_color): Declare.
12593         (struct x_display_info): Add a new field for the cache.
12595 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12597         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
12599 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
12601         Fix segfault in image_size_error
12603         * src/image.c (image_size_error): Pass a Lisp string to
12604         image_error, not a C string.  (Bug#21641)
12606 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
12608         Highlight CSS variable definitions
12610         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
12611         CSS variables.  (Bug#21638)
12613 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12615         * test/automated/tabulated-list-test.el: New file.
12616         Test bug#21639 and some basic functionality.
12618 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12620         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
12621         Check if column can be sorted before trying.  (Bug#21639)
12623 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
12625         Add test for `self-insert-command' (bug#21633)
12627         * test/automated/cmds-tests.el: New file.
12629 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
12631         * src/window.c (resize_frame_windows): Don't set root window's
12632         top position when resizing horizontally.
12634 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12636         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
12637         Document more possible values.
12639 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
12641         * lisp/textmodes/tex-mode.el: Use lexical-binding.
12643 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
12645         * lisp/indent.el (indent--default-inside-comment): New function.
12646         (indent-for-tab-command): Use it for `noindent' indentation.
12648 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
12650         Fix bug in GC_CHECK_MARKED_OBJECTS check
12652         * src/alloc.c (mark_object): Fix bug in checking code.
12653         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
12654         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
12655         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
12656         bucket.  The bug did not affect behavior either in the normal case
12657         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
12658         not have an internal error that a properly-written
12659         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
12661 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
12663         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
12664         Add prettified version for \\Bbb{Q}.
12666 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
12668         * test/automated/package-test.el (package-test-install-single):
12669         Add a test for bug#21625.
12671 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
12673         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
12674           not a package-desc object.  Also clarify documentation.  (Bug#21625)
12676 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
12678         Fix display of characters adjacent to ZWJ and ZWNJ
12680         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
12681         characters the same as directional formatting controls.
12682         (bidi_level_of_next_char): Include all Bn characters in rule L1,
12683         as mandated by the UBA.
12685 2015-10-06  Andreas Schwab  <schwab@suse.de>
12687         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
12688         number.  (Bug#21633)
12690 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
12692         * doc/lispref/objects.texi (Window Type): Add a cross reference.
12694         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
12696 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
12698         * lisp/language/misc-lang.el (composition-function-table):
12699         Fix entries for Arabic and Syriac.
12701 2015-10-05  Damien Cassou  <damien@cassou.me>
12703         Add first unit tests for auth-source.el
12705         * test/automated/auth-source-tests.el: New file.
12707 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
12709         Remove redundant redisplay code
12711         * src/xdisp.c (redisplay_internal, try_cursor_movement)
12712         (try_window_reusing_current_matrix, try_window_id): Remove
12713         redundant restrictions on redisplay optimizations based on the
12714         frame's 'redisplay' flag.  See
12715         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
12716         discussions.
12718 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12720         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
12722 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
12724         Update tutorials/TUTORIAL.cn
12726         * etc/tutorials/TUTORIAL.cn: Improve translation.
12728 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12730         * src/macfont.m (macfont_encode_char, syms_of_macfont):
12731         Remove unused vars.
12733 2015-10-04  Stefan Merten  <stefan@merten-home.de>
12735         Pull in version numbers from rst.el upstream release.
12737         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
12738         (rst-svn-timestamp, rst-official-version)
12739         (rst-official-cvs-rev, rst-package-emacs-version-alist):
12740         Update version numbers.
12742 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
12744         * test/automated/coding-tests.el: New file.
12746 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
12748         Improve XEmacs compatibility of Tramp
12750         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
12751         Declare if it doesn't exist.
12752         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
12753         (redisplay): Make it an alias if it doesn't exist.
12755         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
12756         `file-remote-p' (due to XEmacs compatibility).
12758         * lisp/net/trampver.el (locate-dominating-file)
12759         (tramp-compat-replace-regexp-in-string): Autoload.
12760         (tramp-repository-get-version): Do not dupe byte-compiler.
12762 2015-09-02  K. Handa  <handa@gnu.org>
12764         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
12766         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
12767         Adjusted for the change of type of elements in the array
12768         MFLTGlyphString.glyphs.
12770 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
12771             Michael Heerdegen  <michael_heerdegen@web.de>
12773         shr: fix too long lines in rendered buffers (Bug#21012)
12775         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
12776         Correct calculation of available width.
12777         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
12778         is nil.
12780 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12782         Restore blank line before next section, erroneously erased
12783         in my previous commit
12785         * etc/compilation.txt (symbol ant): Add an additional trailing blank
12786         line to this section, so that there are two of them immediately before
12787         the next section.
12789 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12791         Support MSW filename style for ant compilation error regexp
12793         * etc/compilation.txt (symbol ant):
12794         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
12795         Support MSW filename style.
12797 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
12799         * nt/INSTALL: Minor spelling and quote fixes.
12801         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
12803 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
12805         Maintain ordering of JSON object keys by default
12807         * lisp/json.el (json-object-type): Mention order handling in doc-string.
12808         (json--plist-reverse): New utility function.
12809         (json-read-object): Maintain ordering for alists and plists.
12810         (json-pretty-print): Ensure that ordering is maintained.
12812         * test/automated/json-tests.el (test-json-plist-reverse): New test for
12813         `json--plist-reverse'.
12814         (json-read-simple-alist): Update test to accommodate for changes in
12815         `json-read-object'.
12817         * etc/NEWS: Document the new behavior of the pretty printing functions.
12819 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
12821         * src/coding.c (complement_process_encoding_system): Revert last change.
12823 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
12825         * admin/MAINTAINERS: Add entry for Ulf Jasper.
12827 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
12829         Doc fix for `defmacro'
12831         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
12833 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
12835         More validatation of coding systems
12837         * src/fileio.c (Finsert_file_contents): Remove redundant
12838         coding-system check.
12839         (choose_write_coding_system): Likewise.
12840         * src/coding.c (complement_process_encoding_system): Check argument
12841         for valid coding system.
12843 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
12845         Avoid crashes in coding_inherit_eol_type
12847         * src/coding.c (coding_inherit_eol_type): Check the validity of
12848         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
12849         (Bug#21602)
12851 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
12853         More validatation of coding system in 'write-region'
12855         * src/coding.c (choose_write_coding_system): More validation of
12856         coding-system from various sources.  Suggested by Andreas Schwab
12857         <schwab@linux-m68k.org>.  (Bug#21602)
12859 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
12861         Avoid crashes due to invalid coding-system
12863         * src/fileio.c (choose_write_coding_system)
12864         (Finsert_file_contents): Check validity of coding-system-for-write
12865         and coding-system-for-read bound by the caller.  (Bug#21602)
12867 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
12869         Adapt to new prettify-symbols-unprettify-at-point default
12871         * etc/NEWS: Mention that unprettication of symbol at point is off
12872         by default.
12874 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
12876         Revert my two recent process.c changes
12878         Revert "Improve last commit to process.c" and "Remove callback-handled
12879         channels from Available set" because they did not fix bug#21313.
12881         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
12882         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
12884 2015-10-02  Markus Triska  <triska@metalevel.at>
12886         * lisp/progmodes/prolog.el: Update and extend operator table.
12887         (prolog-smie-grammar): Add multifile, public etc.
12889 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
12891         Allow autogen even when Git is not installed
12893         * autogen.sh: Test ‘git status’ before trying to use Git.
12895 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12897         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
12898         Adjust lto/lfrom when we have uncommitted changes.
12900 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
12902         Fix problems found by clang 3.5.0
12904         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
12905         * src/font.c (font_parse_family_registry):
12906         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
12908 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
12910         * nt/INSTALL: Update instructions for running autogen.sh.
12912         * nt/INSTALL: Point to ezwinports for libXpm binaries.
12914 2015-10-02  Daniel Colascione  <dancol@dancol.org>
12916         Fix winner in cl-lib not loaded case
12918         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
12919         without requiring CL
12921 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
12923         Fix a few problems with directed quotes
12925         This is in response to a problem report by Kaushal Modi in:
12926         http://bugs.gnu.org/21588#25
12927         * lisp/cedet/mode-local.el (describe-mode-local-overload):
12928         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
12929         * lisp/info-xref.el (info-xref-check-all-custom):
12930         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
12931         Prefer directed to undirected single quotes in diagnostics.
12933 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
12935         Revert "Attempt to fix slow redisplay caused by last changes"
12937         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
12938         (try_cursor_movement): Don't relax requirements for redisplay
12939         optimizations for the selected frame.  (Bug#21597)
12941         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
12943 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
12945         Fix slow redisplay when daemon frame exists
12947         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
12948         when looking for frames that need to be redisplayed.  (Bug#21597)
12950 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
12952         Attempt to fix slow redisplay caused by last changes
12954         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
12955         (try_cursor_movement): Relax requirements for redisplay
12956         optimizations for the selected frame.  (Bug#21597)
12958 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
12960         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
12961         Improve doc string.
12963 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
12965         * lisp/minibuffer.el (minibuffer-completion-help):
12966         Set default base-size, in case completion table does not set it.
12968 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
12970         Fix GUD display of GDB output with non-ASCII text
12972         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
12973         (gdb-mi-decode): New function.
12974         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
12975         decode octal escapes in GDB output.  (Bug#21572)
12977 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
12979         * nt/INSTALL: Document where to find XPM support files.
12981 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
12983         Un- and re-prettification are not exclusive
12985         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
12986         Re-apply prettification to previous symbol also when unprettifying
12987         next one.
12989 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
12991         Don't unprettify symbol at point by default
12993         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
12994         Default to disabled (nil).
12996 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12998         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
12999         Support unprettifying when point is after a symbol.
13001         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
13003 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
13005         Avoid assertion violations in push_prefix_prop
13007         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
13008         a line that has a line-prefix defined starts with an image.  (Bug#21428)
13010 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
13012         Disable some display optimizations when frames need redisplay
13014         These optimizations were previously disabled by the
13015         windows_or_buffers_changed flag, which now is not set
13016         when only some frames need to be redrawn.
13017         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
13018         'redisplay' flag is set.
13019         (try_window_reusing_current_matrix, try_window_id)
13020         (try_cursor_movement): Disable these optimizations when the
13021         frame's 'redisplay' flag is set.
13023 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
13025         Don't modify buffer by unprettification
13027         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
13028         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
13029         modify buffer when setting/removing custom prettify-symbols-start/end
13030         text properties.  Add them to font-lock-extra-managed-props, too.
13032 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
13034         Try to avoid redisplaying all frames when creating a new one
13036         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
13037         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13038         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
13039         * src/frame.c (x_set_screen_gamma): Set the specific frame's
13040         `redisplay' bit rather than windows_or_buffers_changed.
13042         * src/window.c (apply_window_adjustment): Remove redundant setting of
13043         windows_or_buffers_changed.
13045         * src/xdisp.c (redisplay_internal): Set the specific frame's
13046         `redisplay' bit rather than update_mode_lines in response to
13047         cursor_type_changed.
13048         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
13049         (AINC): Adjust accordingly.
13051 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
13053         Implement unprettification of symbol at point
13055         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
13056         symbol at point.
13057         (prettify-symbols--current-symbol-bounds): New variable.
13058         (prettify-symbols--post-command-hook): New function.
13059         (prettify-symbols-unprettify-at-point): New defcustom.
13060         (prettify-symbols-mode): Use it.
13061         (prettify-symbols--compose-symbol): Use them.
13063 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13065         * src/macfont.m (mac_font_descriptor_supports_languages):
13066         Regard "zh" as synonym of "zh-Hans".
13068 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13070         Work around crash when displaying etc/HELLO on OS X 10.11
13072         * src/macfont.m (mac_font_get_weight)
13073         (mac_font_descriptor_get_adjusted_weight): New functions.
13074         (macfont_store_descriptor_attributes): Adjust weight.
13076 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13078         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
13080 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
13082         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
13083         of the columns.
13085 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
13087         Use unar and lsar to handle RAR archives in arc-mode
13089         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
13090         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
13092 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
13094         Clarify :create in auth-source's docs
13096         * lisp/gnus/auth-source.el (auth-source-search):
13097         Clarify :create's meaning.
13099 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
13101         Avoid empty -path arguments in rgrep
13103         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
13104         the list produced according to grep-find-ignored-directories,
13105         before passing it to Find/Grep invocation.  (Bug#21548)
13107 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
13109         Clarify documentation of pos-visible-in-window-p
13111         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
13112         t for POS.  See
13113         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
13114         for the original report.
13116         * doc/lispref/windows.texi (Window Start and End): Clarify the
13117         meaning of t for the POSITION argument of pos-visible-in-window-p.
13119 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
13121         * lisp/progmodes/prolog.el: Fix various indentation cases.
13122         (prolog-operator-chars): New const (add \\).
13123         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
13124         (prolog-smie-rules): Add rules according to bug#21526.
13126 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
13128         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
13129         (sh-indent-after-continuation): Add new value `always' (bug#17620)
13130         (sh-smie-sh-rules): Remove old handling of continued lines.
13131         (sh-smie--indent-continuation): New function.
13132         (sh-set-shell): Use it.
13134 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
13136         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
13137         Remove redundant :group keyword args.
13138         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
13139         Remove variables.
13140         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
13141         turn them into compile-time variables.
13142         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
13143         Add rules for break, continue, return, global, and persistent.
13144         Refine the rule for "until".
13145         (octave-smie--funcall-p, octave-smie--end-index-p)
13146         (octave-smie--in-parens-p): New functions.
13147         (octave-smie-backward-token, octave-smie-forward-token): Use them to
13148         distinguish the "enumeration" function and the "end" index from
13149         their corresponding keywords.
13150         (octave--block-offset-keywords): New constant.
13151         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
13152         parsing.
13153         (octave-reserved-words): Redefine using octave-smie-grammar.
13154         (octave-font-lock-keywords): Use octave-smie--funcall-p and
13155         octave-smie--end-index-p.
13157 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
13159         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
13161 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
13163         * nt/INSTALL: Remove references to GTK site.
13164         That site no longer offers Windows downloads.
13166 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
13168         * nt/INSTALL: Add instructions for installing Git.
13170 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
13172         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
13173         use colors.  Suggested by Eli Zaretskii.
13175 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
13177         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
13178         not supporting 256 above colors (bug#21557).
13180 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
13182         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
13184         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
13186 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
13188         Add documentation for seq.el
13190         * doc/lispref/sequences.texi: Add documentation regarding extending
13191         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
13192         seq-do and seq-map.
13194 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
13196         Better documentation for seq-some
13198         * doc/lispref/sequences.texi:
13199         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
13200         guarantee that the returned value is the first non-nil value that
13201         resulted from applying the predicate.
13203 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
13205         * lisp/arc-mode.el: Sharp-quote function arguments.
13207 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
13209         Avoid redisplay error in ediff-regions-wordwise
13211         * lisp/vc/ediff-util.el
13212         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
13213         set before activating it.  (Bug#21567)
13215 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
13217         Another attempt to fix crashes due to prematurely freed faces
13219         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
13220         faces for as long as we might have desired matrices that reference
13221         those faces.  (Bug#21428)
13223 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
13225         Add auctex development list email address
13227 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
13229         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
13231 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
13233         Improve wrapfig package support and caption parsing
13235         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
13236         Correct description string and add wraptable environment.
13237         (reftex-default-context-regexps): Improve caption regexp.
13239 2015-09-28  Anders Lindgren  <andlind@gmail.com>
13241         Respect value of frame_resize_pixelwise when handling fullscreen state
13243         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
13244         setting size increments.
13246 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
13248         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
13250 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
13252         Add prettify-symbols-alist for js-mode
13254         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
13255         (js-mode): Use it.
13257 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
13259         * nt/subdirs.el: File deleted (no longer used).
13261 2015-09-26  Alan Mackenzie  <acm@muc.de>
13263         Fix follow-scroll-up/down, making them replacements for scroll-up/down
13265         1. Allow point to move between follow windows in scroll operations.
13266         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
13267         when EOB was isolated in the last follow window.
13269         * lisp/follow.el (follow-fixed-window): New variable.
13270         (follow-get-scrolled-point): New function.
13271         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
13272         Reformulate the code.  Put `scroll-command' properties on the functions.
13273         Correct minor errors in ...-down's doc string and code.
13274         (follow-calc-win-end): Amend incomplete doc string.  Use
13275         `pos-visible-in-window-p' to check whether EOB is in the window.
13276         (follow-estimate-first-window-start): Correct an off-by-1 error.
13277         (follow-adjust-window): Add handling for explicit scrolling operations.
13279 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
13281         * admin/MAINTAINERS: Add self, plus list some more files
13282         sans maintaners.
13284 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
13286         New DWIM commands for changing letter-case
13288         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
13289         New functions.  (Bug#21501)
13291 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
13293         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
13295 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
13297         Make face realization be more frame-specific
13299         * src/frame.h (struct f): New flag face_change.
13300         * src/xfaces.c (Finternal_make_lisp_face)
13301         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
13302         (update_face_from_frame_parameter): Set the face_change flag only
13303         for the frame whose faces are affected.
13304         * src/xdisp.c (init_iterator): If a frame's face_change flag is
13305         set, free faces only on that frame.
13306         (redisplay_internal): Disable "display optimization 1" if the
13307         frame's face_change flag is set.
13308         (redisplay_window): Don't allow skipping a window's redisplay if
13309         its frame's face_change flag is set.
13310         * src/frame.c (x_set_screen_gamma): Instead of calling
13311         Fclear_face_cache, call clear_face_cache and set
13312         windows_or_buffers_changed to a non-zero value.  This avoids
13313         setting the global face_change flag that triggers face realization
13314         on all frames and thorough redisplay of all of them.
13316         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
13317         clear face cache if the selected frame is a GUI frame.
13319 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
13321         Remove font-latex specific check
13323         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
13324         Use syntax-ppss data to identify verbatim contents.
13326 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
13328         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
13329         Fix some false negatives.
13331 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
13333         Reorder Windows version in Emacs manifests
13335         * nt/emacs-x64.manifest:
13336         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
13337         highest.
13339 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
13341         Update Emacs manifest files for Windows 10
13343         * nt/emacs-x86.manifest:
13344         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
13346 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
13348         Avoid non-ASCII decoding errors in C src files
13350         * src/nsterm.m:
13351         * src/lisp.h:
13352         * src/editfns.c:
13353         * src/doprnt.c: Add 'coding' cookies -- these files include
13354         Unicode characters and should be decoded as UTF-8.
13356 2015-09-25  Alan Mackenzie  <acm@muc.de>
13358         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
13360         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
13361         amend to match current modes and functions.
13362         (edebug-set-initial-mode): Uncomment and change from setting a defun's
13363         `edebug-initial-mode''s property to setting the variable
13364         `edebug-initial-mode'.
13365         (top level): Create new binding C-x C-a C-m for
13366         `edebug-set-initial-mode'.
13368         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
13369         `edebug-set-initial-mode' and its new key binding.
13370         (Edebug Options): Mention the new command in the pertinent place.
13372         * etc/NEWS: Write entry for this change.
13374 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
13376         Avoid non-ASCII decoding errors in Texinfo files
13378         * doc/misc/tramp.texi:
13379         * doc/lispref/strings.texi:
13380         * doc/lispref/positions.texi:
13381         * doc/lispref/help.texi:
13382         * doc/lispref/functions.texi:
13383         * doc/lispintro/emacs-lisp-intro.texi:
13384         * doc/emacs/text.texi:
13385         * doc/emacs/modes.texi:
13386         * doc/emacs/mini.texi:
13387         * doc/emacs/display.texi:
13388         * doc/emacs/custom.texi:
13389         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
13390         Unicode characters and should be decoded as UTF-8.
13391         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
13392         apostrophe unnecessarily.
13394 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
13396         Merge from gnulib
13398         This incorporates:
13399         2015-09-25 c-ctype: rewrite to use inline functions
13400         2015-09-24 maint: add coding cookies to non-ASCII sources
13401         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
13402         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
13403         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
13404         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
13405         * lib/set-permissions.c:
13406         Copy from gnulib.
13408 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
13410         Update publicsuffix.txt from upstream
13412         * etc/publicsuffix.txt: Update from
13413         https://publicsuffix.org/list/effective_tld_names.dat
13414         dated 2015-09-24 17:29:21 UTC.
13416 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
13418         Prevent timers from messing up TTY menus
13420         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
13421         the TTY menu is open.  (Bug#21530)
13423 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
13425         No need to mention K&R C in c-mode intro
13427 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13429         Fix recent bootstrap problems
13431         * src/syntax.c (parse_sexp_propertize): Fix last fix.
13432         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
13433         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
13435 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
13437         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
13439 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
13441         Properly quote nested xml comments (Bug#6267) (Bug#20001)
13443         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
13444         (nxml-mode): Set comment-quote-nested-function.
13446 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
13448         Allow major-modes full control over quoting nested comments
13450         * lisp/newcomment.el (comment-quote-nested-function): New variable.
13451         (comment-quote-nested-default): New function.
13452         (comment-quote-nested): Use `comment-quote-nested-function'.
13454 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
13456         Prefer CALLN in a few more places
13458         * src/macfont.m (macfont_set_family_cache):
13459         * src/nsterm.m (append2):
13460         * src/xterm.c (x_cr_export_frames):
13461         Prefer CALLN to allocating the arg arrays by hand.
13463 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
13465         Adapt file-notify-test02-events test case
13467         * test/automated/file-notify-tests.el (file-notify-test02-events):
13468         Create a new watch for every test.
13470 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
13472         Continue gfilenotify.c implementation of missing parts
13474         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
13475         `gfile-add-watch' call.
13476         (file-notify-rm-watch): Modify `file-notify-descriptors' only
13477         after calling the low level functions.
13479         * src/gfilenotify.c (dir_monitor_callback): Check, whether
13480         event_type is expected.
13481         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
13482         (Fgfile_rm_watch): Fix typo.
13483         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
13485 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13487         * src/syntax.c (parse_sexp_propertize): Handle spurious
13488         e_property_truncated flag.
13489         (update_syntax_table_forward): Remove invalid assertion.
13491 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
13493         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
13494         space display spec on text-mode terminals, by calling
13495         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
13496         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
13497         test for a GUI frame.
13499 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
13501         Move let-when-compile to lisp-mode.el
13503         This fixes the bootstrapping problem of `let-when-compile' using
13504         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
13506 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13508         * lisp/url/url-http.el (url-http-parse-headers): Do not
13509         automatically include Authorization header in redirect.
13510         (Bug#21350)
13512 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
13514         Clarify documentation of ':relative-width'
13516         * doc/lispref/display.texi (Specified Space): Document that
13517         ':relative-width' is only supported on GUI frames.
13519 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
13521         Fix 'current-column' in presence of :relative-width
13523         * src/indent.c (check_display_width): Support ':relative-width'
13524         in a display spec that specifies a stretch glyph.  (Bug#21533)
13526 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
13528         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
13530         ... to conform better to CONTRIBUTE guidelines.
13532 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
13534         * lisp/progmodes/prolog.el: Fix indentation of empty line
13536         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
13537         `empty-line-token' element.
13538         (smie-indent-empty-line): New function.
13539         (smie-indent-functions): Add it.
13541         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
13542         behavior and use the new `empty-line-token' element (bug#21526).
13543         (prolog-mode-variables): Fix comment-start-skip setting to match
13544         comment-start.
13546         * test/indent/prolog.prolog: Add nested indentation tests.
13548         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
13549         comment-start-skip not to misuse submatch 1.
13551 2015-09-22  Alan Mackenzie  <acm@muc.de>
13553         Make description of `edebug-initial-mode' user friendly
13555         Fixes bug#21365.
13557         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
13558         description of `edebug-initial-mode' from that of its implementation
13559         to that of its visual effect and use.  Move the paragraph higher up.
13561 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
13563         lisp/progmodes/gud.el (gud-format-command): Fix last commit
13565         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
13566         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
13568 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
13570         Improve last commit to process.c
13572 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
13574         Implement gfile-valid-p
13576         * lisp/filenotify.el (file-notify-callback): Fix typo.
13577         (gfile-valid-p): Remove defalias.
13579         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
13580         the file or directory to be watched is deleted.
13581         (Fgfile_add_watch): Make watch_object a triple.
13582         (Fgfile_rm_watch): Check, whether watch is cancelled already.
13583         (Fgfile_valid_p): New defun.
13584         (syms_of_gfilenotify): Declare Sgfile_valid_p.
13586 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
13588         Remove callback-handled channels from Available set
13590         * src/process.c (wait_reading_process_output): Remove channel from
13591         Available set if it is handled by a callback, e.g., dbus or
13592         inotify (bug#21313).
13594 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
13596         Use lunate epsilon for TeX \epsilon
13598         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
13599         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
13600         \epsilon to use GREEK LUNATE EPSILON SYMBOL
13602 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
13604         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
13606         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
13607         rather than outermost paren (bug#21526).
13609 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
13611         Improve git diff hunk headers for .el, .texi
13613         Problem reported by Alan Mackenzie in:
13614         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
13615         * .gitattributes (*.el, *.texi): New patterns.
13616         * autogen.sh: Configure diff.elisp.xfuncname and
13617         diff.texinfo.xfuncname if using Git.
13619 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
13621         Don't rely on defaults in decoding UTF-8 encoded Lisp files
13623         * lisp/replace.el:
13624         * lisp/textmodes/rst.el:
13625         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
13627 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
13629         Clarify or replace a few \u escapes
13631         * doc/lispref/nonascii.texi (Character Properties)
13632         More-detailed commentary for \u escapes.
13633         * lisp/progmodes/python.el (python--prettify-symbols-alist):
13634         * lisp/replace.el (query-replace-from-to-separator):
13635         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
13636         (rst-mode-syntax-table):
13637         * lisp/whitespace.el (whitespace-display-mappings):
13638         Prefer actual character to \u escape when this makes the code
13639         easier to follow in the usual case where Unicode chars can be
13640         displayed.
13642 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
13644         Pacify GCC -Wmaybe-uninitialized in xdisp.c
13646         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
13647         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
13648         charpos.  The loop should always execute at least once anyway.
13650 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
13652         Signal error on invalid regexp
13654         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
13655         Signal an error when the user tries searching with a regexp
13656         matching the empty string.
13658 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
13660         Another fix of file-notify-tests for w32notify
13662         * test/automated/file-notify-tests.el (file-notify-test02-events):
13663         Further adaptation for w32notify: reduce the number of expected
13664         'changed' events.  (Bug#21435)
13666 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
13668         Adapt tests and manual for w32notify
13670         * doc/lispref/os.texi (File Notifications): w32notify does not
13671         send `attribute-changed' events.
13673         * test/automated/file-notify-tests.el (file-notify--test-with-events):
13674         Simplify parameters.  Adapt all callees.
13675         (file-notify-test02-events): w32notify does not send
13676         `attribute-changed' events.
13677         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
13678         Do not skip in case of w32notify.  Simply ignore this part of the test.
13680 2015-09-21  Dima Kogan  <dima@secretsauce.net>
13682         Fix setting breakpoints when remote-debugging
13684         * lisp/progmodes/gud.el (gud-format-command): Send localized file
13685         names to the debugger running on the remote.  (Bug#13304)
13687 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
13689         Better docstring and parameter name for seq-find
13691         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
13692         the parameter `sentinel' to `default'.
13694         * doc/lispref/sequences.texi (Sequence Functions): Update the
13695           documentation for `seq-find' accordingly.
13697 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
13699         Avoid infinite recursion while displaying box face
13701         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
13702         the previous string/buffer character position under bidi
13703         iteration.  (Bug#21428)
13705 2015-09-21  Anders Lindgren  <andlind@gmail.com>
13707         Keep upper edge unchanged when changing size of NS frame
13709         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
13710         (Bug#21415).
13712 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
13714         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
13715         (prolog-smie-rules): Accommodate standard if/then/else special
13716         indentation.
13717         (prolog-mode): Add . to electric-indent-chars.
13718         (prolog-electric--if-then-else): Re-indent the line before adding space
13719         after the new char (bug#21526).
13721 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
13723         Add prettify symbols to python-mode
13725         * lisp/progmodes/python.el (python-prettify-symbols-alist):
13726         New variable.
13727         (python-mode): Use it
13729 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
13731         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
13733 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
13735         (compilation-error-regexp-alist-alist): Tone down guile-file
13737         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
13738         Make guile-file a bit less enthusiastic (bug#21496).
13740 2015-09-20  Drew Csillag  <drew@thecsillags.com>
13742         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
13743         Fix m4_* highlighting.
13745         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
13746         of commands when they have a "m4_" prefix.
13748 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
13750         '.' -> `.' in doc string
13752         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
13753         individual chars with grave quotes instead of straight quotes, as
13754         this works better when they are translated to curved quotes.
13756 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
13758         Improve file notifications, especially for Tramp
13760         * doc/lispref/files.texi (Magic File Names):
13761         Mention `file-notify-valid-p'.
13763         * doc/lispref/os.texi (File Notifications):
13764         Describe `file-notify-valid-p'.
13766         * etc/NEWS: Add `file-notify-valid-p'.
13768         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
13769         Improve implementation.
13770         (tramp-gvfs-monitor-file-process-filter): Rename from
13771         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
13772         process if appropriate.
13774         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
13775         Improve implementation.
13776         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
13777         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
13778         if appropriate.
13779         (tramp-sh-inotifywait-process-filter): Rename from
13780         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
13781         appropriate.
13783         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
13784         Use `delete-process'.
13785         (tramp-handle-file-notify-valid-p): Check also, that file or
13786         directory to be watched still exists.
13788         * test/automated/file-notify-tests.el (file-notify--test-timeout):
13789         New defun.  Use it at all places a timeout is needed.
13790         (file-notify--test-cleanup): Delete directories recursively.
13791         Cleanup also Tramp connections.
13792         (file-notify-test02-events): Add tests for `attribute-change'.
13793         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
13794         Add tests for `file-notify-rm-watch'.
13796 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
13798         Use %s to format strings instead of splicing them
13800         If FOO might contain quotes that are part of a file or variable
13801         name, the quotes should not be translated when showing FOO’s name
13802         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
13803         is not quite right, as it would translate FOO’s quotes.
13804         Change it to (message "%s: bar" FOO) instead.
13805         * lisp/allout.el (allout-process-exposed):
13806         * lisp/calc/calc-ext.el (calc-do-prefix-help):
13807         * lisp/calc/calc-store.el (calc-store-into):
13808         * lisp/calendar/todo-mode.el (todo-category-completions):
13809         * lisp/cedet/semantic/complete.el (semantic-completion-message):
13810         * lisp/org/ob-latex.el (convert-pdf):
13811         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
13812         * lisp/org/ox-latex.el (org-latex-compile):
13813         * lisp/org/ox-man.el (org-man-compile):
13814         * lisp/org/ox-odt.el (org-odt--export-wrap):
13815         * lisp/org/ox-texinfo.el (org-texinfo-compile):
13816         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
13817         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
13818         (verilog-signals-combine-bus, verilog-read-defines)
13819         (verilog-getopt-file, verilog-expand-dirnames)
13820         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
13821         * lisp/term/ns-win.el (ns-spi-service-call):
13822         Use %s to avoid translating quotes of file names etc. in diagnostics.
13824 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
13826         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
13827         (js-mode): Don't set syntax-begin-function.
13829 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
13831         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
13832         syntax-begin-function is a symbol.
13834 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
13836         Improve documentation of 'run-at-time'
13837         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
13838         In particular, don't refer to 'diary-entry-time', because it is
13839         unavailable until diary-lib is loaded.  Also, refer to
13840         'timer-duration-words', not 'timer-duration', as the latter's doc
13841         string says nothing about the accepted strings.
13843 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
13845         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
13847 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
13849         Repair pdbtrack remote file tracking
13850         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
13851         Rectify pdbtrack so it follows transitions from one remote source
13852         file to the next.
13854 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
13856         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
13858 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
13860         Adapt vc-src to the old-new vc-checkin API
13861         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
13862         additional optional parameter.
13864 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
13866         Add overflow module to CSS property list
13867         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
13868         from CSS Overflow Module Level 3.
13870 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
13872         Fix documentation of "C-u C-x v v"
13873         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
13874         documentation of "C-u C-x v v" match what the code does.
13876         Resurrect the ability to specify a revision in vc-next-action
13877         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
13878         * lisp/vc/vc-dav.el (vc-dav-checkin):
13879         * lisp/vc/vc-git.el (vc-git-checkin):
13880         * lisp/vc/vc-hg.el (vc-hg-checkin):
13881         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
13882         an additional optional argument, the revision to checkin.
13883         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
13884         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
13885         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
13886         a revision to checkin.
13887         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
13888         revision when checking in files.
13889         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
13890         for the details.
13892 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
13894         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
13895         (verilog-decls-princ, verilog-modport-princ)
13896         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
13898 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
13900         Fix the routine for help on Calc's prefixes
13901         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
13902         (calc-do-prefix-help): Use `read-char' to determine the next Calc
13903         command.
13905 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
13907         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
13908         (font-lock-fontify-block): Don't let-bind it.
13909         (font-lock-compile-keywords): Don't use it.
13910         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
13911         start one slot earlier, instead.
13912         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
13913         Don't declare.
13914         (syntax-ppss): Don't use it either.
13915         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
13916         from docstring.
13917         * doc/emacs/display.texi (Font Lock): Don't mention
13918         font-lock-beginning-of-syntax-function.
13919         * doc/lispref/modes.texi (Font Lock Basics): Update description of
13920         font-lock-defaults.
13921         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
13922         * lisp/loadhist.el (unload-feature-special-hooks):
13923         Remove font-lock-beginning-of-syntax-function.
13924         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
13925         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
13926         font-lock-beginning-of-syntax-function.
13928 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
13930         Backslash cleanup in Elisp source files
13931         This patch should not change behavior.  It typically omits backslashes
13932         where they are redundant (e.g., in the string literal "^\$").
13933         In a few places, insert backslashes where they make regular
13934         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
13935         "^\\*", which has the same effect as a regular expression.
13936         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
13937         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
13938         RCS IDs, as that makes it clearer that the backslash is intended.
13940         Some more minor backslash fixes
13941         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
13942         * test/automated/info-xref.el (info-xref-test-write-file):
13943         Double backslashes in strings.
13945         Fix several backslash typos in Elisp strings
13946         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
13947         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
13948         (todo-reset-done-string, todo-reset-comment-string)
13949         (todo-reset-highlight-item):
13950         * lisp/erc/erc-networks.el (erc-networks-alist):
13951         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
13952         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
13953         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
13954         (nntp-telnet-shell-prompt):
13955         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
13956         * lisp/image-dired.el (image-dired-rotate-original):
13957         (image-dired-get-exif-file-name):
13958         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
13959         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
13960         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
13961         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
13962         * lisp/net/shr-color.el (shr-color->hexadecimal):
13963         * lisp/org/org-bibtex.el (org-bibtex-fields):
13964         * lisp/org/org-docview.el (org-docview-export):
13965         * lisp/org/org-entities.el (org-entities):
13966         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
13967         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
13968         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
13969         (ebnf-style-database):
13970         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
13971         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
13972         * lisp/progmodes/sql.el (sql-product-alist):
13973         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
13974         (verilog-error-font-lock-keywords)
13975         (verilog-assignment-operator-re):
13976         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
13977         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
13978         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
13979         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
13980         For example, to get the regular expression ‘\.’ use the string
13981         literal "\\.", not "\." (which is equivalent to ".").
13982         * lisp/emulation/viper-util.el (viper-glob-unix-files):
13983         Remove stray ‘\j’ from string.
13984         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
13985         (nntp-telnet-shell-prompt):
13986         Treat > like $ when matching a shell prompt.
13987         * lisp/progmodes/make-mode.el (makefile-browse):
13988         Properly quote a diagnostic.
13990         Fix minor quoting problems in diagnostics
13991         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
13992         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
13993         Follow text-quoting-style in diagnostic, and quote a file name.
13995 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
13997         * doc/lispref/frames.texi (Cursor Parameters):
13998         Document 'x-stretch-cursor'.
14000 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
14002         Omit unnecessary \ before paren in C docstrings
14003         Although \( is needed in docstrings in Elisp code, it is not needed in
14004         docstrings in C code, since C function definitiions do not start with
14005         a parenthesis.  The backslashes made the docstrings a bit harder to
14006         read and to format in columns.  Also, some C docstrings had ( in
14007         column 1 and this did not appear to be causing any problems.  So,
14008         simplify C docstrings by replacing \( with ( and \) with ).
14010         A few more minor quoting fixes in a script and a text file
14012         Minor quoting fixes in scripts and doc
14013         Prefer straight quotes in random script files, as they are not
14014         converted.  Prefer grave quotes in a couple of places in the manual
14015         that were missed earlier, as these quotes are converted.
14017         Minor backslash fixes in manuals and scripts
14018         * Makefile.in (install-arch-indep):
14019         * admin/charsets/compact.awk:
14020         * admin/charsets/gb180302.awk (gb_to_index):
14021         * admin/charsets/gb180304.awk (gb_to_index):
14022         Avoid undefined behavior in Awk regular expression backslashes.
14023         * doc/misc/efaq.texi (Matching parentheses):
14024         Omit unnecessary backslashes.
14025         * doc/misc/gnus-faq.texi (FAQ 5-8):
14026         Avoid undefined behavior in suggested sed backslash usage.
14028         Add -Wswitch to --enable-gcc-warnings
14029         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
14030         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
14031         * lib-src/etags.c (main, consider_token, C_entries):
14032         * src/coding.c (encode_invocation_designation):
14033         * src/data.c (Ftype_of):
14034         * src/eval.c (Fdefvaralias, default_toplevel_binding)
14035         (Fbacktrace__locals, mark_specpdl):
14036         * src/lisp.h (record_xmalloc):
14037         * src/syntax.c (scan_lists, scan_sexps_forward):
14038         * src/window.c (window_relative_x_coord):
14039         * src/xdisp.c (push_it, pop_it):
14040         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
14041         Error out or do nothing (as appropriate) if a switch statement
14042         with an enum value does not cover all of the enum.
14043         * src/dispextern.h (struct iterator_stack_entry.u.comp):
14044         Remove unused member discovered by using -Wswitch.
14045         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
14046         * src/vm-limit.c (check_memory_limits):
14047         Simplify warning-diagnostic computation by using a table.
14049         etags ‘fatal’ function is now printf-like
14050         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
14051         Also, now static; not clear why it needed to be extern.
14052         (verror): New function, with most of the old contents of ‘error’.
14053         (fatal, error): Use it.
14055 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
14057         More adaptations in file-notify-tests.el
14058         * test/automated/file-notify-tests.el
14059         (file-notify-test05-dir-validity): Skip for w32notify in
14060         batch-mode.  (Bug#21432)
14062 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
14064         Adapt test in file-notify-tests.el
14065         * test/automated/file-notify-tests.el
14066         (file-notify-test04-file-validity): Skip for w32notify in
14067         batch-mode.  Add test lost last commit.
14069 2015-09-16  Dima Kogan  <dima@secretsauce.net>
14071         winner no longer holds on to dead frames
14072         * lisp/winner.el (winner-change-fun): Cull dead frames.
14073         This prevents a potentially massive memory leak.  See:
14074         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
14076 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
14078         Use common report_file_notify_error function
14079         * src/fileio.c (report_file_notify_error): New function.
14080         * src/inotify.c (report_inotify_error): Remove function.
14081         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
14082         (Finotify_rm_watch): Use report_file_notify_error.
14083         * src/lisp.h (report_file_notify_error): Declare external function.
14084         * src/w32notify.c (report_w32notify_error): Remove function.
14085         (Fw32notify_add_watch, Fw32notify_rm_watch):
14086         Use report_file_notify_error.
14088 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
14090         Fix documentation.
14091         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
14092         the documentation of the root mean square.
14094 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
14096         Remove tool_bar_redisplayed_once and associated code.
14097         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
14098         * src/frame.c (make_frame, x_set_font): Remove initialization of
14099         f->tool_bar_redisplayed_once.
14100         * src/w32fns.c (x_change_tool_bar_height):
14101         * src/xfns.c (x_change_tool_bar_height): Don't check for
14102         f->tool_bar_redisplayed_once.
14103         * src/xdisp.c (redisplay_internal): Remove handling of
14104         f->tool_bar_redisplayed_once.
14106 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
14108         Restore some of the quoting in the manuals
14109         * doc/lispref/windows.texi (Coordinates and Windows)
14110         (Coordinates and Windows):
14111         * doc/lispref/variables.texi (Lexical Binding)
14112         (File Local Variables):
14113         * doc/lispref/text.texi (Format Properties):
14114         * doc/lispref/symbols.texi (Symbol Components):
14115         * doc/lispref/strings.texi (Creating Strings):
14116         * doc/lispref/sequences.texi (Sequence Functions):
14117         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
14118         (Search and Replace):
14119         * doc/lispref/processes.texi (Bindat Spec):
14120         * doc/lispref/os.texi (Idle Timers):
14121         * doc/lispref/objects.texi (Basic Char Syntax):
14122         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
14123         * doc/lispref/nonascii.texi (Character Properties):
14124         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
14125         (Mode Line Variables):
14126         * doc/lispref/minibuf.texi (Text from Minibuffer):
14127         * doc/lispref/loading.texi (Autoload):
14128         * doc/lispref/keymaps.texi (Controlling Active Maps):
14129         * doc/lispref/frames.texi (Frame Layout, Size and Position)
14130         (Size Parameters, Implied Frame Resizing):
14131         * doc/lispref/files.texi (Changing Files, Magic File Names):
14132         * doc/lispref/eval.texi (Self-Evaluating Forms):
14133         * doc/lispref/display.texi (Progress, Abstract Display)
14134         (Abstract Display Example, Bidirectional Display):
14135         * doc/lispref/commands.texi (Event Mod):
14136         * doc/emacs/windows.texi (Displaying Buffers):
14137         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
14138         * doc/emacs/text.texi (Enriched Text):
14139         * doc/emacs/programs.texi (MixedCase Words):
14140         * doc/emacs/picture-xtra.texi (Insert in Picture)
14141         (Tabs in Picture):
14142         * doc/emacs/misc.texi (Emacs Server, Printing):
14143         * doc/emacs/mini.texi (Minibuffer History):
14144         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
14145         (Pulling / Pushing):
14146         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
14147         * doc/emacs/help.texi (Help, Help Echo):
14148         * doc/emacs/glossary.texi (Glossary):
14149         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
14150         (Frame Commands):
14151         * doc/emacs/files.texi (Reverting, Saving, Directories):
14152         * doc/emacs/entering.texi (Exiting):
14153         * doc/emacs/emacs.texi (Top):
14154         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
14155         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
14156         appropriate or replace quoting with @dfn.
14157         * doc/misc/ediff.texi (Window and Frame Configuration):
14158         * doc/lispref/processes.texi (Network Feature Testing):
14159         * doc/lispref/display.texi (Display Margins): Quote the phrase
14160         after "a.k.a." where appropriate.
14162 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
14164         Clarify reftex-extra-bindings docs
14165         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
14166         * doc/misc/reftex.texi (Key Bindings): Document that the variable
14167         only has an effect at load-time.
14169 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
14171         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
14172         search argument.  (Bug#21492) (Bug#21493)
14174 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
14176         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
14177         Add pretty symbols for \qquad and \varrho.
14179 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
14181         Add new functions for the root mean square of a (Calc) vector
14182         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
14183         New functions.
14184         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
14185         `calc-vector-rms', add autoloads for `calc-vector-rms' and
14186         `calcFunc-rms'.
14187         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
14188         `calcFunc-rms'.
14189         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
14190         `calc-vector-rms'.
14191         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
14192         command.
14194 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
14196         Add monotone EDE generic project
14197         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
14198         Add monotone generic project.
14200         Revert premature commit
14201         * doc/lispref/files.texi: Revert premature commit of change to
14202         file-name-all-completions.
14204         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
14205         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
14206         with cl-generic defaults.
14207         (elisp--xref-find-references): Add doc string.
14208         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
14209         tests to find bug.
14211         Fix bugs in eieio-oref-default related to class symbols
14212         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
14213         (eieio-oref-default): Handle class properly.
14215 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
14217         Quote “fullboth” when defining it
14218         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
14219         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
14221 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
14223         Minor doc fix in emacs/ack.texi
14224         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
14225         first argument.
14227 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
14229         Adapt tests in auto-revert-tests.el
14230         * test/automated/auto-revert-tests.el (auto-revert--timeout):
14231         Make it a defconst.
14232         (auto-revert--wait-for-revert): New defun.
14233         (auto-revert-test00-auto-revert-mode)
14234         (auto-revert-test01-auto-revert-tail-mode)
14235         (auto-revert-test02-auto-revert-mode-dired): Use it.
14237 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14239         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
14240         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
14241         (cl-lib-fdefs): Add defgeneric.
14242         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
14243         (eieio-kw, cl-lib-kw, el-kw): Remove.
14245 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
14247         Quote less in manuals
14248         The manuals often used quotes ``...'' when it is better to use @dfn or
14249         @code or capitalized words or no quoting at all.  For example, there is
14250         no need for the `` and '' in “if a variable has one effect for
14251         @code{nil} values and another effect for ``non-@code{nil}'' values”.
14252         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
14253         unnecessary quoting like this, and to use @dfn etc. instead when called
14254         for (Bug#21472).
14256 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
14258         * lisp/custom.el (load-theme): Only compute hash when needed.
14260 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
14262         Pacify --enable-gcc-warnings
14263         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
14265 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
14267         Improve error reports in inotify.c
14268         * src/inotify.c (report_inotify_error): New function.  Clone of
14269         report_w32notify_error.
14270         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
14271         (Finotify_rm_watch): Use it.
14273 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
14275         Fix the file-notify tests for watch validation on w32
14276         * test/automated/file-notify-tests.el
14277         (file-notify-test04-file-validity): Move the directory deletion
14278         out of the file-notify--test-with-events macro.
14279         (file-notify-test04-file-validity)
14280         (file-notify-test05-dir-validity): Enlarge the timeout of
14281         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
14283 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
14285         Use OPEN BOX instead of space for \quad.
14286         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
14287         character for \quad instead of a space.
14289 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
14291         Add missing *.pbm images
14292         * etc/images/connect.pbm: New file.
14293         * etc/images/custom/down-pushed.pbm: New file.
14294         * etc/images/custom/down.pbm: New file.
14295         * etc/images/custom/right-pushed.pbm: New file.
14296         * etc/images/custom/right.pbm: New file.
14297         * etc/images/describe.pbm: New file.
14298         * etc/images/disconnect.pbm: New file.
14299         * etc/images/ezimage/bits.pbm: New file.
14300         * etc/images/ezimage/bitsbang.pbm: New file.
14301         * etc/images/ezimage/box-minus.pbm: New file.
14302         * etc/images/ezimage/box-plus.pbm: New file.
14303         * etc/images/ezimage/box.pbm: New file.
14304         * etc/images/ezimage/checkmark.pbm: New file.
14305         * etc/images/ezimage/dir-minus.pbm: New file.
14306         * etc/images/ezimage/dir-plus.pbm: New file.
14307         * etc/images/ezimage/dir.pbm: New file.
14308         * etc/images/ezimage/doc-minus.pbm: New file.
14309         * etc/images/ezimage/doc-plus.pbm: New file.
14310         * etc/images/ezimage/doc.pbm: New file.
14311         * etc/images/ezimage/info.pbm: New file.
14312         * etc/images/ezimage/key.pbm: New file.
14313         * etc/images/ezimage/label.pbm: New file.
14314         * etc/images/ezimage/lock.pbm: New file.
14315         * etc/images/ezimage/mail.pbm: New file.
14316         * etc/images/ezimage/page-minus.pbm: New file.
14317         * etc/images/ezimage/page-plus.pbm: New file.
14318         * etc/images/ezimage/page.pbm: New file.
14319         * etc/images/ezimage/tag-gt.pbm: New file.
14320         * etc/images/ezimage/tag-minus.pbm: New file.
14321         * etc/images/ezimage/tag-plus.pbm: New file.
14322         * etc/images/ezimage/tag-type.pbm: New file.
14323         * etc/images/ezimage/tag-v.pbm: New file.
14324         * etc/images/ezimage/tag.pbm: New file.
14325         * etc/images/ezimage/unlock.pbm: New file.
14326         * etc/images/gnus/important.pbm: New file.
14327         * etc/images/gnus/mail-send.pbm: New file.
14328         * etc/images/gnus/receipt.pbm: New file.
14329         * etc/images/gnus/toggle-subscription.pbm: New file.
14330         * etc/images/gnus/unimportant.pbm: New file.
14331         * etc/images/gud/all.pbm: New file.
14332         * etc/images/gud/rcont.pbm: New file.
14333         * etc/images/gud/recstart.pbm: New file.
14334         * etc/images/gud/recstop.pbm: New file.
14335         * etc/images/gud/rfinish.pbm: New file.
14336         * etc/images/gud/rnext.pbm: New file.
14337         * etc/images/gud/rnexti.pbm: New file.
14338         * etc/images/gud/rstep.pbm: New file.
14339         * etc/images/gud/rstepi.pbm: New file.
14340         * etc/images/gud/thread.pbm: New file.
14341         * etc/images/lock-broken.pbm: New file.
14342         * etc/images/lock-ok.pbm: New file.
14343         * etc/images/lock.pbm: New file.
14344         * etc/images/mail/copy.pbm: New file.
14345         * etc/images/mail/forward.pbm: New file.
14346         * etc/images/mail/not-spam.pbm: New file.
14347         * etc/images/mail/outbox.pbm: New file.
14348         * etc/images/mail/preview.pbm: New file.
14349         * etc/images/mail/save-draft.pbm: New file.
14350         * etc/images/mh-logo.pbm: New file.
14351         * etc/images/mpc/add.pbm: New file.
14352         * etc/images/mpc/ffwd.pbm: New file.
14353         * etc/images/mpc/next.pbm: New file.
14354         * etc/images/mpc/pause.pbm: New file.
14355         * etc/images/mpc/play.pbm: New file.
14356         * etc/images/mpc/prev.pbm: New file.
14357         * etc/images/mpc/rewind.pbm: New file.
14358         * etc/images/mpc/stop.pbm: New file.
14359         * etc/images/redo.pbm: New file.
14360         * etc/images/smilies/braindamaged.pbm: New file.
14361         * etc/images/smilies/cry.pbm: New file.
14362         * etc/images/smilies/dead.pbm: New file.
14363         * etc/images/smilies/evil.pbm: New file.
14364         * etc/images/smilies/forced.pbm: New file.
14365         * etc/images/smilies/grin.pbm: New file.
14366         * etc/images/smilies/indifferent.pbm: New file.
14367         * etc/images/sort-ascending.pbm: New file.
14368         * etc/images/sort-column-ascending.pbm: New file.
14369         * etc/images/sort-criteria.pbm: New file.
14370         * etc/images/sort-descending.pbm: New file.
14371         * etc/images/sort-row-ascending.pbm: New file.
14372         * etc/images/unchecked.pbm: New file.
14373         * etc/images/zoom-in.pbm: New file.
14374         * etc/images/README: Update instructions for PBM files.
14376         Add separator.pbm tool-bar image
14377         * etc/images/separator.pbm: New file.  Having it avoids the side
14378         effect of changing the tool-bar height when the default font's size
14379         changes and XPM image support is not available, due to the SPC
14380         characters that are left in the Lisp string used to display the tool
14381         bar, because there are no images to display instead of those SPC
14382         characters.
14384         Make show-paren-match face visible on mono-color displays
14385         * lisp/faces.el (show-paren-match): Use the underline face for
14386         mono-color displays.  (Bug#21481)
14388 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
14390         Don’t double-encode non-ASCII mail clipboard
14391         * lisp/mail/mailclient.el (mailclient-send-it):
14392         Also fix the case when mailclient-place-body-on-clipboard-flag
14393         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
14395 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
14397         Adapt file-notify-tests.el test cases
14398         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
14399         * src/inotify.c (Finotify_valid_p): Adapt docstring.
14400         * test/automated/file-notify-tests.el
14401         (file-notify-test03-autorevert)
14402         (file-notify-test04-file-validity)
14403         (file-notify-test04-file-validity-remote)
14404         (file-notify-test05-dir-validity)
14405         (file-notify-test05-dir-validity-remote): Adapt docstring.
14406         (file-notify-test04-file-validity): Let events arrive before
14407         calling final `file-notify-valid-p'.  Do not ignore errors.
14408         (file-notify-test05-dir-validity): Do not manipulate
14409         `temporary-file-directory', it isn't necessary.  Let events arrive
14410         before calling final `file-notify-valid-p'.  Do not ignore errors.
14412 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
14414         Don’t double-encode non-ASCII for mail client
14415         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
14416         Use RFC 6068’s list of unreserved characters.
14417         (mailclient-send-it): When encoding the body as a URL,
14418         first decode it as per Content-Type: and Content-Transfer-Encoding:,
14419         as URLs must use percent-encoded UTF-8 (Bug#21471).
14420         * doc/misc/url.texi (mailto): Update RFC number.
14422 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
14424         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
14426 2015-09-14  Alan Mackenzie  <acm@muc.de>
14428         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
14429         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
14430         `cadr/car'.
14432 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
14434         Clarify documentation of char-table extra slots
14435         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
14436         slot numbers are zero-based.  (Bug#21467)
14438 2015-09-14  Alan Mackenzie  <acm@muc.de>
14440         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
14441         Fixes bug#21449.
14442         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
14443         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
14444         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
14445         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
14446         Insert "\\|\\\\." into regexps which match symbols.
14448 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
14450         Improve the doc string of w32notify-valid-p
14451         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
14452         that removing a watch makes its object invalid.
14454 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
14456         Fix tests for file-notify-valid-p
14457         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
14458         Use delete-directory to delete file-notify--test-tmpfile if it is
14459         a directory.  Likewise for file-notify--test-tmpfile1.
14460         (file-notify-test04-file-validity)
14461         (file-notify-test05-dir-validity): Delete the parent directory of
14462         the test.  Ignore errors when cleaning up after the test.
14464 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
14466         Report file-notify-error in w32notify.c
14467         * src/w32notify.c (report_w32notify_error): New function.
14468         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
14469         errors, instead of calling report_file_error.  (Bug#21432)
14471         Implement w32notify-valid-p
14472         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
14473         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
14474         'identity'.
14476 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
14478         Test file-notify-valid-p
14479         * test/automated/file-notify-tests.el
14480         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
14481         New tests.
14483 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
14485         Fix markup in ELisp manual
14486         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
14487         of the 'alpha' parameter value.  (Bug#21470)
14489 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
14491         Introduce `file-notify-valid-p'
14492         * lisp/filenotify.el (file-notify-valid-p): New defun.
14493         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
14494         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
14495         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
14496         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
14497         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
14498         <file-notify-valid-p>: Add handler.
14499         * lisp/net/tramp.el (tramp-file-name-for-operation):
14500         Add `file-notify-valid-p'.
14501         (tramp-handle-file-notify-valid-p): New defun.
14502         * src/inotify.c (Finotify_valid_p): New defun.
14503         (syms_of_inotify): Declare Sinotify_valid_p.
14505 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
14507         Port Unicode char detection to FreeBSD+svgalib
14508         Problem reported by Ashish SHUKLA in:
14509         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
14510         * configure.ac: Check for struct unipair.unicode instead of for
14511         <linux/kd.h>, since that’s more specific to what the code
14512         actually needs.
14513         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
14515         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
14517 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
14519         Fix vertical cursor motion across overlay strings with newlines
14520         * src/indent.c (Fvertical_motion): Don't leave point in the middle
14521         of an overlay string with newlines, as that will position the
14522         cursor after the string at whatever column is there.  (Bug#21468)
14524 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
14526         Fix tests in file-notify-tests.el
14527         * test/automated/file-notify-tests.el: Remove Tramp declarations.
14528         (file-notify-test00-availability): Print remote command w/o Tramp
14529         internal functions.
14530         (file-notify-test02-events, file-notify-test02-events-remote):
14531         Adapt docstring.
14532         (file-notify-test03-autorevert): Use `format-message' when
14533         inspecting *Messages* buffer.
14535 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
14537         Bind inhibit-modification-hooks rather than a/b-c-f
14538         * lisp/wid-edit.el (widget-editable-list-insert-before)
14539         (widget-editable-list-delete-at):
14540         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
14541         (cperl-font-lock-unfontify-region-function):
14542         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
14543         * lisp/obsolete/longlines.el (longlines-mode):
14544         * lisp/obsolete/fast-lock.el (save-buffer-state):
14545         * lisp/mouse.el (mouse-save-then-kill-delete-region):
14546         * lisp/gnus/message.el (message-hide-headers):
14547         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
14548         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
14549         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
14550         than after/before-change-functions to nil.
14552 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
14554         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
14555         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
14556         the buffers, even if the forced redisplay is interrupted.
14558         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
14560         Merge syntax-propertize--done and parse-sexp-propertize-done
14561         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
14562         (syntax-propertize): Set syntax-propertize--done even if
14563         syntax-propertize-function is nil.  Avoid recursive invocations.
14564         (syntax-propertize-chunks): New var.
14565         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
14566         Simplify.
14567         (parse-sexp-propertize-function): Don't set any more.
14568         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
14569         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
14570         Call Qinternal__syntax_propertize instead of
14571         Vparse_sexp_propertize_function.  Truncate e_property if needed.
14572         (update_syntax_table_forward): Streamline.
14573         (syms_of_syntax): Define Qinternal__syntax_propertize.
14574         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
14576 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
14578         Prefer straight quoting in some text files
14579         Mostly this just changes ` to ' in static text.  Some exceptions:
14580         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
14581         typically does that now.
14582         * admin/quick-install-emacs (TRY, top level):
14583         Use straight quoting in diagnostics.
14584         * src/README: Fix working-directory confusion.
14586         * CONTRIBUTE: Move send-email here from git-workflow.
14588 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
14590         Improve file notifications in Tramp
14591         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
14592         Set proper events to watch for.
14593         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
14594         watched events.
14596 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
14598         Fix NS build with --enable-checking='glyphs'
14599         * src/nsfns.m (unwind_create_frame): Make the preprocessor
14600         conditionals for referencing 'dpyinfo' consistent throughout the
14601         function.  (Bug#21426)
14603 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
14605         Add seq-find
14606         This function is similar to `seq-some' but returns the found element.
14607         In the cases where nil can be the found element, a sentinel optional
14608         argument can be provided to avoid ambiguities.
14609         * lisp/emacs-lisp/seq.el (seq-find): New function.
14610         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
14611         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
14612         seq-find.
14614 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
14616         Document file-notify--test-with-events.
14617         * test/automated/file-notify-tests.el (file-notify--test-with-events):
14618         Add docstring.
14620 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
14622         Report used native library in file-notify-tests.el
14623         * test/automated/file-notify-tests.el
14624         (tramp-get-remote-gvfs-monitor-dir)
14625         (tramp-get-remote-inotifywait): Declare them.
14626         (file-notify-test00-availability): Print used native library.
14628 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
14630         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
14631         (mpc-file-local-copy): Check for absolute path.  Check more config
14632         locations.
14634 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
14636         Improve documentation of categories
14637         * doc/lispref/syntax.texi (Categories): Clarify the example of
14638         using define-category and modify-category-entry.  (Bug#21448)
14640 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
14642         Revert some stray curved quotes I missed earlier
14643         Problem reported by David Kastrup in:
14644         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
14645         * lisp/international/mule-cmds.el (leim-list-header):
14646         Use format-message with an ASCII-only format.
14648         Prefer NUMBERP to spelling it out
14649         * src/editfns.c (styled_format):
14650         * src/frame.h (NUMVAL):
14651         * src/image.c (parse_image_spec):
14652         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
14653         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
14654         * src/process.c (Fsignal_process):
14655         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
14656         * src/xfaces.c (check_lface_attrs):
14657         * src/xselect.c (x_fill_property_data, x_send_client_event):
14658         Use NUMBERP rather than INTEGERP || FLOATP.
14660 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
14662         Improve file-notify-tests
14663         * test/automated/file-notify-tests.el: Use lexical-binding.
14664         (file-notify--test-cleanup): New function.
14665         (file-notify-test00-availability, file-notify-test01-add-watch)
14666         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
14667         (file-notify--test-with-events): New macro.
14668         (file-notify-test02-events): Use it.
14670 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
14672         Add patch-sending instructions to git-workflow
14673         From a suggestion by Mitchel Humpherys in:
14674         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
14675         * admin/notes/git-workflow (Sending patches): New section.
14677         Port to GIFLIB 5.0.6 and later
14678         Problem reported by Mitchel Humpherys in:
14679         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
14680         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
14681         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
14682         (gif_load) [HAVE_GIF]: Use it.
14684 2015-09-10  Glenn Morris  <rgm@gnu.org>
14686         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
14688 2015-09-09  Glenn Morris  <rgm@gnu.org>
14690         * test/automated/file-notify-tests.el (file-notify-test02-events):
14691         Fix recent change.
14693 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
14695         Refix movemail GCC pacification
14696         Problem reported by Ken Brown in:
14697         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
14698         * lib-src/movemail.c (main): Fix previous change.
14700 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14702         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
14703         Mark unused vars with underscore.
14705         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
14706         (parse_sexp_propertize): ...from here.
14708         * lisp/filenotify.el: Use lexical-binding
14709         (file-notify-add-watch): Avoid add-to-list.
14711 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
14713         Start checking event types in file-notify tests
14714         * test/automated/file-notify-tests.el (file-notify--test-events):
14715         New variable.
14716         (file-notify--test-event-handler): Append received event to
14717         file-notify--test-events for later analysis.
14718         (file-notify-test02-events): Assert that the expected notifications have
14719         arrived in the expected order.
14721 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
14723         Merge from gnulib and texinfo
14724         This incorporates:
14725         2015-08-03 Improve port of stdalign to C++11
14726         * lib/stdalign.in.h: Copy from gnulib.
14727         * doc/misc/texinfo.tex: Copy from texinfo.
14729 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14731         Make syntax.c call syntax-propertize on demand
14732         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
14733         (parse-sexp-propertize-function): Use it.
14734         (syntax-propertize): Disable parse-sexp-propertize-function.
14735         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
14736         New functions.
14737         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
14738         `parse-sexp-propertize-function'.
14739         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
14740         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
14741         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
14742         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
14743         Don't assume `point' is set.
14745 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
14747         Fix indentation of an @example in ELisp manual
14748         * doc/lispref/syntax.texi (Categories): Untabify the example.
14749         (Bug#21448)
14751 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
14753         Define internal-char-font even if --without-x
14754         The function is used now even in non-graphical environments.
14755         Problem reported by Glenn Morris in:
14756         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
14757         * src/font.c (Finternal_char_font): Move here ...
14758         * src/fontset.c (Finternal_char_font): ... from here.
14760 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14762         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
14763         Remove warning.
14765 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
14767         Fix display of complex local data types in GDB-MI
14768         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
14769         variable has no value, display "<complex data type>" as a
14770         placeholder, instead of a confusing "nil".  (Bug#21438)
14772 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
14774         Remove redundant redefinition of seq-drop-while from seq.el
14775         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
14777 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
14779         * lisp/emacs-lisp/package.el (package--ensure-init-file):
14780         More robust check for `package-initialize' calls in init file.
14781         This function accepts an optional argument, but calls passing
14782         an argument would not have been detected.
14784 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
14786         Port movemail to RHEL 6 with --enable-gcc-warnings
14787         * lib-src/movemail.c (main): Declare local only if needed.
14789         Port recent Linux console changes to RHEL 6
14790         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
14792         Improvements for curved quotes on Linux consule
14793         This should help Emacs work better out-of-the-box on Linux consoles,
14794         which have only limited support for displaying Unicode characters.
14795         Also, undo the recent change that caused text-quoting-style to
14796         affect quote display on terminals, so that the two features are
14797         independent.  See Alan Mackenzie in:
14798         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
14799         Finally, add a style parameter to startup--setup-quote-display,
14800         so that this function can also be invoked after startup, with
14801         different styles depending on user preference at the time.
14802         * configure.ac: Check for linux/kd.h header.
14803         * doc/emacs/display.texi (Text Display): Document quote display.
14804         * doc/lispref/display.texi (Active Display Table):
14805         * etc/NEWS:
14806         * lisp/startup.el (startup--setup-quote-display, command-line):
14807         text-quoting-style no longer affects quote display.
14808         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
14809         * lisp/international/mule-util.el (char-displayable-p):
14810         * lisp/startup.el (startup--setup-quote-display):
14811         On a text terminal supporting glyph codes, use the reported
14812         glyph codes instead of the terminal coding system, as this
14813         is more accurate on the Linux console.
14814         * lisp/startup.el (startup--setup-quote-display):
14815         New optional arg STYLE.
14816         * src/fontset.c (Finternal_char_font):
14817         Report glyph codes for a text terminal, if they are available.
14818         Currently this is supported only for the Linux console.
14819         * src/termhooks.h (struct terminal): New member glyph-code-table.
14820         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
14821         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
14822         (terminal_glyph_code): New function.
14824 2015-09-08  Juri Linkov  <juri@linkov.net>
14826         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
14827         underline.  (Bug#21433)
14829 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
14831         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
14833 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
14835         Fix double-reporting of rename events with inotify
14836         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
14837         of rename events with inotify (bug#21435).
14839 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
14841         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
14842         (tetris-mode-map): Use it.
14844 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
14846         Remove a few simple cases of global redisplay
14847         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
14848         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
14849         rather than returning a "resized_p" boolean.
14850         (redisplay_internal): Adjust call accordingly.
14851         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
14852         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
14853         tracking of this undesirable situation.
14855         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
14856         * src/process.c (status_notify): Only set the update_mode_line on the
14857         relevant buffers rather than setting it globally.
14859 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
14861         * lisp/electric.el (electric-quote-post-self-insert-function):
14862         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
14863         (electric-quote-mode): Activate everywhere in message-mode.
14865 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
14867         Go back to grave quoting in source-code docstrings etc.
14868         This reverts almost all my recent changes to use curved quotes
14869         in docstrings and/or strings used for error diagnostics.
14870         There are a few exceptions, e.g., Bahá’í proper names.
14871         * admin/unidata/unidata-gen.el (unidata-gen-table):
14872         * lisp/abbrev.el (expand-region-abbrevs):
14873         * lisp/align.el (align-region):
14874         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
14875         (outlineify-sticky):
14876         * lisp/apropos.el (apropos-library):
14877         * lisp/bookmark.el (bookmark-default-annotation-text):
14878         * lisp/button.el (button-category-symbol, button-put)
14879         (make-text-button):
14880         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
14881         * lisp/calc/calc-embed.el (calc-do-embedded):
14882         * lisp/calc/calc-ext.el (calc-user-function-list):
14883         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
14884         * lisp/calc/calc-help.el (calc-describe-key)
14885         (calc-describe-thing, calc-full-help):
14886         * lisp/calc/calc-lang.el (calc-c-language)
14887         (math-parse-fortran-vector-end, math-parse-tex-sum)
14888         (math-parse-eqn-matrix, math-parse-eqn-prime)
14889         (calc-yacas-language, calc-maxima-language, calc-giac-language)
14890         (math-read-giac-subscr, math-read-math-subscr)
14891         (math-read-big-rec, math-read-big-balance):
14892         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
14893         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
14894         (calc-auto-recompute):
14895         * lisp/calc/calc-prog.el (calc-fix-token-name)
14896         (calc-read-parse-table-part, calc-user-define-invocation)
14897         (math-do-arg-check):
14898         * lisp/calc/calc-store.el (calc-edit-variable):
14899         * lisp/calc/calc-units.el (math-build-units-table-buffer):
14900         * lisp/calc/calc-vec.el (math-read-brackets):
14901         * lisp/calc/calc-yank.el (calc-edit-mode):
14902         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
14903         * lisp/calendar/appt.el (appt-display-message):
14904         * lisp/calendar/diary-lib.el (diary-check-diary-file)
14905         (diary-mail-entries, diary-from-outlook):
14906         * lisp/calendar/icalendar.el (icalendar-export-region)
14907         (icalendar--convert-float-to-ical)
14908         (icalendar--convert-date-to-ical)
14909         (icalendar--convert-ical-to-diary)
14910         (icalendar--convert-recurring-to-diary)
14911         (icalendar--add-diary-entry):
14912         * lisp/calendar/time-date.el (format-seconds):
14913         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
14914         (timeclock-make-hours-explicit, timeclock-log-data):
14915         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
14916         (todo-item-mark, todo-check-format)
14917         (todo-insert-item--next-param, todo-edit-item--next-key)
14918         (todo-mode):
14919         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
14920         * lisp/cedet/mode-local.el (describe-mode-local-overload)
14921         (mode-local-print-binding, mode-local-describe-bindings-2):
14922         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
14923         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
14924         * lisp/cus-start.el (standard):
14925         * lisp/cus-theme.el (describe-theme-1):
14926         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
14927         (custom--sort-vars-1, load-theme):
14928         * lisp/descr-text.el (describe-text-properties-1, describe-char):
14929         * lisp/dired-x.el (dired-do-run-mail):
14930         * lisp/dired.el (dired-log):
14931         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
14932         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
14933         (ad-disable-advice, ad-remove-advice, ad-set-argument)
14934         (ad-set-arguments, ad--defalias-fset, ad-activate)
14935         (ad-deactivate):
14936         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
14937         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
14938         (byte-optimize-while, byte-optimize-apply):
14939         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
14940         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
14941         (byte-compile-log-file, byte-compile-format-warn)
14942         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
14943         (byte-compile-cl-warn)
14944         (byte-compile-warn-about-unresolved-functions)
14945         (byte-compile-file, byte-compile--declare-var)
14946         (byte-compile-file-form-defmumble, byte-compile-form)
14947         (byte-compile-normal-call, byte-compile-check-variable)
14948         (byte-compile-variable-ref, byte-compile-variable-set)
14949         (byte-compile-subr-wrong-args, byte-compile-setq-default)
14950         (byte-compile-negation-optimizer)
14951         (byte-compile-condition-case--old)
14952         (byte-compile-condition-case--new, byte-compile-save-excursion)
14953         (byte-compile-defvar, byte-compile-autoload)
14954         (byte-compile-lambda-form)
14955         (byte-compile-make-variable-buffer-local, display-call-tree)
14956         (batch-byte-compile):
14957         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
14958         * lisp/emacs-lisp/chart.el (chart-space-usage):
14959         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
14960         (check-declare-warn, check-declare-file)
14961         (check-declare-directory):
14962         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
14963         (checkdoc-message-text-engine):
14964         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
14965         (cl--describe-class):
14966         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
14967         (cl--generic-describe, cl-generic-generalizers):
14968         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
14969         (cl-symbol-macrolet):
14970         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
14971         * lisp/emacs-lisp/copyright.el (copyright)
14972         (copyright-update-directory):
14973         * lisp/emacs-lisp/edebug.el (edebug-read-list):
14974         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
14975         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
14976         (eieio-oref):
14977         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
14978         * lisp/emacs-lisp/eieio-speedbar.el:
14979         (eieio-speedbar-child-make-tag-lines)
14980         (eieio-speedbar-child-description):
14981         * lisp/emacs-lisp/eieio.el (defclass, change-class):
14982         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
14983         (elint-init-form, elint-check-defalias-form)
14984         (elint-check-let-form):
14985         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
14986         (ert-results-pop-to-backtrace-for-test-at-point)
14987         (ert-results-pop-to-messages-for-test-at-point)
14988         (ert-results-pop-to-should-forms-for-test-at-point)
14989         (ert-describe-test):
14990         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
14991         (find-function-library):
14992         * lisp/emacs-lisp/generator.el (iter-yield):
14993         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
14994         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
14995         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
14996         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
14997         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
14998         (advice--make, define-advice):
14999         * lisp/emacs-lisp/package-x.el (package-upload-file):
15000         * lisp/emacs-lisp/package.el (package-version-join)
15001         (package-disabled-p, package-activate-1, package-activate)
15002         (package--download-one-archive)
15003         (package--download-and-read-archives)
15004         (package-compute-transaction, package-install-from-archive)
15005         (package-install, package-install-selected-packages)
15006         (package-delete, package-autoremove, describe-package-1)
15007         (package-install-button-action, package-delete-button-action)
15008         (package-menu-hide-package, package-menu--list-to-prompt)
15009         (package-menu--perform-transaction)
15010         (package-menu--find-and-notify-upgrades):
15011         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
15012         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
15013         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
15014         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
15015         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
15016         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
15017         (rx-form):
15018         * lisp/emacs-lisp/smie.el (smie-config-save):
15019         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
15020         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
15021         * lisp/emacs-lisp/testcover.el (testcover-1value):
15022         * lisp/emacs-lisp/timer.el (timer-event-handler):
15023         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
15024         (viper-toggle-search-style, viper-kill-buffer)
15025         (viper-brac-function):
15026         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
15027         * lisp/env.el (setenv):
15028         * lisp/erc/erc-button.el (erc-nick-popup):
15029         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
15030         * lisp/eshell/em-dirs.el (eshell/cd):
15031         * lisp/eshell/em-glob.el (eshell-glob-regexp)
15032         (eshell-glob-entries):
15033         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
15034         * lisp/eshell/esh-opt.el (eshell-show-usage):
15035         * lisp/facemenu.el (facemenu-add-new-face)
15036         (facemenu-add-new-color):
15037         * lisp/faces.el (read-face-name, read-face-font, describe-face)
15038         (x-resolve-font-name):
15039         * lisp/files-x.el (modify-file-local-variable):
15040         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
15041         (set-auto-mode, hack-one-local-variable--obsolete)
15042         (dir-locals-set-directory-class, write-file, basic-save-buffer)
15043         (delete-directory, copy-directory, recover-session)
15044         (recover-session-finish, insert-directory)
15045         (file-modes-char-to-who, file-modes-symbolic-to-number)
15046         (move-file-to-trash):
15047         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
15048         * lisp/find-cmd.el (find-generic, find-to-string):
15049         * lisp/finder.el (finder-commentary):
15050         * lisp/font-lock.el (font-lock-fontify-buffer):
15051         * lisp/format.el (format-write-file, format-find-file)
15052         (format-insert-file):
15053         * lisp/frame.el (get-device-terminal, select-frame-by-name):
15054         * lisp/fringe.el (fringe--check-style):
15055         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
15056         * lisp/help-fns.el (help-fns--key-bindings)
15057         (help-fns--compiler-macro, help-fns--parent-mode)
15058         (help-fns--obsolete, help-fns--interactive-only)
15059         (describe-function-1, describe-variable):
15060         * lisp/help.el (describe-mode)
15061         (describe-minor-mode-from-indicator):
15062         * lisp/image.el (image-type):
15063         * lisp/international/ccl.el (ccl-dump):
15064         * lisp/international/fontset.el (x-must-resolve-font-name):
15065         * lisp/international/mule-cmds.el (prefer-coding-system)
15066         (select-safe-coding-system-interactively)
15067         (select-safe-coding-system, activate-input-method)
15068         (toggle-input-method, describe-current-input-method)
15069         (describe-language-environment):
15070         * lisp/international/mule-conf.el (code-offset):
15071         * lisp/international/mule-diag.el (describe-character-set)
15072         (list-input-methods-1):
15073         * lisp/mail/feedmail.el (feedmail-run-the-queue):
15074         * lisp/mouse.el (minor-mode-menu-from-indicator):
15075         * lisp/mpc.el (mpc-playlist-rename):
15076         * lisp/msb.el (msb--choose-menu):
15077         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
15078         * lisp/net/imap.el (imap-interactive-login):
15079         * lisp/net/mairix.el (mairix-widget-create-query):
15080         * lisp/net/newst-backend.el (newsticker--sentinel-work):
15081         * lisp/net/newst-treeview.el (newsticker--treeview-load):
15082         * lisp/net/rlogin.el (rlogin):
15083         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
15084         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
15085         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
15086         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
15087         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
15088         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
15089         (org-babel-goto-named-result):
15090         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
15091         * lisp/org/ob-ref.el (org-babel-ref-resolve):
15092         * lisp/org/org-agenda.el (org-agenda-prepare):
15093         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
15094         (org-clock-resolve):
15095         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
15096         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
15097         * lisp/org/org-habit.el (org-habit-parse-todo):
15098         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
15099         (org-mouse-context-menu):
15100         * lisp/org/org-table.el (org-table-edit-formulas):
15101         * lisp/org/ox.el (org-export-async-start):
15102         * lisp/proced.el (proced-log):
15103         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
15104         (ada-check-matching-start, ada-goto-matching-start):
15105         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
15106         * lisp/progmodes/ada-xref.el (ada-find-executable):
15107         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
15108         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
15109         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
15110         (flymake-start-syntax-check-process):
15111         * lisp/progmodes/python.el (python-shell-get-process-or-error)
15112         (python-define-auxiliary-skeleton):
15113         * lisp/progmodes/sql.el (sql-comint):
15114         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
15115         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
15116         * lisp/recentf.el (recentf-open-files):
15117         * lisp/replace.el (query-replace-read-from)
15118         (occur-after-change-function, occur-1):
15119         * lisp/scroll-bar.el (scroll-bar-columns):
15120         * lisp/server.el (server-get-auth-key):
15121         * lisp/simple.el (execute-extended-command)
15122         (undo-outer-limit-truncate, list-processes--refresh)
15123         (compose-mail, set-variable, choose-completion-string)
15124         (define-alternatives):
15125         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
15126         (command-line-1):
15127         * lisp/subr.el (noreturn, define-error, add-to-list)
15128         (read-char-choice, version-to-list):
15129         * lisp/term/common-win.el (x-handle-xrm-switch)
15130         (x-handle-name-switch, x-handle-args):
15131         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
15132         * lisp/textmodes/reftex-ref.el (reftex-label):
15133         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
15134         * lisp/textmodes/two-column.el (2C-split):
15135         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
15136         (tutorial--find-changed-keys):
15137         * lisp/type-break.el (type-break-noninteractive-query):
15138         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
15139         (wdired-do-perm-changes):
15140         * lisp/whitespace.el (whitespace-report-region):
15141         Prefer grave quoting in source-code strings used to generate help
15142         and diagnostics.
15143         * lisp/faces.el (face-documentation):
15144         No need to convert quotes, since the result is a docstring.
15145         * lisp/info.el (Info-virtual-index-find-node)
15146         (Info-virtual-index, info-apropos):
15147         Simplify by generating only curved quotes, since info files are
15148         typically that ways nowadays anyway.
15149         * lisp/international/mule-diag.el (list-input-methods):
15150         Don’t assume text quoting style is curved.
15151         * lisp/org/org-bibtex.el (org-bibtex-fields):
15152         Revert my recent changes, going back to the old quoting style.
15154 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15156         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
15157         (package--autoloads-file-name)
15158         (package--activate-autoloads-and-load-path): New function.
15159         (package-activate-1): Delegate autoloading and load-path
15160         configuration to `package--activate-autoloads-and-load-path'.
15161         (package--compile): Before compilation, call
15162         `package--activate-autoloads-and-load-path' instead of
15163         `package-activate-1'.
15165 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
15167         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
15169 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
15171         Fix deletion of symlinks to directories on MS-Windows
15172         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
15173         symlink to a directory, try again with 'rmdir'.
15174         (is_symlink): If the argument is a symlink to a directory, set a
15175         bit in the return value to indicate that fact.
15177 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15179         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
15180         When `package-initialize' is called as part of loading the init file,
15181         the user probably doesn't want it to be called again afterwards.
15182         In this situation, `package-initialize' now sets
15183         `package-enable-at-startup' to nil to prevent that.  The user can have
15184         the old behavior by setting this variable to t after the call to
15185         `package-initialize'.  (Bug#21423)
15186         * doc/emacs/package.texi (Package Installation): Document it.
15187         * doc/lispref/package.texi (Packaging Basics): Document it.
15188         * etc/NEWS: Document it.
15190 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15192         Bump version of ntlm.el to 2.00
15193         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
15194         Add comm keyword.
15196 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
15198         * doc/misc/gnus.texi (Mail Source Specifiers):
15199         Allow :mailbox to be a list.
15201 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
15203         * lisp/progmodes/etags.el (etags-tags-completion-table):
15204         Allow even one non-regular character before the implicit tag name.
15205         Reported at http://emacs.stackexchange.com/questions/15269/.
15207 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15209         Add support for NTLMv2 authentication
15210         * lisp/net/ntlm.el (ntlm): New customization group.
15211         (ntlm-compatibility-level): New defcustom.
15212         (ntlm-compute-timestamp): New function.
15213         (ntlm-generate-nonce): Likewise.
15214         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
15216 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15218         * lisp/emacs-lisp/package.el: Rename custom faces.
15219         All of the recently introduced faces, like `package-name-face', have
15220         been renamed to no end in `-face' to comply with the convention
15221         described in (info "(elisp) Defining Faces").
15222         (package-name, package-description)
15223         (package-status-built-in, package-status-external)
15224         (package-status-available, package-status-new)
15225         (package-status-held, package-status-disabled)
15226         (package-status-installed, package-status-dependency)
15227         (package-status-unsigned, package-status-incompat)
15228         (package-status-avail-obso): New faces.
15229         (package-menu--print-info-simple): Use them.
15231 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
15233         mail-source.el: Make the imap mail-source's :mailbox handle a list
15234         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
15235         Allow :mailbox to be  a list.
15237 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
15239         nnimap.el: Handle nil arg to nnimap-request-group
15240         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
15241         This arg isn't always passed in, check it's not nil before making it
15242         into a list.  The active arg will also be nil if the group is new,
15243         check for that.
15245 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
15247         File notifications: Support renaming over directory boundaries
15248         * lisp/filenotify.el (file-notify-handle-event):
15249         (file-notify--pending-event): Adapt docstring.
15250         (file-notify--descriptor, file-notify-callback): Reimplement in
15251         order to support renaming over directory boundaries.
15252         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
15253         * doc/lispref/os.texi (File Notifications): Remove limitation of
15254         file renaming to the same directory.
15256 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
15258         Spelling fix (Bug#21420)
15260 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
15262         Improve the semantic of map-some
15263         Update map-some to return the returned by the predicate, similar to
15264         seq-some.
15265         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
15266           return value of the predicate.
15267         * test/automated/map-tests.el (test-map-some): Update the test to check
15268           for non-nil values only.
15270         Rename map-contains-key-p and map-some-p
15271         Remove the "-p" suffix from both function names.
15272         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
15273           Rename the functions.
15274         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
15275           Update both test functions.
15277         Improve the semantic of seq-some
15278         Update seq-some to return non-nil if the predicate returns non-nil for
15279         any element of the seq, in which case the returned value is the one
15280         returned by the predicate.
15281         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
15282           docstring.
15283         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
15284         * doc/lispref/sequences.texi (Sequence Functions): Update the
15285           documentation for seq-some.
15287         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
15288         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
15289           without the "-p" prefix.
15290         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
15291           the tests accordingly.
15292         * doc/lispref/sequences.texi (Sequence Functions): Update the
15293           documentation for seq.el.
15295 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
15297         text-quoting-style for usage of fn names with ‘’
15298         * lisp/help.el (help--docstring-quote): Don’t assume
15299         text-quoting-style is ‘curve’ when generating usage strings for
15300         functions whose names contain curved quotes.
15302 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
15304         Fix fix for describe-function keybinding confusion
15305         This fixes a bug introduced by the previous patch.
15306         * lisp/help-fns.el (help-fns--signature):
15307         Last arg of help-fns--signature is now a buffer, or nil if a
15308         raw signature is wanted.  All callers changed.
15309         (describe-function-1): Use this to do the right thing with signatures.
15311 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
15313         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
15315         Use PAT rather than UPAT in pcase macros
15316         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
15317         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
15318           than UPAT.
15320 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
15322         Fix describe-function keybinding confusion
15323         * lisp/help-fns.el (describe-function-1): Compute signature
15324         in the original buffer, not in standard-output, so that
15325         substitute-command-keys uses the proper keybindings.
15326         This fixes Bug#21412, introduced in commit
15327         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
15329 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
15331         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
15333 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
15335         Avoid read error messages from 'inotify'
15336         * src/process.c (wait_reading_process_output): Add a
15337         'tls_available' set and manipulate it instead of 'Available' when
15338         checking TLS inputs.  Assign the value to 'Available' only if we
15339         find any TLS data waiting to be read.  This avoids error messages
15340         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
15342 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
15344         Avoid errors in thing-at-point with 2nd argument non-nil
15345         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
15346         sequences.  (Bug#21391)
15348 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
15350         Fix segfaults due to using a stale face ID
15351         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
15352         (display_echo_area_1, redisplay_internal): Call it to avoid
15353         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
15354         faces, which could case a segfault if the frame's face cache was
15355         freed since the last redisplay.  (Bug#21394)
15356         * src/xfaces.c (free_realized_faces):
15357         Call forget_escape_and_glyphless_faces.
15358         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
15360 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
15362         Fix minor problems with " in manual
15364 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
15366         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
15367         multi-hop files.
15369 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
15371         Support automated ‘make check’ in non-C locale
15372         This lets the builder optionally test Emacs behavior in other locales.
15373         The C locale is still the default for tests.
15374         * test/automated/Makefile.in (TEST_LOCALE): New macro.
15375         (emacs): Use it.
15376         * test/automated/flymake-tests.el (flymake-tests--current-face):
15377         Use C locale for subprocesses so that tests behave as expected.
15378         * test/automated/python-tests.el:
15379         (python-shell-prompt-validate-regexps-1)
15380         (python-shell-prompt-validate-regexps-2)
15381         (python-shell-prompt-validate-regexps-3)
15382         (python-shell-prompt-validate-regexps-4)
15383         (python-shell-prompt-validate-regexps-5)
15384         (python-shell-prompt-validate-regexps-6)
15385         (python-shell-prompt-set-calculated-regexps-1):
15386         Adjust expected output to match locale.
15387         * test/automated/tildify-tests.el (tildify-test--test)
15388         (tildify-space-test--test, tildify-space-undo-test--test):
15389         This test assumes UTF-8 encoding.
15391 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
15393         Fix some more docstring etc. quoting problems
15394         Mostly these fixes prevent the transliteration of apostrophes
15395         that should stay apostrophes.  Also, prefer curved quotes in
15396         Bahá’í proper names, as that’s the preferred Bahá’í style and
15397         these names are chock-full of non-ASCII characters anyway.
15398         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
15399         (eieio-defclass-internal):
15400         * lisp/emacs-lisp/eieio.el (defclass):
15401         * lisp/hi-lock.el (hi-lock-mode):
15402         Don’t transliterate Lisp apostrophes when generating a
15403         doc string or diagnostic.
15404         * lisp/international/mule-diag.el (list-coding-systems-1):
15405         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
15406         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
15407         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
15408         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
15409         Substitute quotes before putting them in the help buffer.
15411 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
15413         Re-add the notion of echo_prompt lost in the translation
15414         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
15415         echo_prompt which contains the actual string.  Update all uses.
15416         * src/keyboard.c (kset_echo_prompt): New function.
15417         (echo_update): Add echo_prompt at the very beginning.
15418         (read_char): Remove workaround for bug#19875, not needed any more.
15419         (read_key_sequence): Set echo_prompt rather than echo_string
15420         (bug#21403).
15421         (mark_kboards): Mark echo_prompt.
15423         Fix disassembly of non-compiled lexical functions (bug#21377)
15424         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
15425         * lisp/emacs-lisp/disass.el: Use lexical-binding.
15426         (disassemble): Recognize `closure's as well.
15427         (disassemble-internal): Use indirect-function and
15428         help-function-arglist, and accept `closure's.
15429         (disassemble-internal): Use interactive-form.
15430         (disassemble-1): Use functionp.
15432         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
15433         Don't compose inside verbatim blocks!
15435 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
15437         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
15438         (bug#19441).
15440         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
15442 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
15444         vc-git-mode-line-string: Explicitly re-apply the face
15445         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
15446         the face (bug#21404).
15448 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
15450         Treat initial-scratch-message as a doc string
15451         * doc/emacs/building.texi (Lisp Interaction):
15452         * doc/lispref/os.texi (Startup Summary):
15453         * etc/NEWS: Document this.
15454         * lisp/startup.el (initial-scratch-message):
15455         Look up find-file’s key rather than hardcoding it.
15456         (command-line-1): Substitute the doc string.
15457         This also substitutes the quotes, which will help test display
15458         quoting at startup.
15460         Fix describe-char bug with glyphs on terminals
15461         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
15462         buffers too, so don’t treat them differently from graphic displays.
15463         Without this fix, describe-char would throw an error on a terminal
15464         if given a glyph with a non-default face.
15466         Follow text-quoting-style in display table init
15467         This attempts to fix a problem reported by Alan Mackenzie in:
15468         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
15469         * doc/lispref/display.texi (Active Display Table):
15470         Mention how text-quoting-style affects it.
15471         * doc/lispref/help.texi (Keys in Documentation):
15472         Say how to set text-quoting-style in ~/.emacs.
15473         * etc/NEWS: Document the change.
15474         * lisp/startup.el (startup--setup-quote-display):
15475         Follow user preference if text-quoting-style is set.
15476         (command-line): Setup quote display again if user expresses
15477         a preference in .emacs.
15479 2015-09-02  K. Handa  <handa@gnu.org>
15481         Fix typo
15482         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
15483         -> OTF_positioning_type_components_mask.
15485         Fix previous change
15486         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
15487         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
15489 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
15491         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
15492         Rename from vc-find-file-hook and make interactive.
15493         (vc-find-file-hook): Redefine as obsolete alias.
15495 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15497         Escape ` and ' in doc
15498         Escape apostrophes and grave accents in docstrings if they are
15499         are supposed to stand for themselves and are not quotes.  Remove
15500         apostrophes from docstring examples like ‘'(calendar-nth-named-day
15501         -1 0 10 year)’ that confuse source code with data.  Do some other
15502         minor docstring fixups as well, e.g., insert a missing close quote.
15504 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
15506         Generalize the prefix-command machinery of C-u
15507         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
15508         (prefix-command-preserve-state-hook): New hooks.
15509         (internal-echo-keystrokes-prefix): New function.
15510         (prefix-command--needs-update, prefix-command--last-echo): New vars.
15511         (prefix-command-update, prefix-command-preserve): New functions.
15512         (reset-this-command-lengths): New compatibility definition.
15513         (universal-argument--mode): Call prefix-command-update.
15514         (universal-argument, universal-argument-more, negative-argument)
15515         (digit-argument): Call prefix-command-preserve-state.
15516         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
15517         the "prefix argument" to echo.
15518         (this_command_key_count_reset, before_command_key_count)
15519         (before_command_echo_length): Delete variables.
15520         (echo_add_key): Always add a space.
15521         (echo_char): Remove.
15522         (echo_dash): Don't give up when this_command_key_count is 0, since that
15523         is now the case after a prefix command.
15524         (echo_update): New function, extracted from echo_now.
15525         (echo_now): Use it.
15526         (add_command_key, read_char, record_menu_key): Remove old disabled code.
15527         (command_loop_1): Don't refrain from pushing an undo boundary when
15528         prefix-arg is set.  Remove other prefix-arg special case, now handled
15529         directly in the prefix commands instead.  But call echo_now if there's
15530         a prefix state to echo.
15531         (read_char, record_menu_key): Use echo_update instead of echo_char.
15532         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
15533         (Freset_this_command_lengths): Delete function.
15534         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
15535         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
15536         * lisp/simple.el: Use those new hooks for C-u.
15537         (universal-argument--description): New function.
15538         (prefix-command-echo-keystrokes-functions): Use it.
15539         (universal-argument--preserve): New function.
15540         (prefix-command-preserve-state-hook): Use it.
15541         (command-execute): Call prefix-command-update if needed.
15542         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
15543         (kmacro-step-edit-prefix-index): Delete variables.
15544         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
15545         support for prefix arg commands.
15546         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
15547         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
15548         (cua--shift-control-prefix): Use prefix-command-preserve-state.
15549         Remove now unused arg `arg'.
15550         (cua--prefix-override-handler, cua--prefix-repeat-handler)
15551         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
15552         Update accordingly.
15553         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
15554         any more.
15555         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
15556         if the mark is not set.
15558 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15560         Rework quoting in Emacs Lisp Introduction
15561         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
15562         (if in more detail, type-of-animal in detail, else): Rework the
15563         early example to use " rather than ' so that we don’t burden
15564         complete novices with the low-priority detail of text quoting style.
15565         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
15566         (kill-new function, kill-ring-yank-pointer)
15567         (Complete forward-sentence, Loading Files)
15568         (Code for current-kill, Code for current-kill, yank):
15569         Resurrect the Emacs 22 versions of the code, which uses grave
15570         quoting style in doc strings.
15571         (Complete zap-to-char): Mention how quoting works in doc strings.
15573         Setup quote display only if interactive
15574         * lisp/startup.el (command-line):
15575         Skip call to startup--setup-quote-display if noninteractive.
15576         Without this change, python-shell-prompt-validate-regexps-1
15577         fails in test/automated/python-tests.el when run in an
15578         en_US.utf8 locale on Fedora.
15580 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
15582         Use defalias at the top level
15583         * lisp/gnus/gnus-util.el (gnus-format-message):
15584         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
15585         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
15587 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15589         terminal-init-w32console mimicks command-line
15590         Problem reported by Eli Zaretskii.
15591         * lisp/startup.el (startup--setup-quote-display):
15592         New function, refactored from a part of ‘command-line’.
15593         (command-line): Use it.
15594         * lisp/term/w32console.el (terminal-init-w32console):
15595         Use it, so that this function stays consistent with ‘command-line’.
15597         Display replacement quotes with shadow glyphs
15598         * lisp/startup.el (command-line): When displaying ASCII
15599         replacements for curved quotes, use a shadow glyph instead of a
15600         regular one, to avoid ambiguity.
15602 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
15604         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
15606 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15608         Docstring fixes re quotes in C code
15609         Fix some docstring quoting problems, mostly by escaping apostrophe.
15611 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
15613         Some Tramp password fixes
15614         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
15615         of the hops.
15616         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
15617         at the beginning of the command.  Otherwise, it could be
15618         interpreted as password prompt if the remote host echoes the
15619         command.
15620         (tramp-remote-coding-commands): Add "openssl enc -base64".
15622 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
15624         Make vc-git-working-revision always return the commit hash
15625         * lisp/vc/vc-git.el (vc-git-working-revision):
15626         Return the commit hash (bug#21383).
15627         (vc-git--symbolic-ref): New function, extracted from above.
15628         (vc-git-mode-line-string): Use it.
15630 2015-09-01  K. Handa  <handa@gnu.org>
15632         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
15633         * src/ftfont.c (MFLTGlyphFT): New type.
15634         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
15635         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
15636         elements in the array MFLTGlyphString.glyphs.
15638 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
15640         Improve comments in elisp-mode.el, elisp-mode-tests.el
15641         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
15643         Delete Emacs 25 test in mode-local.el
15644         * lisp/cedet/mode-local.el (describe-mode-local-overload):
15645         Fix missed an edit in previous commit.
15647         Show all known mode-local overrides in *Help*
15648         * lisp/cedet/mode-local.el (describe-mode-local-overload):
15649         Assume Emacs 25. Add all known mode-local overrides.
15651 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
15653         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
15654         Ensure that the article where the search word is found is displayed
15655         and pointed to in the summary buffer.
15657 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
15659         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
15660         When the region is active, but is empty (length 0), act as though
15661         the region was not active; that is, put a comment at the end of
15662         the line.  (Bug#21119)
15664 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
15666         Port tls.el to older Emacs
15667         * lisp/net/tls.el (tls-format-message):
15668         Alias to format-message, or format if not available.
15669         (open-tls-stream): Use it.
15671 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
15673         hideif.el: Recognize .h++ as C++ header
15674         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
15676         isearch: Document character folding mode
15677         * lisp/isearch.el (isearch-forward):
15678         Mention `isearch-toggle-character-fold' in doc string.
15680 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15682         Quoting fixes in ERC and Eshell
15683         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
15684         * lisp/erc/erc-backend.el (define-erc-response-handler):
15685         * lisp/erc/erc-fill.el (erc-fill-static-center):
15686         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
15687         * lisp/eshell/em-glob.el (eshell-glob-entries):
15688         * lisp/eshell/em-hist.el (eshell-save-some-history):
15689         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
15690         (eshell-shuffle-files):
15691         * lisp/eshell/esh-cmd.el (eshell-do-eval):
15692         * lisp/eshell/esh-proc.el (eshell-process-interact)
15693         (eshell-query-kill-processes):
15694         Respect ‘text-quoting-style’ in diagnostics and doc strings.
15696         Quoting fixes in Gnus
15697         * lisp/gnus/gnus-agent.el:
15698         (gnus-agent-possibly-synchronize-flags-server):
15699         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
15700         * lisp/gnus/gnus-eform.el (gnus-edit-form):
15701         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
15702         (gnus-group-nnimap-edit-acl):
15703         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
15704         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
15705         * lisp/gnus/message.el (message-strip-subject-encoded-words)
15706         (message-check-recipients, message-send-form-letter):
15707         * lisp/gnus/mm-decode.el (mm-display-part):
15708         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
15709         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
15710         (mml-smime-get-ldap-cert):
15711         * lisp/gnus/spam-report.el (spam-report-process-queue):
15712         Respect ‘text-quoting-style’ in diagnostics.
15713         * lisp/gnus/gnus-art.el (article-display-face)
15714         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
15715         Use straight quoting in email.
15716         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
15717         Escape apostrophes in doc strings.
15719         Quoting fixes in lisp mail, mh-e, net, url
15720         * lisp/mail/emacsbug.el (report-emacs-bug)
15721         (report-emacs-bug-hook): Use straight quotes in outgoing email,
15722         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
15723         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
15724         * lisp/mail/rmailout.el (rmail-output-read-file-name):
15725         * lisp/net/imap.el (imap-interactive-login):
15726         * lisp/net/tls.el (open-tls-stream):
15727         * lisp/url/url-auth.el (url-register-auth-scheme):
15728         Respect ‘text-quoting-style’ in diagnostics.
15729         * lisp/mh-e/mh-e.el (mh-sortm-args):
15730         Quote docstring example using text quotes, not as a Lisp quote.
15732 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
15734         Fix some byte-compiler warnings in EDE
15735         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
15736         existing autoloader list, rather than add to it.
15737         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
15738         argument to eieio class constructor.
15739         (ede-show-supported-projects): New.
15740         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
15741         with (oref ... name).
15742         (ede-auto-load-project): Use slot name, not initarg key.
15743         * lisp/cedet/ede/generic.el (ede-generic-load)
15744         (ede-generic-find-matching-target): Use slot name, not initarg key.
15745         (ede-find-target): Use oref-default on class name.
15746         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
15747         class constructor.
15748         (ede-enable-generic-projects): Make project type names unique.
15750 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
15752         Fix directory accessibility tests for w32 network volumes
15753         * src/w32.c (faccessat): Don't fail with network volumes without a
15754         share.
15755         (w32_accessible_directory_p): Handle network volumes without a
15756         share.
15758         Fix handling long file names in readdir on MS-Windows
15759         * src/w32.c (sys_readdir): Append "\*" to the directory after
15760         converting it to UTF-16/ANSI, not before, to avoid overflowing the
15761         260-character limit on file names in filename_to_utf16/ansi.
15763         Make file-accessible-directory-p reliable on MS-Windows
15764         * src/w32.c (w32_accessible_directory_p): New function.
15765         * src/w32.h (w32_accessible_directory_p): Add prototype.
15766         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
15767         w32_accessible_directory_p to test a directory for accessibility
15768         by the current user.  (Bug#21346)
15769         (Ffile_accessible_directory_p): Remove the w32 specific caveat
15770         from the doc string.
15772 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
15774         Don't call do_pending_window_change in signal handlers (Bug#21380)
15775         * src/gtkutil.c (xg_frame_resized):
15776         * src/xterm.c (x_set_window_size):
15777         * src/w32term.c (x_set_window_size): Don't call
15778         do_pending_window_change.
15780 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15782         Quoting fixes in lisp/org
15783         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
15784         (org-tags-view):
15785         * lisp/org/org-capture.el (org-capture-mode)
15786         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
15787         (org-ctags-ask-append-topic):
15788         * lisp/org/org.el (org-time-string-to-time)
15789         (org-time-string-to-absolute):
15790         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
15791         (org-ctags-ask-append-topic):
15792         * lisp/org/org.el (org-time-string-to-time)
15793         (org-time-string-to-absolute):
15794         Respect ‘text-quoting-style’ in diagnostics.
15795         * lisp/org/org-agenda.el (org-agenda-custom-commands)
15796         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
15797         * lisp/org/org-capture.el (org-capture-fill-template):
15798         Avoid contraction in output file that might be ASCII.
15799         * lisp/org/org-compat.el (format-message):
15800         Define if not already defined, for backward compatibility.
15801         * lisp/org/org-src.el (org-edit-src-save):
15802         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
15803         Escape apostrophes in diagnostics.
15805         Treat “instead” strings as docstrings
15806         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
15807         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
15808         Substitute quotes in instead strings.
15810 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
15812         Better documentation of seq-let
15813         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
15814         documentation of seq-let.
15816 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15818         * lisp/international/ccl.el: Fix quoting.
15820         Quoting fixes in lisp/international and lisp/leim
15821         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
15822         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
15823         * lisp/international/mule-cmds.el:
15824         (select-safe-coding-system-interactively, leim-list-file-name):
15825         * lisp/international/quail.el (quail-use-package, quail-help):
15826         * lisp/international/titdic-cnv.el (tit-process-header)
15827         (miscdic-convert):
15828         Respect text quoting style in doc strings and diagnostics.
15829         * lisp/international/quail.el (lisp/international/quail.el):
15830         * lisp/leim/quail/ethiopic.el ("ethiopic"):
15831         Escape apostrophes in doc strings.
15833         Make ‘text-quoting-style’ a plain defvar
15834         It doesn’t need customization, as it’s likely useful only by experts.
15835         Suggested by Stefan Monnier in:
15836         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
15837         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
15839         Quoting fixes in lisp/textmodes
15840         * lisp/textmodes/bibtex.el (bibtex-validate)
15841         (bibtex-validate-globally, bibtex-search-entries):
15842         * lisp/textmodes/ispell.el (ispell-command-loop):
15843         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
15844         * lisp/textmodes/texinfmt.el (texinfmt-version)
15845         (texinfo-format-region, texinfo-format-buffer-1):
15846         * lisp/textmodes/two-column.el (2C-split):
15847         Respect text quoting style in doc strings and diagnostics.
15848         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
15849         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
15850         Escape apostrophes in doc strings.
15852         Documentation fixes re quotes
15853         Prefer curved quotes in examples if users will typically see
15854         curved quotes when the examples run.
15855         Mention format-message when appropriate.
15856         Don’t use @code in examples.
15857         Quote an apostrophe with @kbd.
15859         Quoting fixes in lisp/progmodes
15860         * lisp/progmodes/cc-engine.el (c-bos-report-error):
15861         * lisp/progmodes/cpp.el (cpp-edit-reset):
15862         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
15863         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
15864         (etags-tags-apropos, list-tags, tags-apropos):
15865         * lisp/progmodes/executable.el (executable-set-magic):
15866         * lisp/progmodes/octave.el (octave-sync-function-file-names)
15867         (octave-help, octave-find-definition-default-filename)
15868         (octave-find-definition):
15869         Respect text quoting style in doc strings and diagnostics.
15870         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
15871         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
15872         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
15873         Escape apostrophes in doc strings.
15874         * lisp/progmodes/cmacexp.el (c-macro-expansion):
15875         Use straight quoting in ASCII comment.
15876         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
15877         (idlwave-pad-keyword):
15878         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
15879         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
15880         (vhdl-electric-semicolon, vhdl-electric-comma)
15881         (vhdl-electric-period, vhdl-electric-equal):
15882         Use directed quotes in diagnostics and doc strings.
15884 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
15886         Minor documentation and NEWS tweak
15887         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
15888         Add an index entry.
15889         * etc/NEWS: Fix a typo in character-fold-to-regexp.
15891 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
15893         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
15894         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
15895         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
15896         Adapt test.
15898 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
15900         Text quoting fixes in cedet, emulation, emacs-lisp
15901         * lisp/cedet/ede.el (ede-check-project-directory):
15902         * lisp/cedet/semantic/analyze/debug.el
15903         (semantic-analyzer-debug-insert-include-summary):
15904         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
15905         * lisp/cedet/semantic/decorate/include.el
15906         (semantic-decoration-unknown-include-describe)
15907         (semantic-decoration-all-include-summary):
15908         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
15909         * lisp/emulation/edt.el (edt-load-keys):
15910         * lisp/emulation/viper-cmd.el
15911         (viper-display-current-destructive-command)
15912         (viper-query-replace, viper-brac-function):
15913         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
15914         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
15915         Respect text quoting style in doc string or diagnostic.
15916         * lisp/cedet/mode-local.el (describe-mode-local-overload):
15917         Use format-message to avoid overtranslating quotes.
15918         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
15919         Escape an apostrophe in a docstring.
15920         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
15922 2015-08-29  Daniel Colascione  <dancol@dancol.org>
15924         Fix which-func for curly quotes: look for symbol, not message
15925         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
15926         imenu-unavailable error symbol instead of trying to match message
15927         exactly.
15928         * lisp/imenu.el (imenu-unavailable): New error.
15929         (imenu-unavailable-error): New function.
15931 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
15933         Fix Python tests on MS-Windows
15934         * test/automated/python-tests.el
15935         (python-shell-calculate-command-1): Run python-shell-interpreter
15936         through shell-quote-argument before comparing with what
15937         python-shell-calculate-command returns.
15938         (python-shell-calculate-pythonpath-1)
15939         (python-shell-calculate-pythonpath-2)
15940         (python-shell-calculate-process-environment-2): Use path-separator
15941         instead of a literal ':'.
15942         (python-shell-calculate-exec-path-2)
15943         (python-shell-calculate-exec-path-3)
15944         (python-shell-calculate-exec-path-4)
15945         (python-shell-with-environment-1)
15946         (python-shell-with-environment-2): Run "/env/bin" through
15947         expand-file-name before comparing with exec-path.  (Bug#21375)
15949 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15951         Use Core Text types/functions/variables/enumerators directly
15952         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
15953         (CharacterCollection): Remove typedefs.  All uses replaced with
15954         definitions.
15955         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
15956         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
15957         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
15958         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
15959         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
15960         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
15961         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
15962         definitions.
15963         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
15964         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
15965         (MAC_FONT_FORMAT_BITMAP)
15966         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
15967         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
15968         All uses replaced with definitions.
15969         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
15970         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
15971         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
15972         Add compatibility enumerators for older versions.
15973         (mac_font_descriptor_create_with_attributes)
15974         (mac_font_descriptor_create_matching_font_descriptors)
15975         (mac_font_descriptor_create_matching_font_descriptor)
15976         (mac_font_descriptor_copy_attribute)
15977         (mac_font_descriptor_supports_languages)
15978         (mac_font_create_with_name, mac_font_get_size)
15979         (mac_font_copy_family_name, mac_font_copy_character_set)
15980         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
15981         (mac_font_get_descent, mac_font_get_leading)
15982         (mac_font_get_underline_position)
15983         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
15984         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
15985         replaced with definitions.
15986         (mac_font_create_preferred_family_for_attributes)
15987         (mac_font_get_advance_width_for_glyph)
15988         (mac_font_get_bounding_rect_for_glyph)
15989         (mac_font_create_available_families, mac_font_shape):
15990         Remove macros for renamed functions.
15991         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
15992         * src/macfont.m (mac_font_descriptor_supports_languages):
15993         Rename from mac_ctfont_descriptor_supports_languages.
15994         (mac_font_create_preferred_family_for_attributes): Rename from
15995         mac_ctfont_create_preferred_family_for_attributes.
15996         (mac_font_get_advance_width_for_glyph): Rename from
15997         mac_ctfont_get_advance_width_for_glyph.
15998         Use kCTFontOrientationDefault also for older versions.
15999         (mac_font_get_bounding_rect_for_glyph): Rename from
16000         mac_ctfont_get_bounding_rect_for_glyph.
16001         Use kCTFontOrientationDefault also for older versions.
16002         (mac_font_create_available_families): Rename from
16003         mac_ctfont_create_available_families.
16004         (mac_font_equal_in_postscript_name): Rename from
16005         mac_ctfont_equal_in_postscript_name.  All uses changed.
16006         (mac_font_create_line_with_string_and_font): Rename from
16007         mac_ctfont_create_line_with_string_and_font.  All uses changed.
16008         (mac_font_shape): Rename from mac_ctfont_shape.
16009         (mac_font_family_compare): Remove unused declaration.
16011 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16013         Fix minor text quoting in calc, calendar, vc
16014         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
16015         * lisp/calc/calc-help.el (calc-j-prefix-help):
16016         * lisp/calc/calc-misc.el (calc-help):
16017         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
16018         Escape an apostrophe in a docstring.
16019         * lisp/calc/calc-forms.el (calc-hms-notation):
16020         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
16021         Escape an apostrophe in a diagnostic.
16022         * lisp/calc/calc-misc.el (calc-help):
16023         * lisp/calendar/diary-lib.el (diary-include-files):
16024         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
16025         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
16026         * lisp/vc/ediff-diff.el (ediff-same-contents):
16027         * lisp/vc/ediff-merg.el (ediff-re-merge):
16028         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
16029         * lisp/vc/ediff-util.el (ediff-test-save-region)
16030         (ediff-status-info):
16031         * lisp/vc/ediff.el (ediff-merge-revisions)
16032         (ediff-merge-revisions-with-ancestor):
16033         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
16034         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
16035         Respect text quoting style in doc string or diagnostic.
16036         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
16037         * lisp/vc/add-log.el (change-log-goto-source):
16038         Avoid double-formatting.
16039         * lisp/vc/ediff-init.el (format-message):
16040         New backward-compatibility alias.
16042 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16044         Fix minor text quoting problems in lisp top level
16045         * lisp/apropos.el (apropos-describe-plist):
16046         * lisp/cus-theme.el (customize-themes):
16047         * lisp/dired.el (dired-log):
16048         * lisp/help-fns.el (describe-variable):
16049         * lisp/hexl.el (hexl-insert-multibyte-char):
16050         * lisp/info.el (Info-finder-find-node):
16051         * lisp/json.el (json-read-string):
16052         * lisp/novice.el (disabled-command-function)
16053         (disabled-command-function):
16054         * lisp/startup.el (normal-mouse-startup-screen):
16055         * lisp/woman.el (WoMan-log, WoMan-warn):
16056         Respect text quoting style in doc string or diagnostic.
16057         * lisp/replace.el (replace-character-fold):
16058         * src/syntax.c (Fmodify_syntax_entry):
16059         Escape an apostrophe in a docstring.
16060         * lisp/tempo.el (tempo-define-template):
16061         Remove confusing apostrophe from docstring.
16062         * lisp/whitespace.el (whitespace-mark-x):
16063         Use directed quotes in docstring.
16065 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
16067         Fix indentation rule in css-mode
16068         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
16069         brackets in presence of pseudo-selectors.  (Bug#21328)
16071 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
16073         Fix a bug in recording a macro while flyspell-mode is active
16074         * lisp/subr.el (sit-for): Don't call read-event when recording a
16075         macro.  (Bug#21329)
16077 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
16079         Tweak startup screen quoting
16080         * lisp/startup.el (normal-splash-screen): Use standard
16081         "M-" abbrevation rather than a confusingly-different one.
16082         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
16084 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
16086         Add test case for ‘format’ bug and refactor
16087         * src/editfns.c (styled_format): Refactor internally, mostly by
16088         moving declarations closer to uses.  This should not affect behavior.
16089         * test/automated/textprop-tests.el (textprop-tests-format): New test.
16091         Fix ‘format’ bug with property offsets
16092         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
16093         bug in calculating string property offsets (Bug#21351).
16095         Use straight quotes in lib-src diagnostics
16096         These auxiliary programs can’t use Emacs’s text-quoting-style,
16097         and it’s too much trouble to redo that mechanism by hand.
16098         So just use straight quotes for now.
16099         * lib-src/ebrowse.c (main):
16100         * lib-src/emacsclient.c (decode_options, main):
16101         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
16102         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
16103         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
16104         (none_help, print_language_names, print_help, add_regex)
16105         (suggest_asking_for_help):
16106         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
16107         Use straight quotes in diagnostics.
16109         ‘text-quoting-style’ fixes for admin
16110         * admin/admin.el (cusver-scan, cusver-check):
16111         * admin/authors.el (authors-canonical-file-name):
16112         * admin/bzrmerge.el (bzrmerge-missing):
16113         Respect ‘text-quoting-style’ in diagnostics.
16115 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
16117         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
16118         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
16119         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
16120         * doc/lispref/internals.texi (Writing Emacs Primitives):
16121         * etc/NEWS:
16122         Document the change.
16123         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
16124         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
16125         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
16126         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
16127         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
16128         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
16129         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
16130         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
16131         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
16132         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
16133         Remove.  All uses removed.  The code now assumes
16134         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
16135         * src/bytecode.c (relocate_byte_stack):
16136         Rename from unmark_byte_stack, since it now only relocates.
16137         All callers changed.
16138         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
16139         with GCPROs removed.
16140         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
16141         * test/automated/finalizer-tests.el (finalizer-basic)
16142         (finalizer-circular-reference, finalizer-cross-reference)
16143         (finalizer-error):
16144         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
16145         Remove tests, as they depend on gc-precise.
16147 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
16149         Improve seq-concatenate for new sequence types
16150         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
16151         ensure that concatenation happens on sequences only.  This makes it
16152         possible to use `seq-concatenate' for new types of seqs.
16153         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
16154         New function used in `seq-concatenate'.
16155         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
16156         for seq-into-sequence.
16158 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
16160         Add mode local overrides to xref-find-definitions
16161         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
16162         (xref-mode-local-overload): New; add mode local overrides to
16163         xref-find-definitions.
16164         * test/automated/elisp-mode-tests.el: Add mode local override tests.
16165         (xref-elisp-test-run): Handle indented defuns.
16166         (xref-elisp-generic-*): Improve doc strings.
16167         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
16168         (elisp--xref-find-definitions): Use it.
16170         Add mode local overrides to describe-function
16171         * lisp/cedet/mode-local.el (describe-mode-local-overload):
16172         New; add mode local overrides to describe-function.
16173         * etc/NEWS: Document change.
16175 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
16177         Prefer straight quoting in some etc text files
16178         These files are plain text and might be used by non-Emacs apps.
16179         They’re mostly ASCII, so just use straight quotes.
16181         Fix quoting in ‘message_with_string’
16182         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
16183         should work now.
16184         * src/xdisp.c (message_to_stderr): New function, refactored from
16185         part of ‘message3_nolog’.
16186         (message3_nolog): Use it.
16187         (message_with_string): Use it.  Don’t mishandle NUL bytes when
16188         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
16189         Use ‘format-message’, not ‘format’, so that quotes are translated.
16191 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
16193         Mention false positives of file-accessible-directory on w32
16194         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
16195         (Bug#21346)
16197 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
16199         Treat error strings as help
16200         * src/print.c (print_error_message): Translate quotes and command
16201         keys in errmsg so that users see, e.g., "Symbol’s value as
16202         variable is void: foo" when text-quoting-style is curved.
16204 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
16206         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
16208 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
16210         Top-level elisp files respect ‘text-quoting-style’
16211         In top-level elisp files, use format-message in diagnostic formats,
16212         so that they follow user preference as per ‘text-quoting-style’
16213         rather than being hard-coded to quote `like this'.
16214         * lisp/allout.el (allout-get-configvar-values):
16215         * lisp/apropos.el (apropos-symbols-internal):
16216         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
16217         (dired-do-create-files-regexp, dired-create-files-non-directory):
16218         * lisp/dired-x.el (dired-do-run-mail):
16219         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
16220         * lisp/disp-table.el (standard-display-european):
16221         * lisp/find-dired.el (find-dired):
16222         * lisp/forms.el (forms-mode):
16223         * lisp/ido.el (ido-buffer-internal):
16224         * lisp/info.el (Info-index-next):
16225         * lisp/outline.el (outline-invent-heading):
16226         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
16227         * lisp/proced.el (proced-log):
16228         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
16229         * lisp/recentf.el (recentf-open-files, recentf-save-list):
16230         * lisp/savehist.el (savehist-save):
16231         * lisp/server.el (server-ensure-safe-dir):
16232         * lisp/ses.el (ses-rename-cell):
16233         * lisp/simple.el (list-processes--refresh):
16234         * lisp/startup.el (command-line):
16235         * lisp/strokes.el (strokes-unset-last-stroke)
16236         (strokes-execute-stroke):
16237         Use format-message so that quotes are restyled.
16238         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
16239         Don’t quote ‘raised’.
16240         * lisp/descr-text.el (describe-char):
16241         * lisp/dirtrack.el (dirtrack-debug-message):
16242         * lisp/hexl.el (hexl-insert-multibyte-char):
16243         Apply substitute-command-keys to help string.
16244         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
16245         (wdired-do-perm-changes):
16246         Let dired-log do the formatting.
16248 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
16250         Go back to grave quoting in Tramp
16251         * lisp/net/tramp-adb.el:
16252         * lisp/net/tramp-cache.el:
16253         * lisp/net/tramp-compat.el:
16254         * lisp/net/tramp-gvfs.el:
16255         * lisp/net/tramp-gw.el:
16256         * lisp/net/tramp-sh.el:
16257         * lisp/net/tramp-smb.el:
16258         * lisp/net/tramp.el:
16259         Stick with grave quoting in diagnostics strings.  This is more
16260         portable to older Emacs, desirable for Tramp.
16261         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
16262         for diagnostic that needs requoting.
16263         * lisp/net/tramp-compat.el (format-message):
16264         Fall back on simple ‘format’, since that’s good enough now.
16266         Go back to grave quoting in Gnus
16267         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
16268         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
16269         (gnus-agent-fetch-headers):
16270         * lisp/gnus/gnus-int.el (gnus-start-news-server):
16271         * lisp/gnus/gnus-registry.el:
16272         (gnus-registry--split-fancy-with-parent-internal)
16273         (gnus-registry-post-process-groups):
16274         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
16275         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
16276         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
16277         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
16278         * lisp/gnus/spam.el (spam-check-blackholes):
16279         Stick with grave quoting in diagnostics strings.  This is more
16280         portable to older Emacs, desirable for Gnus.
16282         Fix customization of text-quoting-style
16283         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
16284         * lisp/wid-edit.el (widget-docstring):
16285         Get raw docstring here since it’s cooked later and should not be
16286         cooked twice.
16287         * lisp/cus-edit.el (custom-group-value-create):
16288         Cook the docstring before inserting it.
16289         * lisp/cus-start.el (text-quoting-style): Quote the customization
16290         docstrings according to the new rules.  Give curved examples.
16292         format-message now curves ` and '
16293         That way, the caller doesn’t have to use curved quotes to
16294         get diagnostics that match the text-quoting-style preferences.
16295         Suggested by Dmitry Gutov in:
16296         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
16297         This means we no longer need %qs, so remove that format.
16298         While we’re at it, fix an unlikely bug and lessen the pressure
16299         on the garbage collector by processing the string once rather
16300         than twice in the usual case.
16301         * doc/lispref/strings.texi (Formatting Strings):
16302         * etc/NEWS: Document this.
16303         * lisp/subr.el (format-message): Remove; now done in C.
16304         * src/callint.c (Fcall_interactively):
16305         * src/editfns.c (Fmessage, Fmessage_box):
16306         Use Fformat_message instead of Finternal__text_restyle
16307         followed by Fformat.
16308         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
16309         uLSQM and uRSQM.
16310         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
16311         when pure ASCII now suffices.  Fix unlikely bug when parsing
16312         unibyte string containing non-ASCII bytes.  Use inline code
16313         rather than memcpy, as it’s a tiny number of bytes.
16314         (Finternal__text_restyle): Remove; no longer used.
16315         (syms_of_doc): Don’t declare it.
16316         * src/editfns.c (Fformat): Rewrite in terms of new function
16317         ‘styled_format’.
16318         (Fformat_message): New function, moved here from subr.el.
16319         (styled_format): New function, with the old guts of Fformat,
16320         except it now optionally transliterates quotes, and it transliterates
16321         traditional grave accent and apostrophe quoting as well.
16322         Remove recently-added q flag; no longer needed or used.
16323         (syms_of_editfns): Define format-message.
16324         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
16325         Remove; no longer need to be global symbols.
16326         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
16327         so that callers can use `%s'.
16328         * src/image.c (image_size_error, xbm_load_image, xbm_load)
16329         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
16330         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
16331         (svg_load_image, gs_load, x_kill_gs_process):
16332         * src/lread.c (load_warn_old_style_backquotes):
16333         * src/xfaces.c (load_pixmap):
16334         * src/xselect.c (x_clipboard_manager_error_1):
16335         Use `%s' instead of %qs in formats.
16337 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
16339         Minor fixes in doc/emacs/search.texi
16340         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
16341         (Special Isearch): Use @w{} to generate several consecutive spaces
16342         with Texinfo 6.  (Bug#21345)
16344 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
16346         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
16347         (tramp-awk-coding-test): New defconsts.
16348         (tramp-remote-coding-commands): Use them.
16349         (tramp-find-inline-encoding): Check for Perl only if necessary.
16351 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
16353         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
16354         index entries for the special form `quote'.
16356 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
16358         Spelling fixes
16360         Gnus format-message typo fix
16361         * lisp/gnus/gnus-util.el (gnus-format-message):
16362         Fix typo when running in older Emacs.
16364         Prefer directed to neutral quotes in docstings and diagnostics.
16365         In docstrings, escape apostrophes that would otherwise be translated
16366         to curved quotes using the newer, simpler rules.
16367         * admin/unidata/unidata-gen.el (unidata-gen-table):
16368         * lisp/align.el (align-region):
16369         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
16370         * lisp/bookmark.el (bookmark-default-annotation-text):
16371         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
16372         * lisp/calc/calc-lang.el (math-read-giac-subscr)
16373         (math-read-math-subscr):
16374         * lisp/calc/calc-misc.el (report-calc-bug):
16375         * lisp/calc/calc-prog.el (calc-fix-token-name)
16376         (calc-read-parse-table-part):
16377         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
16378         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
16379         * lisp/dabbrev.el (dabbrev-expand):
16380         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
16381         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
16382         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
16383         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
16384         * lisp/erc/erc-button.el (erc-nick-popup):
16385         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
16386         * lisp/eshell/em-dirs.el (eshell/cd):
16387         * lisp/eshell/em-glob.el (eshell-glob-regexp):
16388         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
16389         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
16390         * lisp/eshell/esh-opt.el (eshell-show-usage):
16391         * lisp/files-x.el (modify-file-local-variable):
16392         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
16393         (filesets-update-pre010505):
16394         * lisp/find-cmd.el (find-generic, find-to-string):
16395         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
16396         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
16397         (gnus-agent-fetch-headers):
16398         * lisp/gnus/gnus-int.el (gnus-start-news-server):
16399         * lisp/gnus/gnus-registry.el:
16400         (gnus-registry--split-fancy-with-parent-internal):
16401         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
16402         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
16403         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
16404         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
16405         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
16406         * lisp/gnus/spam.el (spam-check-blackholes):
16407         * lisp/mail/feedmail.el (feedmail-run-the-queue):
16408         * lisp/mpc.el (mpc-playlist-rename):
16409         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
16410         * lisp/net/mairix.el (mairix-widget-create-query):
16411         * lisp/net/tramp-cache.el:
16412         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
16413         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
16414         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
16415         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
16416         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
16417         (org-babel-goto-named-result):
16418         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
16419         * lisp/org/ob-ref.el (org-babel-ref-resolve):
16420         * lisp/org/org-agenda.el (org-agenda-prepare):
16421         * lisp/org/org-bibtex.el (org-bibtex-fields):
16422         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
16423         (org-clock-resolve):
16424         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
16425         * lisp/org/org-habit.el (org-habit-parse-todo):
16426         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
16427         (org-mouse-context-menu):
16428         * lisp/org/org-table.el (org-table-edit-formulas):
16429         * lisp/org/ox.el (org-export-async-start):
16430         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
16431         (dun-rooms, dun-endgame-questions):
16432         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
16433         * lisp/progmodes/ada-xref.el (ada-find-executable):
16434         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
16435         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
16436         (flymake-start-syntax-check-process):
16437         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
16438         * lisp/progmodes/sql.el (sql-comint):
16439         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
16440         * lisp/server.el (server-get-auth-key):
16441         * lisp/subr.el (version-to-list):
16442         * lisp/textmodes/reftex-ref.el (reftex-label):
16443         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
16444         * lisp/vc/ediff-diff.el (ediff-same-contents):
16445         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
16446         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
16447         Use directed rather than neutral quotes in diagnostics.
16449         Treat ' like ’ even when not matching `
16450         This is simpler and easier to explain, and should encourage better
16451         typography.  Do this in Electric Quote mode and when translating
16452         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
16453         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
16454         * doc/emacs/text.texi (Quotation Marks):
16455         * doc/lispref/help.texi (Keys in Documentation):
16456         * etc/NEWS:
16457         Document this.
16458         * lisp/electric.el (electric-quote-post-self-insert-function):
16459         * src/doc.c (Fsubstitute_command_keys):
16460         Always treat ' like ’ even when not matched by an open quote.
16462 2015-08-25  Glenn Morris  <rgm@gnu.org>
16464         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
16465         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
16467 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16469         * src/macfont.m (macfont_create_family_with_symbol):
16470         Accept localized names.
16472 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
16474         Tramp diagnostics as per ‘text-quoting-style’
16475         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
16476         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
16477         (tramp-adb-handle-delete-directory)
16478         (tramp-adb-handle-delete-file)
16479         (tramp-adb-handle-file-local-copy)
16480         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
16481         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
16482         (tramp-adb-maybe-open-connection):
16483         * lisp/net/tramp-cache.el:
16484         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
16485         (tramp-compat-octal-to-decimal)
16486         (tramp-compat-coding-system-change-eol-conversion):
16487         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
16488         (tramp-gvfs-do-copy-or-rename-file)
16489         (tramp-gvfs-handle-delete-directory)
16490         (tramp-gvfs-handle-delete-file)
16491         (tramp-gvfs-handle-expand-file-name)
16492         (tramp-gvfs-handle-file-local-copy)
16493         (tramp-gvfs-handle-file-notify-add-watch)
16494         (tramp-gvfs-handle-make-directory)
16495         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
16496         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
16497         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
16498         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
16499         (tramp-sh-handle-set-visited-file-modtime)
16500         (tramp-sh-handle-set-file-modes)
16501         (tramp-sh-handle-file-name-all-completions)
16502         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
16503         (tramp-do-copy-or-rename-file-directly)
16504         (tramp-do-copy-or-rename-file-out-of-band)
16505         (tramp-sh-handle-make-directory)
16506         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
16507         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
16508         (tramp-sh-handle-start-file-process)
16509         (tramp-sh-handle-file-local-copy)
16510         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
16511         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
16512         (tramp-find-file-exists-command, tramp-open-shell)
16513         (tramp-find-shell)
16514         (tramp-open-connection-setup-interactive-shell)
16515         (tramp-find-inline-encoding, tramp-find-inline-compress)
16516         (tramp-compute-multi-hops, tramp-maybe-open-connection)
16517         (tramp-wait-for-output, tramp-send-command-and-check)
16518         (tramp-send-command-and-read, tramp-get-remote-path)
16519         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
16520         (tramp-get-ls-command-with-quoting-style)
16521         (tramp-get-test-command, tramp-get-remote-ln)
16522         (tramp-get-remote-perl, tramp-get-remote-stat)
16523         (tramp-get-remote-readlink, tramp-get-remote-trash)
16524         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
16525         (tramp-get-remote-inotifywait, tramp-get-remote-id)
16526         (tramp-get-remote-python):
16527         * lisp/net/tramp-smb.el (tramp-smb-errors)
16528         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
16529         (tramp-smb-handle-delete-directory)
16530         (tramp-smb-handle-delete-file)
16531         (tramp-smb-handle-file-local-copy)
16532         (tramp-smb-handle-make-directory)
16533         (tramp-smb-handle-make-directory-internal)
16534         (tramp-smb-handle-make-symbolic-link)
16535         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
16536         (tramp-smb-handle-set-file-modes)
16537         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
16538         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
16539         (tramp-process-actions):
16540         Generate diagnostics according to ‘text-quoting-style’, by
16541         using curved quotes in format strings and ‘format-message’
16542         when appropriate.
16543         * lisp/net/tramp-compat.el (format-message):
16544         Define a replacement, if it’s an older version of Emacs
16545         that doesn’t have it already.
16547         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
16549 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
16551         Fix documentation for `save-excursion'
16552         * doc/lispref/positions.texi (Excursions):
16553         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
16554         (Template for save-excursion, Point and mark): `save-excursion'
16555         does not save&restore the mark any more.
16557 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
16559         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
16560         New defconsts.
16561         (tramp-do-file-attributes-with-stat)
16562         (tramp-do-directory-files-and-attributes-with-stat): Use them.
16563         (tramp-convert-file-attributes): Remove double slashes in symlinks.
16564         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
16565         Handle symlinks with "//" in the file name.
16567         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
16569 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
16571         Fix cl-subseq and cl-concatenate
16572         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
16573         seq functions.
16574         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
16575         seq-concatenate.
16577 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
16579         Fix full-screen code when there is no window manager (Bug#21317)
16580         * src/xterm.h (x_wm_supports): Declare external.
16581         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
16582         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
16583         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
16584         `fullscreen' frame parameter.
16585         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
16586         without a window manager.
16588 2015-08-24  Glenn Morris  <rgm@gnu.org>
16590         * lisp/version.el (emacs-version): No longer include build host.
16591         * doc/lispref/intro.texi (Version Info): Update example.
16593 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
16595         * doc/lispref/elisp.texi: Fix typo in previous change.
16597         More-conservative ‘format’ quote restyling
16598         Instead of restyling curved quotes for every call to ‘format’,
16599         create a new function ‘format-message’ that does the restyling,
16600         and using the new function instead of ‘format’ only in contexts
16601         where this seems appropriate.
16602         Problem reported by Dmitry Gutov and Andreas Schwab in:
16603         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
16604         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
16605         * doc/lispref/commands.texi (Using Interactive):
16606         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
16607         * doc/lispref/display.texi (Displaying Messages, Progress):
16608         * doc/lispref/elisp.texi:
16609         * doc/lispref/help.texi (Keys in Documentation):
16610         * doc/lispref/minibuf.texi (Minibuffer Misc):
16611         * doc/lispref/strings.texi (Formatting Strings):
16612         * etc/NEWS:
16613         Document the changes.
16614         * lisp/abbrev.el (expand-region-abbrevs):
16615         * lisp/apropos.el (apropos-library):
16616         * lisp/calc/calc-ext.el (calc-record-message)
16617         (calc-user-function-list):
16618         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
16619         * lisp/calc/calc-lang.el (math-read-big-balance):
16620         * lisp/calc/calc-store.el (calc-edit-variable):
16621         * lisp/calc/calc-units.el (math-build-units-table-buffer):
16622         * lisp/calc/calc-yank.el (calc-edit-mode):
16623         * lisp/calendar/icalendar.el (icalendar-export-region)
16624         (icalendar--add-diary-entry):
16625         * lisp/cedet/mode-local.el (mode-local-print-binding)
16626         (mode-local-describe-bindings-2):
16627         * lisp/cedet/semantic/complete.el (semantic-completion-message):
16628         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
16629         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
16630         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
16631         * lisp/descr-text.el (describe-text-properties-1, describe-char):
16632         * lisp/dframe.el (dframe-message):
16633         * lisp/dired-aux.el (dired-query):
16634         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
16635         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
16636         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
16637         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
16638         (cconv-analyze-form):
16639         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
16640         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
16641         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
16642         * lisp/emacs-lisp/edebug.el (edebug-format):
16643         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
16644         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
16645         (eldoc-message):
16646         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
16647         * lisp/emacs-lisp/find-func.el (find-function-library):
16648         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
16649         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
16650         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
16651         * lisp/emacs-lisp/package.el (package-compute-transaction)
16652         (package-install-button-action, package-delete-button-action)
16653         (package-menu--list-to-prompt):
16654         * lisp/emacs-lisp/timer.el (timer-event-handler):
16655         * lisp/emacs-lisp/warnings.el (lwarn, warn):
16656         * lisp/emulation/viper-cmd.el:
16657         (viper-toggle-parse-sexp-ignore-comments)
16658         (viper-kill-buffer, viper-brac-function):
16659         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
16660         * lisp/facemenu.el (facemenu-add-new-face):
16661         * lisp/faces.el (face-documentation, read-face-name)
16662         (face-read-string, read-face-font, describe-face):
16663         * lisp/files.el (find-alternate-file, hack-local-variables)
16664         (hack-one-local-variable--obsolete, write-file)
16665         (basic-save-buffer, delete-directory):
16666         * lisp/format.el (format-write-file, format-find-file)
16667         (format-insert-file):
16668         * lisp/help-fns.el (help-fns--key-bindings)
16669         (help-fns--compiler-macro, help-fns--obsolete)
16670         (help-fns--interactive-only, describe-function-1)
16671         (describe-variable):
16672         * lisp/help.el (describe-mode):
16673         * lisp/info-xref.el (info-xref-output):
16674         * lisp/info.el (Info-virtual-index-find-node)
16675         (Info-virtual-index, info-apropos):
16676         * lisp/international/kkc.el (kkc-error):
16677         * lisp/international/mule-cmds.el:
16678         (select-safe-coding-system-interactively)
16679         (select-safe-coding-system, describe-input-method):
16680         * lisp/international/mule-conf.el (code-offset):
16681         * lisp/international/mule-diag.el (describe-character-set)
16682         (list-input-methods-1):
16683         * lisp/international/quail.el (quail-error):
16684         * lisp/minibuffer.el (minibuffer-message):
16685         * lisp/mpc.el (mpc--debug):
16686         * lisp/msb.el (msb--choose-menu):
16687         * lisp/net/ange-ftp.el (ange-ftp-message):
16688         * lisp/net/gnutls.el (gnutls-message-maybe):
16689         * lisp/net/newst-backend.el (newsticker--sentinel-work):
16690         * lisp/net/newst-treeview.el (newsticker--treeview-load):
16691         * lisp/net/nsm.el (nsm-query-user):
16692         * lisp/net/rlogin.el (rlogin):
16693         * lisp/net/soap-client.el (soap-warning):
16694         * lisp/net/tramp.el (tramp-debug-message):
16695         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
16696         * lisp/nxml/nxml-parse.el (nxml-parse-error):
16697         * lisp/nxml/rng-cmpct.el (rng-c-error):
16698         * lisp/nxml/rng-match.el (rng-compile-error):
16699         * lisp/nxml/rng-uri.el (rng-uri-error):
16700         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
16701         * lisp/org/org-ctags.el:
16702         (org-ctags-ask-rebuild-tags-file-then-find-tag):
16703         * lisp/proced.el (proced-log):
16704         * lisp/progmodes/ebnf2ps.el (ebnf-log):
16705         * lisp/progmodes/flymake.el (flymake-log):
16706         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
16707         * lisp/replace.el (occur-1):
16708         * lisp/simple.el (execute-extended-command)
16709         (undo-outer-limit-truncate, define-alternatives):
16710         * lisp/startup.el (command-line):
16711         * lisp/subr.el (error, user-error, add-to-list):
16712         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
16713         (tutorial--find-changed-keys):
16714         * src/callint.c (Fcall_interactively):
16715         * src/editfns.c (Fmessage, Fmessage_box):
16716         Restyle the quotes of format strings intended for use as a
16717         diagnostic, when restyling seems appropriate.
16718         * lisp/subr.el (format-message): New function.
16719         * src/doc.c (Finternal__text_restyle): New function.
16720         (syms_of_doc): Define it.
16722 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
16724         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
16726 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16728         python.el: Fix python-shell-buffer-substring on indented code
16729         (Bug#21086)
16730         * lisp/progmodes/python.el (python-shell-buffer-substring):
16731         Respect current line indentation when calculating string.
16732         * test/automated/python-tests.el
16733         (python-shell-buffer-substring-10)
16734         (python-shell-buffer-substring-11)
16735         (python-shell-buffer-substring-12): New tests.
16737 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
16739         Fix minor glitches from ‘format’ reversion
16740         * doc/lispref/strings.texi (Formatting Strings):
16741         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
16742         Documentation’, not below.
16743         * src/syntax.c (Finternal_describe_syntax_value):
16744         Prefer AUTO_STRING to build_string where either will do, as
16745         AUTO_STRING is a bit faster.
16747 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16749         python.el: Defer shell setup code until first interactive prompt
16750         * lisp/progmodes/python.el
16751         (python-shell-comint-watch-for-first-prompt-output-filter):
16752         New function.
16753         (inferior-python-mode): Use it.
16754         (python-shell-first-prompt-hook): New hook.
16755         (python-shell-send-setup-code)
16756         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
16757         this hook instead of inferior-python-hook.
16759 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
16761         Remove the calls to `seq-into` from `seq-concatenate`
16762         Since most new types of seq would have to be defined as sequences (cons
16763         cells or CL structs, mostly), there is no need to convert the seqs to
16764         sequences (which can be a fairly expensive operation).
16765         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
16766         sequences.
16768 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16770         python.el: Fix completion for pdb interactions
16771         * lisp/progmodes/python.el (python-shell-completion-setup-code):
16772         Simplify.  Toggle print_mode for native wrapped completer.
16773         (python-shell-completion-native-setup): Ensure process buffer.
16774         Add print_mode attribute to completer wrapper to toggle returning
16775         or printing candidates.
16776         (python-shell-completion-native-get-completions): Cleanup.
16777         (python-shell-completion-get-completions): Cleanup.
16778         (python-shell-completion-at-point): Perform prompt checks.
16779         Force fallback completion in pdb interactions.
16781 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
16783         Make seq.el more extensible by using cl-defmethod
16784         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
16785         make it easier to extend seq.el with new "seq types".
16786         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
16787         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
16788         subseq in cl-extra.el, and use it in seq.el.
16790 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16792         python.el: Fix prompt detection with user overridden interpreter
16793         * lisp/progmodes/python.el (python-shell-prompt-detect):
16794         Honor buffer local python-shell-interpreter and
16795         python-shell-interpreter-interactive-arg.
16797 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
16799         Support exec-directory with non-ASCII characters on Windows
16800         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
16801         in the system's ANSI codepage, when it is used for invoking
16802         cmdproxy.
16804 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
16806         Revert "Extend ‘format’ to translate curved quotes"
16807         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
16809         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
16810         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
16812 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
16814         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
16815         Clarify "invisible window".
16817 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
16819         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
16820         magic-fallback-mode-alist.
16822 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16824         python.el: fallback completion, ffap and eldoc setup enhancements
16825         Setup codes are now sent continuously so that the current frame is
16826         always taken into account.  This allows working within debuggers
16827         and always keeping a fresh version of setup codes that will return
16828         proper results.
16829         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
16830         (python-shell-send-setup-code): Send code only when
16831         python-shell-setup-codes is non-nil.
16832         (python-shell-completion-string-code): Cleanup trailing newline.
16833         (python-shell-completion-get-completions): Always use
16834         python-shell-completion-setup-code.
16835         (python-ffap-setup-code): Work with any object, not only modules.
16836         (python-ffap-string-code): Cleanup trailing newline.
16837         (python-ffap-module-path): Always use python-ffap-setup-code.
16838         (python-eldoc-string-code): Cleanup trailing newline.
16839         (python-eldoc--get-doc-at-point): Always use
16840         python-eldoc-setup-code.  Return non-nil only if docstring is
16841         found.
16843         python.el: Increase native completion robustness
16844         * lisp/progmodes/python.el (python-shell-completion-native-setup):
16845         Make completer print real candidates and just return dummy ones to
16846         avoid input modification.
16847         (python-shell-completion-native-get-completions): Set
16848         comint-redirect-insert-matching-regexp to non-nil and make
16849         comint-redirect-finished-regexp match the last dummy candidate.
16850         Use python-shell-accept-process-output to wait for the full list
16851         of candidates.
16853 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
16855         Fix invocation of programs via cmdproxy.exe
16856         * src/w32proc.c (sys_spawnve): Use exec-directory, not
16857         invocation-directory, for finding cmdproxy.exe.  When Emacs is
16858         run from the source tree, look for cmdproxy.exe in the same source
16859         tree.  (Bug#21323)
16861 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
16863         Handle comments inside unquoted URIs in css-mode
16864         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
16865         (css-syntax-propertize-function): New defconst.
16866         (css--font-lock-keywords): Handle parens around unquoted URIs.
16867         (css-mode): Set `syntax-propertize-function'.
16869 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
16871         Support invocation of Hunspell with multiple dictionaries
16872         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
16873         Support lists of dictionaries of the form "DICT1,DICT2,...".
16874         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
16876         Minor formatting changes in ispell.el
16877         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
16878         (ispell-print-if-debug, ispell-aspell-find-dictionary)
16879         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
16880         (ispell-hunspell-dictionary-alist)
16881         (ispell-hunspell-fill-dictionary-entry)
16882         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
16883         (ispell-buffer-with-debug, ispell-complete-word)
16884         (ispell-current-dictionary, ispell-current-personal-dictionary)
16885         (ispell-accept-output, ispell-minor-mode)
16886         (ispell-personal-dictionary, ispell-dictionary-alist)
16887         (ispell-really-aspell, ispell-really-hunspell)
16888         (ispell-encoding8-command, ispell-aspell-supports-utf8)
16889         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
16890         Fix whitespace, inconsistent capitalization, and arguments in doc
16891         strings.
16893 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
16895         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
16896         function refused to resize a size-preserved window.
16898 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
16900         * doc/lispref/windows.texi (Selecting Windows): Improve
16901         documentation and indexing of 'window-use-time'.
16903 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
16905         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
16906         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
16907         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
16908         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
16909         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
16910         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
16911         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
16912         Fix up commenting style.
16914 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16916         text-quoting-style in emacs-lisp diagnostics
16917         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
16918         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
16919         (ad-disable-advice, ad-remove-advice, ad-set-argument)
16920         (ad-set-arguments):
16921         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
16922         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
16923         (byte-optimize-while, byte-optimize-apply):
16924         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
16925         (byte-compile-log-file, byte-compile-format-warn)
16926         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
16927         (byte-compile-cl-warn)
16928         (byte-compile-warn-about-unresolved-functions)
16929         (byte-compile-file, byte-compile-fix-header)
16930         (byte-compile--declare-var, byte-compile-file-form-defmumble)
16931         (byte-compile-form, byte-compile-normal-call)
16932         (byte-compile-variable-ref, byte-compile-variable-set)
16933         (byte-compile-subr-wrong-args, byte-compile-setq-default)
16934         (byte-compile-negation-optimizer)
16935         (byte-compile-condition-case--old)
16936         (byte-compile-condition-case--new, byte-compile-save-excursion)
16937         (byte-compile-defvar, byte-compile-autoload)
16938         (byte-compile-lambda-form)
16939         (byte-compile-make-variable-buffer-local, display-call-tree)
16940         (batch-byte-compile):
16941         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
16942         (cconv-analyze-form):
16943         * lisp/emacs-lisp/chart.el (chart-space-usage):
16944         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
16945         (check-declare-warn, check-declare-file)
16946         (check-declare-directory):
16947         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
16948         (checkdoc-message-text-engine):
16949         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
16950         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
16951         (cl-symbol-macrolet):
16952         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
16953         * lisp/emacs-lisp/copyright.el (copyright)
16954         (copyright-update-directory):
16955         * lisp/emacs-lisp/edebug.el (edebug-read-list):
16956         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
16957         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
16958         (eieio-oref, eieio-oset-default):
16959         * lisp/emacs-lisp/eieio-speedbar.el:
16960         (eieio-speedbar-child-make-tag-lines)
16961         (eieio-speedbar-child-description):
16962         * lisp/emacs-lisp/eieio.el (defclass, change-class):
16963         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
16964         (elint-init-form, elint-check-defalias-form)
16965         (elint-check-let-form):
16966         * lisp/emacs-lisp/ert.el (ert-get-test):
16967         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
16968         (find-function-library):
16969         * lisp/emacs-lisp/generator.el (iter-yield):
16970         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
16971         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
16972         * lisp/emacs-lisp/package-x.el (package-upload-file):
16973         * lisp/emacs-lisp/package.el (package-version-join)
16974         (package-disabled-p, package-activate-1, package-activate)
16975         (package--download-one-archive)
16976         (package--download-and-read-archives)
16977         (package-compute-transaction, package-install-from-archive)
16978         (package-install, package-install-selected-packages)
16979         (package-delete, package-autoremove)
16980         (package-install-button-action, package-delete-button-action)
16981         (package-menu-hide-package, package-menu--list-to-prompt)
16982         (package-menu--perform-transaction)
16983         (package-menu--find-and-notify-upgrades):
16984         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
16985         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
16986         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
16987         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
16988         * lisp/emacs-lisp/smie.el (smie-config-save):
16989         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
16990         * lisp/emacs-lisp/testcover.el (testcover-1value):
16991         Use curved quotes in diagnostic format strings.
16993 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16995         python.el: Ensure remote process-environment on non-interactive processes
16996         * lisp/progmodes/python.el
16997         (python-shell-tramp-refresh-process-environment): New function.
16998         (python-shell-with-environment): Use it.
16999         * test/automated/python-tests.el (python-shell-with-environment-2):
17000         Update.
17002         python.el: Enhancements to process environment setup.
17003         * lisp/progmodes/python.el (python-shell-process-environment)
17004         (python-shell-extra-pythonpaths, python-shell-exec-path)
17005         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
17006         (python-shell-setup-codes): Remove :safe.
17007         (python-shell-remote-exec-path): New defcustom.
17008         (python-shell--add-to-path-with-priority): New macro.
17009         (python-shell-calculate-pythonpath): Give priority to
17010         python-shell-extra-pythonpaths.  Update docstring.
17011         (python-shell-calculate-process-environment): Give priority to
17012         python-shell-process-environment.  Update docstring.
17013         (python-shell-calculate-exec-path): Give priority to
17014         python-shell-exec-path and calculated virtualenv bin directory.
17015         Update docstring.
17016         (python-shell-tramp-refresh-remote-path): New function.
17017         (python-shell-with-environment): Use it when working remotely and
17018         do not modify tramp-remote-path.  Allow nesting.
17019         (python-shell-calculate-command): Remove useless
17020         python-shell-with-environment call.
17021         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
17022         (python-shell-calculate-pythonpath-2)
17023         (python-shell-calculate-process-environment-6)
17024         (python-shell-calculate-process-environment-7)
17025         (python-shell-calculate-process-environment-8)
17026         (python-shell-calculate-exec-path-3)
17027         (python-shell-calculate-exec-path-4)
17028         (python-shell-calculate-exec-path-5)
17029         (python-shell-calculate-exec-path-6)
17030         (python-shell-with-environment-3): New tests.
17031         (python-shell-calculate-process-environment-2)
17032         (python-shell-calculate-process-environment-3)
17033         (python-shell-calculate-process-environment-4)
17034         (python-shell-calculate-process-environment-5)
17035         (python-shell-calculate-exec-path-1)
17036         (python-shell-calculate-exec-path-2)
17037         (python-shell-with-environment-1)
17038         (python-shell-with-environment-2): Update and simplify.
17040 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17042         Avoid hard-coding "M-x command" in docstrings
17043         * lisp/calendar/todo-mode.el (todo-mode):
17044         * lisp/desktop.el (desktop-save-mode):
17045         * lisp/edmacro.el (edit-kbd-macro):
17046         * lisp/emacs-lisp/package.el (package-menu-execute):
17047         * lisp/emulation/viper-cmd.el (viper-ask-level):
17048         * lisp/emulation/viper-init.el (viper-expert-level):
17049         * lisp/filesets.el (filesets-add-buffer):
17050         * lisp/follow.el (follow-mode):
17051         * lisp/gnus/auth-source.el (auth-sources):
17052         * lisp/international/ogonek.el (ogonek-informacja)
17053         (ogonek-information):
17054         * lisp/net/tramp.el (tramp-process-actions):
17055         * lisp/org/org-gnus.el (org-gnus-no-new-news):
17056         * lisp/org/org.el (org-ellipsis):
17057         * lisp/progmodes/python.el (python-shell-get-process-or-error):
17058         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
17059         * lisp/server.el (server-start):
17060         * lisp/type-break.el (type-break-noninteractive-query):
17061         * lisp/userlock.el (ask-user-about-supersession-help):
17062         * lisp/whitespace.el (whitespace-report-region):
17063         Prefer (substitute-command-keys "`\\[foo-command]'")
17064         to "`M-x foo-command'" in docstrings and the like.
17066 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
17068         Use add-function for prettify-symbols-compose-predicate
17069         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
17070         prettify-symbols-compose-predicate in terms of add-function.
17071         * etc/NEWS: Mention prettify-symbols-compose-predicate and
17072         prettify-symbols-mode support in tex-mode.
17074 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
17076         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
17077         (smie-indent-exps, smie-indent-keyword): Use it.
17078         * test/indent/css-mode.css: Test alignment with leading comment.
17080 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17082         Respect text-quoting-style in (*Finder*) menus
17083         * lisp/info.el (info--prettify-description):
17084         Treat description as a docstring, so that it's requoted as
17085         per text-quoting-style.
17087 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
17089         Document `window-use-time' in Elisp manual
17090         * doc/lispref/windows.texi (Selecting Windows): Document
17091         `window-use-time'.
17093 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
17095         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
17096         This is a cleaner fix for Bug#21260 than the previous change.
17098 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17100         Respect text-quoting-style in calc
17101         In calc, tespect text-quoting-style preference in diagnostic
17102         formats and fix a few similar problems in docstrings.
17103         * lisp/calc/calc-aent.el (math-read-factor):
17104         * lisp/calc/calc-embed.el (calc-do-embedded):
17105         * lisp/calc/calc-ext.el (calc-user-function-list)
17106         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
17107         * lisp/calc/calc-help.el (calc-describe-key)
17108         (calc-describe-thing):
17109         * lisp/calc/calc-lang.el (calc-c-language)
17110         (math-parse-fortran-vector-end, math-parse-tex-sum)
17111         (math-parse-eqn-matrix, math-parse-eqn-prime)
17112         (calc-yacas-language, calc-maxima-language, calc-giac-language)
17113         (math-read-big-rec, math-read-big-balance):
17114         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
17115         (calc-auto-recompute):
17116         * lisp/calc/calc-prog.el (calc-user-define-invocation)
17117         (math-do-arg-check):
17118         * lisp/calc/calc-store.el (calc-edit-variable):
17119         * lisp/calc/calc-units.el (math-build-units-table-buffer):
17120         * lisp/calc/calc-vec.el (math-read-brackets):
17121         * lisp/calc/calc-yank.el (calc-edit-mode):
17122         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
17123         Use curved quotes in diagnostic format strings.
17124         * lisp/calc/calc-help.el (calc-describe-thing):
17125         Format docstrings with substitute-command-keys.
17126         * lisp/calc/calc-help.el (calc-j-prefix-help):
17127         * lisp/calc/calc-misc.el (calc-help):
17128         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
17129         Escape a docstring "`".
17131 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
17133         Fix documentation of 'menu-set-font' and 'set-frame-font'
17134         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
17135         * doc/lispref/frames.texi (Frame Font): Document that
17136         set-frame-font with the last argument 't' will also make the font
17137         the default for the future GUI frames.
17139         Document '--create-frame' option to emacsclient
17140         * doc/emacs/misc.texi (emacsclient Options): Document the
17141         '--create-frame' option.  (Bug#21308)
17143 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
17145         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
17147 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
17149         Document 'get-mru-window' in the ELisp manual
17150         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
17151         'get-mru-window'.  (Bug#21306)
17153         Clarify documentation of 'get-buffer-window-list'
17154         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
17155         current window, if relevant, will be the first in the list
17156         returned by 'get-buffer-window-list'.
17157         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
17159 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
17161         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
17162         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
17163         `switch-to-buffer'.
17165 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
17167         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
17168         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
17169         `display-buffer' instead of `switch-to-buffer'.
17171 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17173         Follow user preference in calendar diagnostics
17174         Respect text-quoting-style preference in diagnostic formats by
17175         using curved quotes (which are translated as per text-quoting-style)
17176         instead of grave accent and apostrophe (which are not).
17177         * lisp/calendar/appt.el (appt-display-message):
17178         * lisp/calendar/diary-lib.el (diary-check-diary-file)
17179         (diary-mail-entries, diary-from-outlook):
17180         * lisp/calendar/icalendar.el (icalendar-export-region)
17181         (icalendar--convert-float-to-ical)
17182         (icalendar--convert-date-to-ical)
17183         (icalendar--convert-ical-to-diary)
17184         (icalendar--convert-recurring-to-diary)
17185         (icalendar--add-diary-entry):
17186         * lisp/calendar/time-date.el (format-seconds):
17187         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
17188         (timeclock-make-hours-explicit):
17189         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
17190         (todo-item-mark, todo-check-format)
17191         (todo-insert-item--next-param, todo-edit-item--next-key)
17192         (todo-mode):
17193         Use curved quotes in diagnostic format strings.
17194         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
17195         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
17196         Just use straight quoting for simple test case.
17198 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
17200         * src/gfilenotify.c (Fgfile_add_watch):
17201         Handle errors from g_file_monitor.
17203 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
17205         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
17206         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
17207         frame" instead of "non-minibuffer frame".
17209         Fix frame geometry related text
17210         * doc/lispref/frames.texi (Frame Layout):
17211         Rename `x-frame-geometry' to `frame-geometry'.
17212         * doc/lispref/frames.texi (Mouse Position):
17213         * doc/lispref/windows.texi (Coordinates and Windows):
17214         Use `set-mouse-absolute-pixel-position' instead of
17215         `x-set-mouse-absolute-pixel-position'.
17217         Sanitize frame geometry related functions
17218         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
17219         (Fx_frame_edges): Rename to Fns_frame_edges.
17220         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
17221         (Fx_frame_edges): Rename to Fw32_frame_edges.
17222         (Fx_mouse_absolute_pixel_position): Rename to
17223         Fw32_mouse_absolute_pixel_position.
17224         (Fx_set_mouse_absolute_pixel_position): Rename to
17225         Fw32_set_mouse_absolute_pixel_position.
17226         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
17227         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
17228         (ns-frame-edges, w32-mouse-absolute-pixel-position)
17229         (x-mouse-absolute-pixel-position)
17230         (w32-set-mouse-absolute-pixel-position)
17231         (x-set-mouse-absolute-pixel-position): Declare.
17232         (frame-geometry, mouse-absolute-pixel-position)
17233         (set-mouse-absolute-pixel-position): New functions.
17234         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
17236 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
17238         Fix MinGW64 build broken by latest w32uniscribe.c changes
17239         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
17240         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17241         (Bug#21260)
17243 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
17245         Add TeX defaults for prettify-symbol-mode
17246         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
17247         Rename from tex-prettify-symbols-alist.
17248         (tex--prettify-symbols-compose-p): New function.
17249         (tex-common-initialization): Use them as prettify-symbols-alist
17250         and prettify-symbols-compose-predicate.
17252         Generalize prettify-symbols to arbitrary modes
17253         * lisp/progmodes/prog-mode.el
17254         (prettify-symbols-default-compose-p): New function.
17255         (prettify-symbols-compose-predicate): New variable.
17256         (prettify-symbols--compose-symbol): Use it.
17258 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
17260         Don't quote symbols 'like-this' in docstrings etc.
17261         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
17262         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
17263         * lisp/allout.el (allout-add-resumptions, allout-mode):
17264         * lisp/calculator.el (calculator-operators):
17265         * lisp/cedet/data-debug.el (dd-propertize):
17266         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
17267         * lisp/cedet/semantic/analyze/debug.el:
17268         (semantic-analyzer-debug-global-miss-text):
17269         * lisp/cedet/semantic/lex-spp.el:
17270         (semantic-lex-spp-replace-or-symbol-or-keyword):
17271         * lisp/cedet/semantic/symref.el:
17272         (semantic-symref-cleanup-recent-buffers-fcn):
17273         * lisp/cedet/semantic/tag.el (semantic-tag-class):
17274         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
17275         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
17276         * lisp/gnus/pop3.el (pop3-authentication-scheme):
17277         * lisp/help-fns.el (describe-function-orig-buffer):
17278         * lisp/imenu.el (imenu--history-list):
17279         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
17280         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
17281         (feedmail-queue-default-file-slug)
17282         (feedmail-queue-buffer-file-name):
17283         * lisp/net/mairix.el (mairix-searches-mode-map):
17284         * lisp/net/newst-backend.el (newsticker-retrieval-method)
17285         (newsticker-auto-mark-filter-list):
17286         * lisp/obsolete/vi.el (vi-mode):
17287         * lisp/progmodes/cc-engine.el (c-literal-type):
17288         * lisp/progmodes/cpp.el (cpp-face):
17289         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
17290         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
17291         * lisp/progmodes/pascal.el (pascal-auto-lineup):
17292         * lisp/progmodes/prog-mode.el (prog-widen):
17293         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
17294         (verilog-auto-lineup, verilog-auto-reset-widths)
17295         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
17296         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
17297         (flyspell-maybe-correct-doubling):
17298         * lisp/textmodes/table.el (table-justify, table-justify-cell)
17299         (table-justify-row, table-justify-column, table-insert-sequence)
17300         (table--justify-cell-contents):
17301         * lisp/url/url-auth.el (url-get-authentication):
17302         * lisp/window.el (display-buffer-record-window):
17303         * lisp/xml.el (xml-parse-file, xml-parse-region):
17304         * src/gfilenotify.c (Fgfile_add_watch):
17305         Don't quote symbols with apostrophes in doc strings.
17306         Use asymmetric quotes instead.
17307         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
17308         Likewise for symbol in diagnostic.
17309         * lisp/image.el (image-extension-data):
17310         * lisp/register.el (frame-configuration-to-register):
17311         * src/buffer.c (syms_of_buffer):
17312         Remove bogus apostrophes after symbols.
17313         * lisp/thumbs.el (thumbs-conversion-program):
17314         Quote Lisp string values using double-quotes, not apostrophes.
17316 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
17318         Describe frame geometry and related functions in Elisp manual
17319         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
17320         (Showing Images): Update references.
17321         * doc/lispref/elisp.texi (Top): Update node listing.
17322         * doc/lispref/frames.texi (Frame Geometry): New node.
17323         Move `Size and Position' section here.
17324         (Size Parameters): Update references.
17325         (Mouse Position): Update references and nomenclature.
17326         Describe new functions `x-mouse-absolute-pixel-position' and
17327         `x-set-mouse-absolute-pixel-position'.
17328         * doc/lispref/windows.texi (Window Sizes): Update references.
17329         (Resizing Windows): Update references.  Move description of
17330         `fit-frame-to-buffer' here.
17331         (Coordinates and Windows): Update nomenclature and references.
17332         Describe new arguments of `window-edges'.  Comment out
17333         descriptions of `window-left-column', `window-top-line',
17334         `window-pixel-left' and `window-pixel-top'.  Describe
17335         `window-absolute-pixel-position'.
17337 2015-08-20  Alan Mackenzie  <acm@muc.de>
17339         Handling of `c-parse-state'.  Fix low level bug.
17340         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
17341         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
17343 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
17345         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
17346         window instead of deleting it.
17348 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
17350         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
17351         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
17352         determine whether frame has a titlebar.
17353         Suggested by Eli Zaretskii <eliz@gnu.org>
17355 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
17357         Add a prettify-symbols-alist for (La)TeX
17358         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
17359         New variable holding an alist suitable as prettify-symbols-alist in
17360         (La)TeX modes.
17362 2015-08-19  Alan Mackenzie  <acm@muc.de>
17364         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
17365         Fixes debbugs#21275.
17366         In Emacs >= 25, let electric-pair-mode take precedence over
17367         delete-selection-mode.
17368         * lisp/delsel.el (delete-selection-uses-region-p): New function,
17369         previously a lambda expression in a property value for
17370         `self-insert-command'.
17371         (top-level): Set the `delete-selection' property of
17372         `self-insert-command' to `delete-selection-uses-region-p'.
17373         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
17374         property for c-electric-\(brace\|paren\) the value
17375         `delete-selection-uses-region-p' when the latter function exists.
17377 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
17379         Fix key binding quoting in tutorial *Help*
17380         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
17381         When generating help for custom key bindings, use the user-preferred
17382         quoting style rather than hardcoding the grave style.
17384 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
17386         Improve and future-proof OTF fonts support in w32uniscribe.c
17387         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
17388         about the expected results and why the new Uniscribe APIs are not
17389         used in this function.
17390         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
17391         (ScriptGetFontFeatureTags_Proc): New function typedefs.
17392         (uniscribe_new_apis): New static variable.
17393         (uniscribe_check_features): New function, implements OTF features
17394         verification while correctly accounting for features in the list
17395         after the nil member, if any.
17396         (uniscribe_check_otf_1): New function, retrieves the features
17397         supported by the font for the requested script and language using
17398         the Uniscribe APIs available from Windows Vista onwards.
17399         (uniscribe_check_otf): If the new Uniscribe APIs are available,
17400         use them in preference to reading the font data directly.  Call
17401         uniscribe_check_features to verify that the requested features are
17402         supported, replacing the original incomplete code.
17403         (syms_of_w32uniscribe): Initialize function pointers for the new
17404         Uniscribe APIs.  (Bug#21260)
17405         (otf_features): Scan the script, langsys, and feature arrays back
17406         to front, so that the result we return has them in alphabetical
17407         order, like ftfont.c does.
17408         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
17409         New variable for debugging w32uniscribe.c code.
17411 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
17413         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
17414         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
17415         clause of `isearch-search-fun-default'.  That lax variable does not
17416         refer to lax-whitespacing.  Related to (bug#21777).
17417         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
17418         * lisp/character-fold.el (character-fold-search): Set to nil.
17419         Default to nil for now, until someone implements proper
17420         lax-whitespacing with char-fold searching.
17422 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
17424         Fix doc-string of `help-mode-finish'.
17425         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
17427         In nsimage.m include coding.h (Bug#21292)
17428         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
17430         Move window edge functions to Elisp.
17431         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
17432         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
17433         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
17434         Move to window.el.
17435         (calc_absolute_offset): Remove.
17436         * lisp/frame.el (frame-edges): New function.
17437         * lisp/window.el (window-edges, window-pixel-edges)
17438         (window-absolute-pixel-edges): Move here from window.c.
17439         (window-body-edges, window-body-pixel-edges)
17440         (window-absolute-body-pixel-edges): Move here from window.c and
17441         rename "inside" to "body".  Keep old names as aliases.
17442         (window-absolute-pixel-position): New function.
17444 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
17446         [Gnus]: Use overlay functions directly
17447         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
17448         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
17449         (gnus-article-highlight-signature, gnus-article-extend-url-button)
17450         (gnus-article-add-button, gnus-insert-prev-page-button)
17451         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
17452         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
17453         (gnus-cite-add-face):
17454         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
17455         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
17456         (gnus-tree-recenter, gnus-highlight-selected-tree):
17457         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
17458         (gnus-summary-show-thread, gnus-summary-hide-thread)
17459         (gnus-highlight-selected-summary):
17460         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
17461         * lisp/gnus/message.el (message-fix-before-sending)
17462         (message-toggle-image-thumbnails):
17463         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
17464         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
17465         Use overlay functions directly instead of using gnus-overlay-*,
17466         message-overlay-*, and sieve-overlay-*.
17467         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
17468         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
17469         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
17470         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
17471         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
17472         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
17473         (message-overlay-get, message-overlay-put, message-overlays-in):
17474         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
17475         (sieve-overlays-at): Remove.
17477 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
17479         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
17480         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
17481         builds can use the declaration from the system headers.
17482         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
17483         definition of TITLEBAR_INFO.
17484         Suggested by Eli Zaretskii  <eliz@gnu.org>
17486 2015-08-19  Glenn Morris  <rgm@gnu.org>
17488         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
17490 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
17492         Use new q ‘format’ flag when fixing quotes in C
17493         * src/image.c (image_size_error): New function.  All uses of
17494         image_error with "Invalid image size ..."  changed to use it.
17495         * src/image.c (image_size_error, xbm_load_image, xbm_load)
17496         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
17497         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
17498         (imagemagick_load, svg_load, svg_load_image, gs_load)
17499         (x_kill_gs_process):
17500         * src/lread.c (load_warn_old_style_backquotes):
17501         * src/xfaces.c (load_pixmap):
17502         * src/xselect.c (x_clipboard_manager_error_1):
17503         Use %qs, not uLSQM and uRSQM.
17504         * src/syntax.c (Finternal_describe_syntax_value):
17505         Prefer Fsubstitute_command_keys to Fformat, as this lets
17506         us use AUTO_STRING.
17507         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
17508         as it's now guaranteed to be ASCII.
17509         * src/xselect.c (x_clipboard_manager_error_2):
17510         Avoid grave accent in low-level stderr diagnostic.
17512 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
17514         New q flag for ‘format’
17515         * doc/lispref/processes.texi (Sentinels):
17516         Don't hardwire grave quoting style in example.
17517         * doc/lispref/strings.texi (Formatting Strings):
17518         * etc/NEWS:
17519         Document new q flag.
17520         * src/editfns.c (Fformat): Implement it.
17522 2015-08-18  Daiki Ueno  <ueno@gnu.org>
17524         pinentry.el: Add debugging support
17525         * lisp/net/pinentry.el (pinentry-debug): New variable.
17526         (pinentry-debug-buffer): New variable.
17527         (pinentry--process-filter): Send input to the debug buffer, if
17528         `pinentry-debug' is set.
17530         pinentry.el: Improve multiline prompt
17531         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
17532         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
17533         command.
17535 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
17537         Fix multibyte confusion in diagnostics
17538         * src/print.c (print_error_message):
17539         Don't assume that the caller's name is unibyte.
17540         * src/xdisp.c (vadd_to_log):
17541         Don't assume that the formatted diagnostic is unibyte.
17543         Fix file name encodings in diagnostics
17544         Also, close some minor races when opening image files, by opening
17545         them once instead of multiple times.
17546         * src/gtkutil.c (xg_get_image_for_pixmap):
17547         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
17548         (svg_load):
17549         * src/nsimage.m (allocInitFromFile:):
17550         * src/xfns.c (xg_set_icon):
17551         Encode file name, since x_find_image_file no longer does that.
17552         * src/image.c (x_find_image_fd): New function.
17553         (x_find_image_file): Use it.  Do not encode resulting file name,
17554         since callers sometimes need it decoded.
17555         (slurp_file): File arg is now a fd, not a file name.
17556         All callers changed.  This saves us having to open the file twice.
17557         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
17558         (svg_load):
17559         Use x_find_image_fd and fdopen to save a file-open.
17560         Report file name that failed.
17561         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
17563 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
17565         Allow blink-matching-paren to jump off screen
17566         * doc/emacs/programs.texi (Matching): Mention the
17567         `blink-matching-paren' value `jump-offscreen'.
17568         * lisp/simple.el (blink-matching-paren): New possible value.
17569         (blink-matching-paren-on-screen): Clarify the docstring.
17570         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
17572         Refine the previous change
17573         * lisp/simple.el (blink-matching-open): Use minibuffer-message
17574         outside of save-excursion (bug#21286).
17576 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
17578         Rewrite and add frame geometry related functions.
17579         * src/frame.c (Fframe_position): New function.
17580         (Fset_frame_position): Rename parameters and rewrite doc-string.
17581         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
17582         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
17583         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
17584         Qtitle_bar_size.
17585         * src/nsfns.m (frame_geometry): New function.
17586         (Fx_frame_geometry): Call frame_geometry.
17587         (Fx_frame_edges): New function.
17588         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
17589         (GetTitleBarInfo_Proc): Define these so we can use the
17590         GetTitleBarInfo API.
17591         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
17592         (Fx_frame_geometry): Rewrite.
17593         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
17594         (Fx_set_mouse_absolute_pixel_position): New functions.
17595         * src/xfns.c (frame_geometry): New function.
17596         (Fx_frame_geometry): Call frame_geometry.
17597         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
17598         (Fx_set_mouse_absolute_pixel_position): New functions.
17600 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
17602         Improve Tramp's compatibility
17603         * lisp/net/tramp.el (tramp-get-method-parameter):
17604         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
17605         (tramp-adb-get-device):
17606         * lisp/net/trampver.el (tramp-repository-get-version):
17607         Use `tramp-compat-replace-regexp-in-string'.
17609 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
17611         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
17612         Encode/decode string.
17614 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
17616         Clarify what happens to match data on failure
17617         Problem reported by Ernesto Alfonso (Bug#21279).
17618         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
17619         Document more carefully what happens to match data after a failed
17620         search.
17621         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
17622         the return value is undefined if the last search failed.
17623         (Fmatch_data): Simplify doc string line 1.
17625 2015-08-18  Daiki Ueno  <ueno@gnu.org>
17627         Revert "pinentry.el: Support external passphrase cache"
17628         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
17629         pinentry.el shouldn't directly interact with the secrets service,
17630         but ask the caller to cache the passphrase.
17632 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
17634         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
17635         Message mode hooks.
17637 2015-08-17  Daiki Ueno  <ueno@gnu.org>
17639         epg.el: Make gpgconf output parsing future proof
17640         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
17641         --list-options" output.
17643         pinentry.el: Support external passphrase cache
17644         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
17645         (pinentry--allow-external-password-cache): New local variable.
17646         (pinentry--key-info): New local variable.
17647         (secrets-enabled, secrets-search-items, secrets-get-secret):
17648         Declare.
17649         (pinentry--send-passphrase): New function, split from
17650         `pinentry--process-filter'.
17651         (pinentry--process-filter): Use secrets.el to retrieve passphrase
17652         from login keyring.
17654         pinentry.el: Popup window for multiline prompt
17655         * lisp/net/pinentry.el (pinentry): New custom group.
17656         (pinentry-popup-prompt-window): New user option.
17657         (pinentry-prompt-window-height): New user option.
17658         (pinentry--prompt-buffer): New variable.
17659         (pinentry-prompt-mode-map): New variable.
17660         (pinentry-prompt-mode): New function.
17661         (pinentry--prompt): New function.
17662         (pinentry--process-filter): Use `pinentry--prompt' instead of
17663         `read-passwd' and `y-or-n-p'.
17665 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
17667         message.el: Silent the byte compiler
17668         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
17669         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
17670         (message-delete-overlay, message-window-inside-pixel-edges):
17671         Declare before using.
17673         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
17674         (message-window-inside-pixel-edges): XEmacs compatible functions.
17676 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
17678         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
17680 2015-08-17  Noah Friedman  <friedman@splode.com>
17682         * lisp/simple.el (blink-matching-open): Restore point before
17683         calling minibuffer-message.
17685 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
17687         * lisp/play/dunnet.el: Update version number in header (now
17688         matches help).
17690 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
17692         Curved quotes in --batch diagnostics in non-UTF-8
17693         When run with --batch, check that curved quotes are compatible with
17694         the system locale before outputting them in diagnostics.
17695         Problem reported by Eli Zaretskii in:
17696         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
17697         * lisp/startup.el (command-line): Set internal--text-quoting-flag
17698         after the standard display table is initialized.
17699         * src/doc.c (default_to_grave_quoting_style): New function.
17700         (text_quoting_style): Use it.
17701         (text_quoting_flag): New static var, visible to Lisp as
17702         internal--text-quoting-flag.
17703         * src/emacs.c: Include <wchar.h> if available.
17704         (using_utf8): New function.
17705         (main): Use it to initialize text_quoting_flag.
17706         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
17707         Don't define, as it's not needed and it clashes with wchar.h.
17709 2015-08-17  Glenn Morris  <rgm@gnu.org>
17711         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
17712         from makeinfo about spurious "Note:" cross-reference, and for grammar.
17714 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
17716         Minor change in variable initialization on MS-Windows
17717         * src/w32fns.c <after_dead_key>: Initialize to -1.
17718         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
17719         non-zero.
17721         Fix a bug with LWindow key remapping on MS-Windows
17722         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
17724 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
17726         Improve fontset support for latest OTF script tags
17727         * lisp/international/fontset.el (otf-script-alist): Add some
17728         missing script tags.
17729         (setup-default-fontset): Include settings for v2 versions of the
17730         script tags used by some modern OTF/TTF fonts.
17732 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
17734         Spelling fixes
17736 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
17738         Use curved quotes in core elisp diagnostics
17739         In the core elisp files, use curved quotes in diagnostic formats,
17740         so that they follow user preference as per ‘text-quoting-style’
17741         rather than being hard-coded to quote `like this'.
17742         * lisp/abbrev.el (expand-region-abbrevs):
17743         * lisp/button.el (button-category-symbol, button-put)
17744         (make-text-button):
17745         * lisp/cus-start.el:
17746         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
17747         (custom--sort-vars-1, load-theme):
17748         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
17749         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
17750         (cl-generic-generalizers):
17751         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
17752         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
17753         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
17754         (advice--make, define-advice):
17755         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
17756         * lisp/emacs-lisp/timer.el (timer-event-handler):
17757         * lisp/env.el (setenv):
17758         * lisp/facemenu.el (facemenu-add-new-face)
17759         (facemenu-add-new-color):
17760         * lisp/faces.el (face-documentation, read-face-name)
17761         (face-read-string, read-face-font, face-spec-set-match-display)
17762         (read-color, x-resolve-font-name):
17763         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
17764         (set-auto-mode, hack-local-variables)
17765         (hack-one-local-variable--obsolete)
17766         (dir-locals-set-directory-class, write-file)
17767         (basic-save-buffer, delete-directory, copy-directory)
17768         (recover-session, recover-session-finish, insert-directory)
17769         (file-modes-char-to-who, file-modes-symbolic-to-number)
17770         (move-file-to-trash):
17771         * lisp/font-lock.el (font-lock-fontify-buffer):
17772         * lisp/format.el (format-write-file, format-find-file)
17773         (format-insert-file):
17774         * lisp/frame.el (get-device-terminal, select-frame-by-name):
17775         * lisp/fringe.el (fringe--check-style):
17776         * lisp/help.el (describe-minor-mode-from-indicator):
17777         * lisp/image.el (image-type):
17778         * lisp/international/fontset.el (x-must-resolve-font-name):
17779         * lisp/international/mule-cmds.el (prefer-coding-system)
17780         (select-safe-coding-system-interactively)
17781         (select-safe-coding-system, activate-input-method)
17782         (toggle-input-method, describe-current-input-method):
17783         * lisp/international/mule-conf.el (code-offset):
17784         * lisp/mouse.el (minor-mode-menu-from-indicator):
17785         * lisp/replace.el (query-replace-read-from)
17786         (occur-after-change-function, occur-1):
17787         * lisp/scroll-bar.el (scroll-bar-columns):
17788         * lisp/simple.el (execute-extended-command)
17789         (undo-outer-limit-truncate, compose-mail, set-variable)
17790         (choose-completion-string, define-alternatives):
17791         * lisp/startup.el (site-run-file, tty-handle-args)
17792         (command-line, command-line-1):
17793         * lisp/subr.el (noreturn, define-error, add-to-list)
17794         (read-char-choice):
17795         * lisp/term/common-win.el (x-handle-xrm-switch)
17796         (x-handle-name-switch, x-handle-args):
17797         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
17798         Use curved quotes in diagnostics.
17799         * lisp/international/mule.el (find-auto-coding):
17800         Use " to quote in a diagnostic, to be consistent with the rest of
17801         this file.
17803         Convert lisp/term/x-win.el to UTF-8
17804         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
17805         runtime behavior, and the file is multilingual so compile-time
17806         appearance shouldn't be an issue.
17807         * admin/notes/unicode: Document this.
17809 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
17811         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
17812         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
17813         issues and comments, bug#943.
17814         (verilog-type-font-keywords): Cycle delay operators like ##1 and
17815         ##[0:$] are now highlighted in their entirety similarly to the #
17816         delay-control operator.  Likewise, the followed-by operators #-#
17817         and #=# are no longer partially highlighed.
17818         (verilog-backward-syntactic-ws-quick)
17819         (verilog-skip-backward-comments): Minor performance improvements
17820         to buffer traversal functions for reduced latency.
17821         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
17822         keyword 'final' follows 'assert/assume/cover', then it is part of
17823         a deferred immediate assertion item and should not be treated as a
17824         final construct for indentation.  Reported by Yuri Sugihara.
17825         (verilog-do-indent): Virtual task/function/class definition lines
17826         should not be considered as declarations.  Reported by Enzo Chi.
17827         (verilog-do-indent): Do not falsely indent to '=' of
17828         property/sequence operators on subsequent lines of a multi-line
17829         statement.
17830         (verilog-assignment-operator-re): Fix '!==' operator and add
17831         support for '<->', ':/', '#-#', and '#=#' operators.
17832         (verilog-calculate-indent, verilog-label-be): Enable
17833         case-sensitive regular expression parsing when looking for
17834         keywords.
17835         (verilog-calc-1): Detect 'pure virtual method' declarations which
17836         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
17837         (verilog-backward-ws&directives): When moving back to the start of
17838         a line and the preceeding line ended with an escaped-newline, then
17839         jump up one line.  This properly consumes a multi-line
17840         pre-processor directive.  Reported by Kaushal Modi.
17841         (verilog-dpi-import-export-re, verilog-extended-complete-re)
17842         (verilog-calc-1): Teach verilog-mode to properly indent after a
17843         DPI import/export statement that resides outside of a module.
17844         Reported by Kaushal Modi.
17845         (verilog-extended-complete-re): Update regexp to match both
17846         "DPI-C" and "DPI".  Reported by Kaushal Modi.
17848 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
17850         substitute-command-keys a few more doc strings
17851         * lisp/allout.el (outlineify-sticky):
17852         * lisp/files.el (hack-one-local-variable--obsolete):
17853         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
17854         Use substitute-command-keys on some doc strings so that
17855         they don't use hard-coded key bindings or quoting styles.
17857         Fix quoting in Fformat calls
17858         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
17859         (xpm_load, xpm_load_image, pbm_load, png_load_body)
17860         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
17861         (imagemagick_load, svg_load, svg_load_image, gs_load)
17862         (x_kill_gs_process):
17863         * src/lread.c (load_warn_old_style_backquotes):
17864         * src/xfaces.c (load_pixmap):
17865         * src/xselect.c (x_clipboard_manager_error_1):
17866         Quote diagnostics according to user preference when calling
17867         Fformat or its derivatives.
17869 2015-08-15  Glenn Morris  <rgm@gnu.org>
17871         * admin/admin.el (set-version, set-copyright): Remove deleted files.
17873 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
17875         Allow describe-function helpers to access buffer-local values
17876         This will be used by cedet/mode-local.el `describe-mode-local-override'
17877         on `help-fns-describe-function-functions' in upstream CEDET.
17878         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
17879         `describe-function'.
17880         (describe-function): Bind it, save it on the help xref stack.
17882         Handle pulse-background being nil
17883         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
17884         pulse-background, handle it being nil.
17886 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
17888         Fix "\`" confusion in Lisp strings
17889         * admin/authors.el (authors-canonical-author-name):
17890         Fix typo by using "\\`" not "\`" in string RE.
17891         * lisp/obsolete/complete.el (PC-complete-as-file-name):
17892         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
17893         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
17894         Use plain "`", not the equivalent-but-confusing "\`", in strings.
17895         * lisp/textmodes/texinfmt.el: Fix comment likewise.
17897 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
17899         * nt/zipdist.bat: Remove -- no longer used.
17901 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
17903         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
17904         rather than "getenforce".
17905         (tramp-sh-handle-set-file-selinux-context): Do not
17906         cache SELinux context if not all context components are given.
17908 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
17910         Add doc strings to 2 help-mode.el functions
17911         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
17912         strings.  (Bug#21263)
17914         Remove files used by the old MS-Windows specific build procedure
17915         * admin/unidata/makefile.w32-in:
17916         * doc/emacs/makefile.w32-in:
17917         * doc/lispintro/makefile.w32-in:
17918         * doc/lispref/makefile.w32-in:
17919         * doc/misc/makefile.w32-in:
17920         * leim/makefile.w32-in:
17921         * lib-src/makefile.w32-in:
17922         * lib/makefile.w32-in:
17923         * lisp/makefile.w32-in:
17924         * nt/INSTALL.OLD:
17925         * nt/config.nt:
17926         * nt/emacs-src.tags:
17927         * nt/envadd.bat:
17928         * nt/gmake.defs:
17929         * nt/makefile.w32-in:
17930         * nt/multi-install-info.bat:
17931         * nt/nmake.defs:
17932         * nt/paths.h:
17933         * src/makefile.w32-in: Files deleted.
17934         * nt/configure.bat: Remove everything except the blurb about the
17935         new build procedure.
17936         * make-dist: Remove references to makefile.w32-in in various
17937         directories, and to files in nt/ that were deleted.
17938         * etc/NEWS: Mention the fact that the files were dropped.
17940 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
17942         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
17943         (Bug#21248)
17945 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17947         Default to inotify instead of gfile
17948         * configure.ac (with_file_notification): Fix typo that
17949         prevented suppression of file notification if HAVE_NS.
17950         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
17951         with_file_notification is 'yes' (Bug#21241).
17952         * etc/NEWS: Mention this.
17954         Fix broken URLs for ISO-IR
17955         * doc/emacs/mule.texi (Charsets):
17956         * lisp/international/mule-conf.el:
17957         Fix broken URL (Bug#21248).
17959         Low-level diagnostics now use ‘text-quoting-style’
17960         * src/doprnt.c (doprnt):
17961         Format ` and ' as per ‘text-quoting-style’.
17962         * src/xdisp.c (vmessage, message): Mention that the format should
17963         not contain ` or '.
17965         Prefer ‘format’ to ‘substitute-command-keys’
17966         * src/character.h (uLSQM, uRSQM): Move here ...
17967         * src/doc.c (uLSQM, uRSQM): ... from here.
17968         * src/doc.c (Fsubstitute_command_keys):
17969         * src/syntax.c (Finternal_describe_syntax_value):
17970         * lisp/cedet/mode-local.el (mode-local-print-binding)
17971         (mode-local-describe-bindings-2):
17972         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
17973         * lisp/cus-theme.el (describe-theme-1):
17974         * lisp/descr-text.el (describe-text-properties-1, describe-char):
17975         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
17976         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
17977         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
17978         * lisp/emacs-lisp/package.el (describe-package-1):
17979         * lisp/faces.el (describe-face):
17980         * lisp/help-fns.el (help-fns--key-bindings)
17981         (help-fns--compiler-macro, help-fns--parent-mode)
17982         (help-fns--obsolete, help-fns--interactive-only)
17983         (describe-function-1, describe-variable):
17984         * lisp/help.el (describe-mode):
17985         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
17986         to implement quoting style.  This generally makes the code simpler.
17988         Extend ‘format’ to translate curved quotes
17989         This is a followup to the recent doc string change, and deals with
17990         diagnostics and the like.  This patch is more conservative than
17991         the doc string change, in that the behavior of ‘format’ changes
17992         only if its first arg contains curved quotes and the user prefers
17993         straight or grave quotes.  (Come to think of it, perhaps we should
17994         be similarly conservative with doc strings too, but that can wait.)
17995         The upside of this conservatism is that existing usage is almost
17996         surely unaffected.  The downside is that we'll eventually have to
17997         change Emacs's format strings to use curved quotes in places where
17998         the user might want curved quotes, but that's a simple and
17999         mechanical translation that I'm willing to do later.  (Bug#21222)
18000         * doc/lispref/help.texi (Keys in Documentation):
18001         Move description of text-quoting-style from here ...
18002         * doc/lispref/strings.texi (Formatting Strings):
18003         ... to here, and describe new behavior of ‘format’.
18004         * etc/NEWS: Describe new behavior.
18005         * lisp/calc/calc-help.el (calc-describe-thing):
18006         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
18007         * lisp/info.el (Info-find-index-name):
18008         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
18009         of recently-added curved quotes.
18010         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
18011         Move from here ...
18012         * src/lisp.h: ... to here.
18013         * src/doc.c (text_quoting_style): New function.
18014         (Fsubstitute_command_keys): Use it.
18015         * src/editfns.c (Fformat): Implement new behavior.
18016         * src/lisp.h (enum text_quoting_style): New enum.
18018 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18020         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
18021         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
18023 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
18025         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
18026         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
18028 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
18030         Flush file properties in Tramp
18031         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
18032         (tramp-sh-handle-set-file-times):
18033         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
18034         (tramp-adb-handle-set-file-times): Flush the file properties of
18035         the directory.
18037 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
18039         * doc/emacs/misc.texi (Amusements): Fixed typo.
18041 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
18043         Don't miss warnings about removing string text properties while dumping
18044         * src/alloc.c (purecopy): Warn about removing a string's text
18045         properties even when the same string was already pure-copied
18046         earlier.
18047         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
18048         (elisp--xref-format-extra): Fix the commentary.
18050 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18052         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
18054 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
18056         * lisp/progmodes/compile.el: Use lexical-binding.
18057         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
18059 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18061         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
18062         * lisp/uniquify.el: Remove redundant `:group's.
18064 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
18066         * lisp/net/tramp-adb.el
18067         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
18068         result to prevent modification of the tramp-cache by side effects.
18069         Use the correct cache key.
18071 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
18073         Make add_to_log varargs
18074         * src/alloc.c (run_finalizer_handler):
18075         * src/charset.c (load_charset_map_from_vector):
18076         * src/nsimage.m (ns_load_image):
18077         * src/xfaces.c (load_pixmap, load_color2):
18078         Simplify, now that add_to_log has a variable number of args.
18079         * src/image.c (image_error): Take a variable number of args.
18080         Callers simplified.
18081         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
18082         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
18083         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
18084         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
18086         Optional args for holiday-greek-orthodox-easter
18087         * etc/NEWS: Document this.
18088         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
18089         Add optional args N and STRING, mimicking the API and code of
18090         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
18092 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
18094         xref-find-definitions: Exclude more generic function items.
18095         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
18096         Add doc string.
18097         (cl--generic-find-defgeneric-regexp): New.
18098         (find-function-regexp-alist): Add it.
18099         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
18100         elisp-mode.el, change to search for ";;; Code:"
18101         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
18102         (find-function-regexp-alist): Add them.
18103         * lisp/progmodes/elisp-mode.el:
18104         (elisp--xref-format, elisp--xref-format-extra): Change back to
18105         defvar due to bug#21237.
18106         (elisp--xref-find-definitions): Exclude co-located default methods for
18107         generic functions.  Also exclude implicitly declared defgeneric.
18108         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
18109         mode variables defined by 'define-minor-mode'.
18110         * test/automated/elisp-mode-tests.el: Declare generic functions, add
18111         tests for them.
18112         (xref-elisp-test-run): Fix bug.
18113         (emacs-test-dir): Improve initial value.
18114         (find-defs-defun-defvar-el): Don't expect defvar.
18115         (find-defs-feature-el): Match change to find-feature-regexp.
18117 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
18119         Improve warning about purecopy of strings with properties
18120         * src/alloc.c (purecopy): Show the offending string with the
18121         warning about removing its text properties.
18123 2015-08-12  Alan Mackenzie  <acm@muc.de>
18125         Introduce new macros to cover Emacs's new names in cl-lib.el
18126         This also eliminates `mapcan' warnings in XEmacs.
18127         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
18128         characterise [X]Emacs versions.
18129         (top-level): Require either 'cl or 'cl-lib, depending on
18130         c--mapcan-status.
18131         Change this back to cc-external-require from an eval-when-compile
18132         require.
18133         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
18134         (c--delete-duplicates): New macros which expand into either old or new
18135         names.
18136         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
18137         rather than the old names.
18138         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
18139         rather than mapcan.
18140         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
18141         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
18142         depending on c--mapcan-status.
18143         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
18144         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
18145         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
18146         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
18147         (c-decl-block-key, c-keywords, c-keywords-obarray)
18148         (c-regular-keywords-regexp, c-primary-expr-regexp)
18149         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
18150         (c-known-type-key, c-nonlabel-token-key)
18151         (c-make-init-lang-vars-fun): Use the new macros rather than the old
18152         names.
18154 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
18156         loadhist.el (read-feature): Conform to completing-read
18157         * lisp/loadhist.el (read-feature): According to `completing-read'
18158         documentation, if collection is a list, then it must be a list of
18159         strings, not a list of symbols like before.
18161 2015-08-12  David Kastrup  <dak@gnu.org>
18163         Deal gracefully with up-events (Bug#19746)
18164         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
18165         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
18166         those may easily be injected by user-level Lisp code.
18167         (read_key_sequence): Discard unbound up-events like unbound
18168         down-events: they are even more likely only relevant for special
18169         purposes.
18170         While Emacs will not produce up-events on its own currently (those are
18171         converted to drag or click events before being converted to
18172         Lisp-readable structures), the input queue can be made to contain them
18173         by synthesizing events to `unread-command-events'.  Emacs should deal
18174         consistently with such events.
18176 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
18178         Fix display of thin lines whose newline has line-height property of t
18179         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
18180         and descent values of non-empty glyph rows, since they could have
18181         forced low values deliberately.  (Bug#21243)
18183 2015-08-12  Richard Stallman  <rms@gnu.org>
18185         Offer to combine multiple To or CC fields.
18186         * lisp/mail/sendmail.el (mail-combine-fields): New function.
18187         (mail-send): Call 'mail-combine-fields'.
18189         Don't decrypt encrypted files.
18190         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
18192         Handle encrypted mbox files.
18193         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
18194         the mbox file if necessary.
18196         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
18197         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
18198         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
18199         In a mime message, reenable Mime and show the parts that
18200         were shown before.
18201         Add keyword "decrypt" if anything decrypted.
18203         epa-inhibit inhibits auto-recognition of .gpg files
18204         * lisp/epa-file.el (epa-inhibit): New variable.
18205         (epa-file-handler): Check epa-inhibit.
18207 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18209         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
18211 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18213         Respect python.el imenu when semantic-mode is off
18214         Fixes bug#21220
18215         * lisp/cedet/semantic/wisent/python.el: Do not force
18216         wisent-python-default-setup on python-mode-hook.
18218 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
18220         Give names to Unicode code points in C code
18221         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
18222         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
18223         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
18224         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
18225         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
18226         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
18227         (OBJECT_REPLACEMENT_CHARACTER):
18228         New named constants for Unicode code points.
18229         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
18230         * src/composite.c (char_composable_p):
18231         * src/lread.c (readevalloop, read1):
18232         * src/xdisp.c (get_next_display_element):
18233         Use them.
18234         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
18235         Remove; now in character.h.
18237 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
18239         elisp--xref-find-definitions handle cl-defstuct default constructor
18240         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
18241         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
18242         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
18243         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
18244         from xref-elisp-test for ease of debugging.
18245         (xref-elisp-deftest): Rename from xref-elisp-test.
18246         (find-defs-constructor): New test.
18247         (find-defs-defgeneric-el): Match batch test config.
18248         (compile): Required for find-defs compilation-minor-mode test.
18249         (find-defs-defvar-el): Match code change.
18250         (find-defs-face-el): Match code change.
18251         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
18252         Improve doc string.
18254 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
18256         * lisp/replace.el (perform-replace): Document `replacements'.
18257         (perform-replace): Move the description of the format of `replacements'
18258         from the body's comment to the doc string.
18260 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
18262         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
18263         sequence.  Recent adb version send initial escape sequences, even
18264         when terminal type is set to TERM=dumb.
18266 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
18268         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
18269         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18270         Function deleted.
18271         (elisp--xref-format-cl-defmethod): New defconst.
18272         (find-feature-regexp, find-alias-regexp): New defcustoms.
18273         (elisp--xref-make-xref): New function.
18274         (elisp--xref-find-definitions): Rewrite using the above, handle many
18275         more cases.  Always output all available definitions.
18276         (xref-location-marker): No need for special cases.
18277         * test/automated/elisp-mode-tests.el: Add more tests of
18278         elisp--xref-find-definitions, improve current tests.
18280 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
18282         Fix recording of events pushed onto unread-command-events
18283         * src/keyboard.c (read_char): Make sure events read from
18284         unread-command-events and unread-post-input-method-events are
18285         always recorded by record_char.  Reported by David Kastrup
18286         <dak@gnu.org>, see
18287         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
18289 2015-08-10  Samer Masterson  <samer@samertm.com>
18291         Set file buffer as current for "--file"
18292         * lisp/startup.el (command-line-1): Set file buffer as current before
18293         it is displayed so it can be used with options like "--eval".
18294         (Bug#21095)
18296 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
18298         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
18299         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
18300         after setting LC_ALL to the desired locale, to avoid affecting how
18301         numbers are read and printed.  (Bug#21223)
18303 2015-08-10  Alan Mackenzie  <acm@muc.de>
18305         Fix "Invalid search bound (wrong side of point)" in fontification
18306         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
18307         an initialization expression, check point is not beyond the
18308         fontification limit.
18310 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
18312         Fix DPI calculation when Xft/DPI is default
18313         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
18314         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
18315         Remove unnecessary cast while we're in the neighborhood.
18317 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
18319         Add project-vc-search-path and project-vc-ignores
18320         * lisp/progmodes/project.el (project-vc): New group.
18321         (project-vc-search-path, project-vc-ignores): New variables.
18322         (project--value-in-dir): Utility function.
18323         (project-search-path, project-ignores): Use them.
18324         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
18325         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
18327 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
18329         Fix some minor quoting issues with grave accent
18330         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
18331         Remove redundant quotes.
18332         * src/doc.c (uLSQM, uRSQM): New macros.
18333         * src/doc.c (Fsubstitute_command_keys):
18334         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
18335         preference for quotes rather than hardcoding the ‘grave’ style.
18336         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
18337         (re_match_2_internal) [DEBUG]: In debugging output, quote C
18338         strings with "...", not `...'.
18340         ChangeLog.2 ignores remote-tracking merges
18341         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
18342         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
18343         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
18345 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
18347         Use kpsewhich in ffap-latex-mode, if available
18348         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
18349         (ffap-latex-mode): Use kpsewhich if available.
18351         ffap: disallow braces in filenames for tex modes
18352         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
18353         braces in tex-related modes.
18355         Remove useless backslashes from ffap-string-at-point-mode-alist
18356         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
18357         misleading backslashes from default value.
18359         Augment docstring of ffap-string-at-point-mode-alist
18360         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
18361         and END are handled.
18363 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
18365         * lisp/org/org-src.el (org-edit-src-code)
18366         (org-edit-fixed-width-region):
18367         * lisp/simple.el (completion-setup-function):
18368         Remove calls to substitute-command-keys that always just return
18369         their argument.
18371 2015-08-09  Daiki Ueno  <ueno@gnu.org>
18373         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
18374         (Bug#21210)
18376 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
18378         Fix link to source code in help window
18379         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
18380         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
18381         'No longer include timestamp in header of .elc files'.  Add code
18382         that will return .el source file in load-path.
18384 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
18386         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
18387         Respect `isearch-lax-whitespace' when searching through
18388         `isearch-word'.
18390 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
18392         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
18394         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
18395         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
18396         (org-set-regexps-and-options, org-assign-fast-keys)
18397         (org-contextualize-keys, org-contextualize-validate-key)
18398         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
18399         (org-find-olp, org-find-exact-heading-in-directory)
18400         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
18401         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
18402         (org-replace-escapes): Use dolist.
18403         (org-mode): Optimize away XEmacs-only code.
18404         (org-refile-get-targets): Remove unused var `f'.
18405         (org-fast-todo-selection): Remove unused var `e'.
18406         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
18407         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
18408         (org-format-latex): Use dolist.  Remove unused var `e'.
18409         (org-toggle-heading): Access vars lexically rather than dynamically.
18410         (org-backward-sentence, org-forward-sentence, org-meta-return)
18411         (org-kill-line): Mark arg as unused.
18412         (org-submit-bug-report): Silence compiler warning.
18413         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
18414         (org-get-cursor-date): Remove unused var `tm'.
18415         (org-comment-or-uncomment-region): Use standard name `_'.
18416         (reftex-docstruct-symbol, reftex-cite-format): Declare to
18417         silence byte-compiler.
18418         (org-reftex-citation): Add `org--' prefix to dynamically scoped
18419         `rds' var.
18421 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
18423         Electric quote if coding is undecided or no conv
18424         * lisp/electric.el (electric--insertable-p): Also say that a
18425         string is insertable if the buffer file coding system is undecided
18426         or uses no conversion, as curved quotes will work in either case.
18428         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
18430 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
18432         Fix overlay string display regressions introduced in Emacs 24.5
18433         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
18434         buffer position, if we move the iterator to a new position as
18435         result of jumping over text covered by a "replacing" display
18436         property.
18437         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
18439         Support recovery from C stack overflow on MS-Windows
18440         * src/w32fns.c (w32_reset_stack_overflow_guard)
18441         (stack_overflow_handler): New functions for handling C stack
18442         overflow exceptions.
18443         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
18444         specially, and zero out except_addr if we do.
18445         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
18446         mode.
18447         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
18448         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
18449         the MinGW build, but the code guarded by that is for Posix hosts.
18450         * src/keyboard.c (command_loop) [WINDOWSNT]:
18451         Call w32_reset_stack_overflow_guard.
18452         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
18453         (sigsetjmp): New macro.
18454         (w32_reset_stack_overflow_guard): Declare the prototype.
18455         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
18457 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
18459         Improve error signalling for seq-subseq
18460         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
18461         when indexes are too large, but to silently ignore numbers which
18462         are too negative for lists.  String and vector handling errors in
18463         both cases.  This has been regularized.  Error signaling behavior
18464         has been explicitly added to the doc string.
18466         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
18467         therefore also impacted by this change.  Update the doc string
18468         to reflect this.
18470         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
18471         added for these exceptional cases, as well as one non exceptional
18472         base case.
18474 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
18476         Improve error checking in tramp-adb.el
18477         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
18478         Improve error checking.  "ls -l" on Android in Enforcing mode can
18479         print "lstat './FILENAME failed: Permission denied".
18481 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
18483         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
18484         non-struct vectors.
18486 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
18488         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
18489         * lisp/window.el: Fix typo that broke build.
18490         (display-buffer--action-function-custom-type):
18491         Add `display-buffer-use-some-frame'.
18492         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
18494         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
18495         * lisp/window.el (display-buffer-use-some-frame): Add support for
18496         'inhibit-same-window in alist.
18497         * doc/lispref/windows.texi (display-buffer-use-some-frame):
18498         Doc support for 'inhibit-same-window in alist.
18500 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
18502         Avoid infinite loop in display of invisible text in strings
18503         * src/xdisp.c (handle_invisible_prop): If the next change of
18504         invisibility spec does not mean the beginning of a visible text,
18505         update the string position from which to start the search for the
18506         next invisibility change.  This avoids an infinite loop when we
18507         have more than one invisibility spec that are made inactive by
18508         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
18509         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
18510         for the situation that caused bug #21200.
18512 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18514         * lisp/emacs-lisp/package.el: Simplify describe-package-1
18515         (package-help-section-name-face): New face.
18516         (package--print-help-section): New function.
18517         (describe-package-1): Refactor section printing.
18518         (package-make-button): Use face instead of font-lock-face, which
18519         doesn't work on buttons.
18521         * lisp/emacs-lisp/package.el: Define custom faces
18522         (package-name-face, package-description-face)
18523         (package-status-built-in-face, package-status-external-face)
18524         (package-status-available-face, package-status-new-face)
18525         (package-status-held-face, package-status-disabled-face)
18526         (package-status-installed-face, package-status-dependency-face)
18527         (package-status-unsigned-face, package-status-incompat-face)
18528         (package-status-avail-obso-face): New faces.
18529         (package-menu--print-info-simple): Use them.
18531 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
18533         Fix some confusion with ‘format’
18534         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
18535         (allout-graphics-modification-handler):
18536         Protect arbitrary string in a format context with "%s" format.
18537         * lisp/avoid.el:
18538         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
18539         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
18540         * lisp/erc/erc-button.el (erc-button-beats-to-time):
18541         * lisp/gnus/message.el (message-send-form-letter):
18542         * lisp/org/ob-core.el (org-babel-check-evaluate)
18543         (org-babel-confirm-evaluate):
18544         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
18545         * lisp/org/ox-latex.el (org-latex-compile):
18546         * lisp/org/ox-man.el (org-man-compile):
18547         * lisp/org/ox-odt.el (org-odt-template):
18548         * lisp/org/ox-texinfo.el (org-texinfo-compile):
18549         * lisp/progmodes/prolog.el (prolog-help-info)
18550         (prolog-view-predspec):
18551         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
18552         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
18553         * lisp/textmodes/rst.el (rst-replace-lines):
18554         Change (message (format ...)) to (message ...), and likewise
18555         for ‘error’.  This lessens the probability of confusion when the
18556         output of ‘format’ contains ‘%’.
18558 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
18560         * lisp/replace.el (replace-character-fold): Default to nil.
18562         * lisp/character-fold.el: Fix lax whitespace.
18563         (character-fold-table): Don't make space match other whitespace chars.
18564         (character-fold-to-regexp): Simplify lax behavior.
18566 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
18568         Preserve window point in xref-find-definitions-other-window
18569         Fix the problem reported by Ingo Logmar in
18570         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
18571         * lisp/progmodes/xref.el (xref--goto-char): Extract from
18572         xref--goto-location.
18573         (xref--pop-to-location): Use it.  Replace xref--goto-location with
18574         a direct xref-location-marker call.
18575         (xref--show-location): Likewise.
18576         (xref--display-position): Use xref--goto-char.
18578         * lisp/progmodes/project.el: Add a paragraph to the front matter.
18580 2015-08-04  David Kastrup  <dak@gnu.org>
18582         * lisp/vc/emerge.el (emerge-show-file-name):
18583         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
18584         (vhdl-comment-insert, vhdl-hooked-abbrev):
18585         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
18586         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
18587         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
18588         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
18589         * lisp/obsolete/vip.el (vip-escape-to-emacs)
18590         (vip-prefix-arg-value, vip-prefix-arg-com):
18591         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
18592         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
18593         (quail-tibkey-update-translation):
18594         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
18595         * lisp/leim/quail/lao.el (quail-lao-update-translation):
18596         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
18597         (quail-japanese-self-insert-and-switch-to-alpha):
18598         * lisp/leim/quail/hangul.el (hangul2-input-method)
18599         (hangul3-input-method, hangul390-input-method):
18600         * lisp/language/hanja-util.el (hangul-to-hanja-char):
18601         * lisp/international/robin.el (robin-input-method):
18602         * lisp/international/quail.el (quail-start-translation)
18603         (quail-start-conversion):
18604         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
18605         (gnus-article-describe-key-briefly):
18606         * lisp/eshell/em-hist.el (eshell-list-history):
18607         * lisp/term.el (term-dynamic-list-input-ring)
18608         (term-dynamic-list-completions):
18609         * lisp/subr.el (momentary-string-display):
18610         * lisp/simple.el (read-quoted-char):
18611         * lisp/pcomplete.el (pcomplete-show-completions):
18612         * lisp/kmacro.el (kmacro-repeat-on-last-key):
18613         * lisp/info.el (Info-summary):
18614         * lisp/ehelp.el (electric-help-command-loop):
18615         * lisp/ebuff-menu.el (electric-buffer-list)
18616         (Electric-buffer-menu-exit):
18617         * lisp/double.el (double-translate-key):
18618         * lisp/comint.el (comint-dynamic-list-input-ring)
18619         (comint-dynamic-list-completions): Do not overwrite preexisting
18620         contents of `unread-command-events' when putting new events into it.
18622 2015-08-04  Daniel Colascione  <dancol@dancol.org>
18624         Improve ansi-color filtering of unrecognized escape sequences
18625         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
18626         escape sequences.
18627         (ansi-color-filter-apply, ansi-color-apply): Filter out
18628         unrecognized escape sequences.
18630 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18632         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
18633         definitions to `easy-menu-define', improve a couple to account for
18634         async, and add a couple of new commands.
18636 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
18638         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
18640 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
18642         Add new 'calendar-weekend-days' option
18643         Make the days receiving the 'calendar-weekend-header' face freely
18644         customizable, as they differ by region/culture.
18645         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
18646         new variable.
18647         * lisp/calendar/calendar.el (calendar-generate-month): New variable
18648         calendar-weekend-days to customize day header fontification.
18650 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
18652         Redo text-quoting-style variable
18653         Rename help-quote-translation to text-quoting-style,
18654         and use symbols rather than characters as values.
18655         This follows suggestions along these lines by Alan Mackenzie in:
18656         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
18657         and by Drew Adams in:
18658         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
18659         * doc/lispref/help.texi (Keys in Documentation)
18660         * etc/NEWS:
18661         * lisp/cus-start.el (standard):
18662         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
18663         Document and/or implement the new behavior instead of the old.
18664         (syms_of_doc): New symbols 'grave' and 'straight'.
18666 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
18668         nnimap.el: Use IMAP MOVE extension if available
18669         * lisp/gnus/nnimap.el (nnimap-request-move-article)
18670         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
18671         Use MOVE extension if available.
18673         nnimap.el: Explicitly ask for server capabilities
18674         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
18675         capabilities will be returned in the login-result.
18677 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
18679         Treat help strings like other doc strings
18680         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
18681         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
18682         substitute-command-keys.
18683         * src/keyboard.c (show_help_echo, parse_menu_item): Call
18684         substitute-command-keys on the help string before displaying it.
18686         Also mention "curly quotes"
18687         See Drew Adams's email in:
18688         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
18689         * doc/lispref/help.texi (Keys in Documentation):
18690         Add index entry "curly quotes".
18691         * etc/NEWS: Use the phrase "curly quotes" too.
18693         ede-proj-target-makefile docstring tweaks
18694         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
18695         Consistently use "all:" to describe the all: target,
18696         replacing three different and confusingly-quoted usages.
18698 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
18700         Don't abort emacsclientw when -a was specified
18701         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
18702         out if we are in emacsclientw and -a was specified.
18704 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
18706         Fix handling of 1st keystroke on MS-Windows
18707         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
18708         This is needed to correctly handle the session's first keystroke,
18709         if it has any modifiers.  (Bug#19994)
18711 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
18713         Substitute some customization etc. doc strings
18714         These changes apply substitute-command-keys to some
18715         doc strings that were going through untranslated
18716         when creating customization or other widgets.
18717         * lisp/cus-edit.el (custom-group-value-create):
18718         * lisp/wid-edit.el (widget-default-create):
18719         (widget-push-button-value-create):
18720         Treat the widget tag as a doc string.
18721         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
18722         Treat the :documentation value as a doc string.
18723         * lisp/wid-edit.el (widget-choose):
18724         Treat the choice names as doc strings.
18725         (widget-default-create): Treat the :doc value as a doc string.
18726         (widget-toggle-value-create): Treat the :on and :off values
18727         as doc strings.
18728         (widget-documentation-string-value-create):
18729         Substitute the doc string.
18731 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
18733         Add a second argument to project-ignores
18734         * lisp/progmodes/project.el (project-ignores): Add a second
18735         argument DIR.
18736         * lisp/progmodes/project.el (project-ignores): Only include the VC
18737         ignores if DIR is the VC root.
18738         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
18740 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
18742         Prevent incorrect display when 'line-spacing' variable is set
18743         * src/xdisp.c (try_window_id): Give up this optimization if the
18744         buffer has its 'line-spacing' variable set non-nil.
18746 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
18748         Don't pass NOVISIT to find-file
18749         * lisp/progmodes/etags.el (next-file):
18750         Don't pass NOVISIT to find-file (bug#21175).
18752         Ignore buffer restriction for tags-loop-eval
18753         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
18754         restriction (bug#21167).
18756 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
18758         Fix a thinko in 'ffap-gopher-at-point'
18759         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
18761         Honor 'line-spacing' for empty lines
18762         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
18763         property and 'line-spacing' frame parameter or variable or
18764         property for empty lines, by doing the same processing as in
18765         x_produce_glyph for newline characters.  (Bug#21165)
18767 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
18769         Simplify by assuming C99 integer division
18770         * src/floatfns.c (ceiling2, floor2, truncate2):
18771         Assume C99 (i.e., Fortran) semantics for integer division.
18772         This simplifies the code.
18774 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
18776         Don't overflow if computing approximate percentage
18777         * lisp/align.el (align-region):
18778         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
18779         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
18780         * lisp/cus-edit.el (custom-buffer-create-internal):
18781         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
18782         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
18783         (checkdoc-next-message-error):
18784         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
18785         * lisp/epa.el (epa-progress-callback-function):
18786         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
18787         * lisp/ffap.el (ffap-menu-rescan):
18788         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
18789         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
18790         * lisp/gnus/nneething.el (nneething-retrieve-headers):
18791         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
18792         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
18793         * lisp/gnus/nnml.el (nnml-retrieve-headers):
18794         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
18795         * lisp/gnus/nntp.el (nntp-retrieve-headers)
18796         (nntp-retrieve-articles):
18797         * lisp/imenu.el (imenu--relative-position):
18798         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
18799         (skkdic-convert-okuri-nasi):
18800         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
18801         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
18802         * lisp/org/org-list.el (org-update-checkbox-count):
18803         * lisp/org/org.el (org-table-map-tables)
18804         (org-update-parent-todo-statistics):
18805         * lisp/play/decipher.el (decipher-insert-frequency-counts)
18806         (decipher-analyze-buffer):
18807         * lisp/profiler.el (profiler-format-percent):
18808         * lisp/progmodes/cc-cmds.el (c-progress-update):
18809         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
18810         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
18811         (idlwave-list-load-path-shadows):
18812         * lisp/progmodes/opascal.el (opascal-step-progress):
18813         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
18814         (vhdl-scan-directory-contents):
18815         * lisp/textmodes/bibtex.el (bibtex-progress-message):
18816         * lisp/textmodes/flyspell.el (flyspell-small-region)
18817         (flyspell-external-point-words):
18818         * lisp/textmodes/table.el (table-recognize):
18819         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
18820         progress-report percentages and the like.  This avoids problems
18821         if (* 100 NUMERATOR) would overflow.
18822         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
18823         * lisp/gnus/registry.el (registry-reindex):
18824         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
18825         * lisp/descr-text.el (describe-char):
18826         * lisp/org/org-colview.el (org-nofm-to-completion):
18827         * lisp/ps-print.el (ps-plot):
18828         * lisp/simple.el (what-cursor-position):
18829         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
18830         more-complicated and less-accurate approximation.
18832         Fix some int overflows in profiler.c
18833         * src/profiler.c (make_log): Make args EMACS_INT, not int,
18834         to avoid unwanted behavior on 'int' overflow.
18835         (make_log, evict_lower_half, record_backtrace):
18836         Use ptrdiff_t, not int, for object indexes.
18838         Port to pedantic memcpy
18839         * src/keyboard.c (menu_bar_items, tool_bar_items):
18840         * src/xrdb.c (magic_db):
18841         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
18843         Merge from gnulib
18844         This incorporates:
18845         2015-07-29 time_rz: port to pedantic memcpy
18846         * lib/time_rz.c: Copy from gnulib.
18848 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
18850         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
18851         When updating the very last entry, tabulated-list-print would
18852         erase it and then try to look at the next one (which obviously
18853         isn't there).
18855 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
18857         Allow to use the old key processing code on MS-Windows
18858         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
18859         New variable.
18860         (w32_wnd_proc): Use it to invoke the old code that processed
18861         character keys, as fallback, when this variable is non-nil.
18862         Fix typos in comments.  (Bug#19994)
18864 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
18866         Improve handling of Unicode keyboard input on MS-Windows
18867         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
18868         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
18869         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
18870         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
18871         successful, don't call TranslateMessage.  (Bug#19994)
18873 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
18875         Fix default-directory in changeset diffs after vc-print-log
18876         * lisp/vc/log-view.el (log-view-diff-common): Move the
18877         revision-granularity check back into log-view-diff-changeset.
18878         (log-view-diff-changeset): Bind default-directory to the current
18879         VC root.
18881         Rename project-directories to project-roots
18882         * lisp/progmodes/project.el (project-search-path-function)
18883         (project-search-path): Update the docstring.
18884         (project-directories): Rename to `project-roots', update all
18885         callers and implementations accordingly.
18886         (project-root): Remove.
18887         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
18888         as the default file mask.
18890 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
18892         Support long URLs in w32-shell-execute
18893         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
18894         and filename_to_ansi to convert the DOCUMENT argument, as it could
18895         be a URL that is not limited to MAX_PATH characters.  Instead, use
18896         MultiByteToWideChar directly, and allocate heap storage as
18897         required to accommodate the converted string.  Likewise with
18898         non-Unicode operation.  Ensure OPERATION is null-terminated, even
18899         if it is longer than 32K bytes.  (Bug#21158)
18901 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
18903         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
18905 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
18907         Add docs for display-buffer action display-buffer-use-some-frame
18908         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
18909         * doc/lispref/windows.texi (Display Action Functions):
18910         Add display-buffer-use-some-frame.
18911         * etc/NEWS: Mention display-buffer-use-some-frame.
18913         Add display-buffer action display-buffer-use-some-frame
18914         * lisp/window.el (display-buffer-use-some-frame): New.
18916         Handle vc-mtn error more gently
18917         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
18918         branch is nil.
18920 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
18922         Fix Tramp problems with multihops, and nc
18923         * lisp/net/tramp-cache.el (tramp-get-file-property)
18924         (tramp-set-file-property, tramp-flush-file-property)
18925         (tramp-get-connection-property, tramp-set-connection-property)
18926         (tramp-flush-connection-property): Remove hop from vector.
18927         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
18928         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
18929         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
18930         netstat to 60".
18931         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
18932         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
18933         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
18934         Keep hop in result.
18935         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
18936         Add hop tests.
18938 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
18940         Resurrect highlighting of repeated words by Flyspell Mode
18941         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
18942         characters between point and the doublon candidate, so that
18943         flyspell-word-search-backward finds it.  (Bug#21157)
18945         Fix redisplay of large images on expose events
18946         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
18947         between signed negative values and unsigned values.  This
18948         prevented redisplay on expose events when the window showed a very
18949         large image.
18951 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
18953         Remove unnecessary stack overflow dependency
18954         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
18955         Don't worry about $ac_cv_header_sys_resource_h and
18956         $ac_cv_func_getrlimit, as they're no longer needed for this.
18957         Problem reported by Eli Zaretskii in:
18958         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
18960 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
18962         Pacify compilation -Wincompatible-pointer-types warnings
18963         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
18964         warning.
18965         (CompareStringW_Proc): New typedef.
18966         (w32_compare_strings): Use it, to pacify compiler warnings under
18967         "-Wincompatible-pointer-types".
18968         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
18969         (GetDiskFreeSpaceExA_Proc): New typedefs.
18970         (Ffile_system_info): Use them, to pacify compiler warnings under
18971         "-Wincompatible-pointer-types".
18973 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
18975         Fix subscript error in calculate_direct_scrolling
18976         Use slightly-longer cost vectors.  Without this change,
18977         calculate_direct_scrolling can have a subscript violation when
18978         FRAME_LINES (frame) <= delta.
18979         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
18980         (line_ins_del, do_line_insertion_deletion_costs):
18981         Allocate and use slightly-larger cost vectors, ones based on
18982         FRAME_TOTAL_LINES instead of FRAME_LINES.
18984         Fix uninitalized value in encode_coding_object
18985         * src/coding.c (encode_coding_object): Also initialize
18986         coding->src_pos and coding->src_pos_byte when NILP (src_object).
18987         This avoids later use of uninitialized storage.
18989 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
18991         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
18992         (Bug#21141)
18994 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
18996         Merge from gnulib
18997         This incorporates:
18998         2015-07-27 time_rz: port better to MinGW
18999         2015-07-27 time: port __need_time_t to MinGW
19000         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19001         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
19002         * lib/time-internal.h: New file, from gnulib.
19004 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
19006         Handle NULL pointers in w32heap.c allocation routines
19007         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
19008         freeable".
19009         (realloc_after_dump, realloc_before_dump, free_before_dump):
19010         Handle NULL pointers gracefully, as Emacs now seems to expect that.
19012         Fix Cairo build without PNG
19013         * src/image.c: Define PNG function when USE_CAIRO is defined, even
19014         if HAVE_PNG is not.  (Bug#21133)
19016         MS-Windows follow-up for recent TZ-related changes
19017         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
19018         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
19019         picking up 'struct timespec' from pthread.h, if it is installed on
19020         the user's system.  We want either the definitions from MinGW
19021         system headers, if available, or the Gnulib replacements if not.
19022         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
19023         lib/time.h.
19024         * lib/time.in.h: Don't let __need_* symbols affect what happens on
19025         MinGW.  These symbols are defined by MinGW system headers, but we
19026         don't want that to affect whether Gnulib portions of the header
19027         are or aren't used.
19029 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
19031         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
19033         New optional ZONE arg for format-time-string etc.
19034         This simplifies time conversions in other time zones.
19035         It also prevents display-time-world tampering with TZ (Bug#21020).
19036         * admin/admin.el (add-release-logs):
19037         Use improved add-log-time-format API.
19038         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
19039         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
19040         * configure.ac (tzalloc): Remove test for this, since
19041         Emacs no longer uses HAVE_TZALLOC directly.
19042         * doc/lispref/os.texi (Time of Day, Time Conversion)
19043         (Time Parsing):
19044         * etc/NEWS: Document the new behavior.
19045         Merge from gnulib, incorporating:
19046         2015-07-25 strftime: fix newly-introduced bug on Solaris
19047         2015-07-23 fprintftime, strftime: use timezone_t args
19048         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19049         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
19050         * m4/time_h.m4:
19051         Update from gnulib.
19052         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
19053         New files from gnulib.
19054         * lisp/time-stamp.el (time-stamp-string):
19055         * lisp/time.el (display-time-world-list)
19056         (display-time-world-display):
19057         Use new API, with time zone arg.
19058         * lisp/time.el (display-time-world-display):
19059         Fix race when current-time advances while we're running.
19060         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
19061         (add-log-iso8601-time-string): Accept optional time zone arg.
19062         * lisp/vc/add-log.el (add-change-log-entry):
19063         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
19064         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
19065         Add rules for the time module, since they're now needed
19066         for tzalloc etc.
19067         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
19068         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
19069         * src/editfns.c: Include errno.h.
19070         (set_time_zone_rule): Omit unnecessary forward decl.
19071         (initial_tz): Remove, replacing with ...
19072         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
19073         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
19074         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
19075         (tzlookup): New static functions.
19076         (init_editfns): New arg DUMPING.  All uses changed.
19077         (init_editfns): Omit most initialization if dumping, not if
19078         !initialized.  Initialize wall_clock_tz and local_tz.
19079         (emacs_nmemftime, format_time_string): Time zone argument can now
19080         be any time zone, not just a boolean for UTC or local time.  All
19081         callers changed.
19082         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
19083         (Fcurrent_time_zone): New optional arg ZONE.
19084         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
19085         the same form as with the other new additions.
19086         (decode_time_zone): Remove; no longer needed.
19087         (tzvalbuf): Now file-scope.
19088         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
19089         (syms_of_editfns): Define Qwall.
19090         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
19091         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
19092         [!HAVE_TZALLOC]:
19093         Remove; now supplied by gnulib.
19094         * src/emacs.c (main):
19095         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
19097 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
19099         Fix infinite loop in delete-consecutive-dups
19100         * lisp/subr.el (delete-consecutive-dups): Work even if the last
19101         element is nil (Bug#20588).  Avoid rescan of a circular list in
19102         deletion of last element.
19104 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
19106         Have `x-frame-geometry' return nil for terminal and initial
19107         frames (Bug#21132)
19108         * src/nsfns.m (Fx_frame_geometry):
19109         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
19110         terminal frames.
19111         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
19112         (Fx_frame_geometry): Return nil for terminal frames
19114 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
19116         * etc/tutorials/TUTORIAL.ja: Improve translation.
19118 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
19120         Avoid crashes when w32 GUI functions are called in -batch
19121         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
19122         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
19123         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
19125         Fix flyspell-check-previous-highlighted-word
19126         * lisp/textmodes/flyspell.el
19127         (flyspell-check-previous-highlighted-word): Really accept a
19128         numeric argument, as the doc string describes.  Fix an off-by-one
19129         error in looking up overlays, so invocation with point immediately
19130         after a word would check that word.  Clarify the doc string as
19131         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
19133 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
19135         Minor cleanup in tramp-tests.el
19136         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
19137         Implement using the documented interface
19138         `tramp-connection-properties', rather than with internal functions.
19140 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
19142         Pass lambdas to `skeleton-read'
19143         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
19144         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
19145         lambdas to `skeleton-read' (bug#20386).
19147 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
19149         * INSTALL (DETAILED BUILDING AND INSTALLATION):
19150         Mention --without-imagemagick.
19152         Don't require GUI frames and mouse for Flyspell menus
19153         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
19154         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
19155         support, since pop-up menus work with text terminals and can be
19156         controlled via the keyboard.
19158         Improve documentation of Flyspell commands
19159         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
19160         can be invoked via the keyboard.  Mention those commands by name
19161         and add them to the fn index.  (Bug#21125)
19163 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
19165         Fix some Tramp problems with HP-UX
19166         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
19167         Add "tab0" to stty call.
19168         * test/automated/tramp-tests.el (tramp-persistency-file-name):
19169         Set to nil.
19170         (tramp--test-hpux-p): New defun.
19171         (tramp--test-utf8): Use it.
19173 2015-07-22  Glenn Morris  <rgm@gnu.org>
19175         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
19177 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
19179         Fix point positioning in ffap-next-guess
19180         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
19181         as our callers expect.  This was clobbered as part of fixing
19182         bug#5673.  (Bug#21107)
19183         (ffap-gopher-at-point): Set ffap-string-at-point-region.
19185 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
19187         * lisp/window.el (even-window-sizes): Fix customization type.
19189         Optionally even widths of `display-buffer' windows.  (Bug#21100)
19190         * lisp/window.el (quit-restore-window): Restore width if
19191         requested.
19192         (display-buffer-record-window): Record width when window is
19193         reused and horizontally combined.
19194         (even-window-sizes): New option to allow evening window widths.
19195         (even-window-heights): Defalias to `even-window-sizes'.
19196         (window--even-window-heights): Rename to
19197         `window--even-window-sizes'.  Handle side-by-side windows.
19198         (display-buffer-use-some-window): Call `window--even-window-sizes'
19199         instead of `window--even-window-heights'.
19200         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
19201         * doc/lispref/windows.texi (Choosing Window Options): Describe
19202         `even-window-sizes'.
19203         (Coordinates and Windows): Fix typo.
19205 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
19207         Add file name to autoload error messages
19208         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
19209         Add condition-case to add file name to error message.
19211 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
19213         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
19214         Use 0.0.0.1 as test host.
19216 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19218         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
19219         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
19220         Fix inf-loop (bug#21083).
19222 2015-07-21  Glenn Morris  <rgm@gnu.org>
19224         * test/automated/package-test.el (package-test-signed):
19225         Update for recent changes.
19227         * test/automated/elisp-mode-tests.el
19228         (elisp-xref-finds-both-function-and-variable)
19229         (elisp-xref-finds-only-function-for-minor-mode):
19230         Update for recent xref name changes.
19232 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
19234         Make eldoc timer non-repeatable
19235         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
19236         non-repeatable.  Since it's on post-command hook, that just wasted
19237         CPU cycles.
19239 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
19241         Mention `tramp-connection-properties' in NEWS
19243         Sync with Tramp repository
19244         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
19245         required prior changing its configuration.
19246         (Connection caching, Predefined connection information)
19247         (Remote shell setup): Fix typos.
19248         (Predefined connection information): Describe, how to overwrite
19249         parameters of `tramp-methods'.
19250         (Remote programs, Remote processes, Traces and Profiles):
19251         Simplify example.
19252         (Remote programs): Remove superfluous comment.
19253         * doc/misc/trampver.texi: Update release number.
19254         * lisp/net/tramp-cache.el (tramp-connection-properties):
19255         Adapt docstring.
19256         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
19257         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
19258         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
19259         "gvfs-mkdir -p ..." does not work robust.
19260         (tramp-gvfs-maybe-open-connection):
19261         Adapt `tramp-get-method-parameter' call.
19262         * lisp/net/tramp-sh.el (tramp-methods):
19263         Add `tramp-remote-shell-login' parameter where it fits.
19264         (tramp-get-remote-path): Use it.
19265         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
19266         (all): Adapt `tramp-get-method-parameter' calls.
19267         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
19268         (tramp-get-method-parameter): Replace argument METHOD by VEC.
19269         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
19270         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
19271         (all): Adapt `tramp-get-method-parameter' calls.
19272         * lisp/net/trampver.el: Update release number.
19273         * test/automated/tramp-tests.el (tramp--instrument-test-case):
19274         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
19275         (tramp-test13-make-directory, tramp--test-adb-p)
19276         (tramp--test-smb-or-windows-nt-p): Simplify.
19277         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
19278         (tramp--test-special-characters): Fix docstring.  Add gvfs and
19279         ftp tests.
19280         (tramp--test-utf8): Fix docstring.
19282 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
19284         Add new xref-query-replace command
19285         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
19286         New function, extracted from xref-pulse-momentarily.
19287         (xref-query-replace): New command.
19288         (xref--query-replace-1): New helper function.
19289         (xref--xref-buffer-mode-map): Add `r' binding.
19291 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
19293         Simplify icalendar decoding of Z dates
19294         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
19295         Simplify calculation of time strings with trailing "Z".
19297 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
19299         Do not corrupt grep-find-ignored-files
19300         * lisp/progmodes/project.el (project-ignores): Change the order of
19301         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
19303         Add xref-match-item, and use it
19304         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
19305         (xref-file-location): Add reader for the column slot.
19306         (xref-match-item): New class.
19307         (xref-match-bounds): A method implementation for it.
19308         (xref-make-match): New constructor function.
19309         (xref--current-item): New private variable.
19310         (xref-pulse-momentarily): Use it.
19311         (xref--pop-to-location): Change the first argument to an xref
19312         item, instead of location, bind xref--current-item.
19313         Update all callers.
19314         (xref-next-line, xref-prev-line, xref--next-error-function)
19315         (xref--mouse-2): Look for the property `xref-item',
19316         instead of `xref-location'.
19317         (xref--item-at-point): Likewise.  This function replaces
19318         `xref-location-at-point'.  Update all callers.
19319         (xref--insert-xrefs): Add the `xref-item' text property, instead
19320         of `xref-location'.
19321         (xref--collect-match): Use xref-make-match.
19323         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
19324         Update all references.
19326         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
19327         slot to `summary'.
19329         vc-hg: Perform the print-log call asynchronously
19330         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
19331         asynchronously (bug#21067).
19333         Add xref-after-jump-hook and xref-after-return-hook
19334         * lisp/progmodes/xref.el (xref-after-jump-hook)
19335         (xref-after-return-hook): New hooks.
19336         (xref-pulse-on-jump): Remove, in favor of the above.
19337         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
19338         (xref--pop-to-location, xref--display-position)
19339         (xref-pop-marker-stack): Use the new hooks, as requested in
19340         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
19342 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
19344         * lisp/progmodes/js.el (js-mode): Correct the lighter.
19346 2015-07-19  Leo Liu  <sdl.web@gmail.com>
19348         Fix a bug in cfengine3-mode
19349         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
19350         eldoc-documentation-function.
19352 2015-07-18  Julien Danjou  <julien@danjou.info>
19354         sieve-mode: support "body" test command
19355         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
19356         Add missing "body" test command.
19358 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
19360         Fix info-apropos when the default encoding is Latin-N
19361         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
19362         'undecided', so that it is set to the encoding of the Info file we
19363         are about to insert.  Otherwise, 'info-apropos' will fail to find
19364         some index nodes in some UTF-8 encoded files, if the buffer's
19365         previous encoding is Latin-N or some such.
19367 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
19369         * lisp/epg.el (epg--start): Check that gpgconf can be found
19370         before calling it.
19372         Expose more file types to OS X that Emacs understands
19373         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
19374         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
19376 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
19378         Fix visual-order cursor movement when lines are truncated
19379         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
19380         simulate display in a window of infinite width, to allow move_it_*
19381         functions reach positions outside of normal window dimensions.
19382         Remove code that tried to handle a subset of these situations by
19383         manual iteration of buffer text.  (Bug#17777)
19385         Fix following Info cross-references to anchors
19386         * lisp/info.el (Info-read-subfile): Add to the returned value the
19387         length of subfile preamble, after converting it to file's byte
19388         offset, as expected by the caller.  Use bufferpos-to-filepos.
19389         (Info-find-node-2): If searching for a node with a
19390         1000-character slop fails, try again with a 10000-character slop,
19391         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
19392         * lisp/international/mule-util.el (bufferpos-to-filepos): New
19393         function.
19394         * etc/NEWS: Mention bufferpos-to-filepos.
19396         Fix scrolling backwards on TTY frames under scroll-conservatively
19397         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
19398         in moving backwards on TTY frames.  (Bug#21080)
19400 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
19402         Consider a jsdoc tag to be a beginning of a paragraph as well
19403         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
19404         consider a jsdoc tag to be a beginning of a paragraph as well.
19406 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
19408         * lisp/emacs-lisp/package.el: Fix warnings.
19410         * lisp/emacs-lisp/package.el (package-buffer-info):
19411         Add author and maintainers to `package-buffer-info'.
19413         * lisp/emacs-lisp/package.el: Many small changes.
19414         Replace all instances of 'face with 'font-lock-face.
19415         (describe-package-1): Improve some strings and move the summary
19416         up the list.
19417         (package-install-file): Update docstring.
19418         (package-menu-hide-package): Bind to `H'.
19420         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
19421         Fix error handling.
19423 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
19425         Fix hang with large yanks This should fix the bug fixed by Mike
19426         Crowe's patch in:
19427         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
19428         A problem in this area has been reported by several users; see
19429         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
19430         This fix differs from Mike Crowe's patch in that it should avoid a
19431         race condition that could lose SIGIO signals.  ignore_sigio dates
19432         back to the 1980s when some platforms couldn't block signals, and
19433         could only ignore them, which led to races when signals arrived
19434         while being ignored.  We shouldn't have to worry about those old
19435         platforms now.
19436         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
19437         * src/emacs.c (shut_down_emacs):
19438         Don't call ignore_sigio; unrequest_sigio should suffice.
19439         * src/keyboard.c (kbd_buffer_store_buffered_event):
19440         Use unrequest_sigio, not ignore_sigio.
19441         (kbd_buffer_get_event):
19442         Call request_sigio when getting the ball rolling again.
19444 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
19446         * lisp/obsolete/longlines.el (longlines-search-function):
19447         Fallback on `isearch-search-fun-default'.
19449 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
19451         Support @-mentions
19452         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
19453         of mentions/messages with @nick instead of just nick.
19455 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
19457         Fix bug#20943
19458         * lisp/autorevert.el (auto-revert-handler): Do not check for
19459         `buffer-modified-p'.
19460         * lisp/files.el (buffer-stale--default-function): Check for
19461         `buffer-modified-p'.
19462         * test/automated/auto-revert-tests.el
19463         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
19465 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
19467         Fix delete-dups bug on long lists
19468         * lisp/subr.el (delete-dups):
19469         Don't mistakenly keep some dups when applied to long lists.
19471 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
19473         Better heuristic for C stack overflow
19474         Improve the heuristic for distinguishing stack overflows from
19475         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
19476         the getrlimit method wasn't portable to Cygwin; see:
19477         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
19478         Corinna suggested pthread_getattr_np but this also has problems.
19479         Instead, replace the low-level system stuff with a simple
19480         heuristic based on known good stack addresses.
19481         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
19482         * src/sysdep.c: Don't include <sys/resource.h>.
19483         (stack_direction): Remove.  All uses removed.
19484         (stack_overflow): New function.
19485         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
19486         Make SEGV fatal in non-main threads.
19488 2015-07-16  Daiki Ueno  <ueno@gnu.org>
19490         epg: Automatically start pinentry server
19491         * lisp/epg-config.el (epg-gpgconf-program): New variable.
19492         * lisp/epg.el (epg--start): Call `pinentry-start' if
19493         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
19495 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
19497         * lisp/gnus/nnimap.el: Fix my last bogus change.
19498         Reinstall Stefan Monnier's change that was made in
19499         <83d824bc4041332f338ad7e5e830f443535aa300>.
19501 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
19503         Merge from gnulib
19504         This incorporates:
19505         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
19506         2015-07-05 acl-permissions: Fix on FreeBSD
19507         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
19508         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
19509         * lib/set-permissions.c: Copy from gnulib.
19511         Port to stricter C99
19512         * src/keyboard.h (kbd_buffer_store_event_hold):
19513         Don't return a void expression.
19515 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
19517         * doc/emacs/frames.texi (Creating Frames):
19518         Fix the command `C-x 5 m' runs.
19520 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
19522         New autorevert tests
19523         * test/automated/auto-revert-tests.el: New file.
19525 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
19527         Clear gcprolist etc. after stack overflow
19528         After stack overflow, command_loop calls init_eval, and this needs to
19529         clear gcprolist and byte_stack_list (Bug#20996).
19530         * src/alloc.c (init_alloc):
19531         Move gcprolist and byte_stack_list initialization from here ...
19532         * src/eval.c (init_eval): ... to here.
19534 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
19536         * doc/emacs/windows.texi (Pop Up Window): Fix the description
19537         of `C-x 4 m'.
19539 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19541         Avoid deprecated enums in mac-ct font backend driver
19542         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
19543         (mac_ctfont_get_advance_width_for_glyph)
19544         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
19546         Cache font family in mac-ct font backend driver
19547         * src/macfont.m (macfont_family_cache): New variable.
19548         (syms_of_macfont): Initialize it.
19549         (macfont_available_families_cache): New variable.
19550         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
19551         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
19552         (macfont_handle_font_change_notification)
19553         (macfont_init_font_change_handler)
19554         (macfont_copy_available_families_cache): New functions.
19555         (macfont_create_family_with_symbol): Use font family caches.
19556         (macfont_list, macfont_list_family):
19557         Use macfont_copy_available_families_cache instead of
19558         mac_font_create_available_families.
19560 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
19562         Show the default value in the prompt
19563         * lisp/progmodes/xref.el: Add `M-?' binding for
19564         xref-find-references.  Declare functions `grep-read-files' and
19565         `grep-expand-template'.
19566         (xref--read-identifier): Show the default value in the prompt.
19568         * lisp/progmodes/xref.el (xref-find-regexp): When called with
19569         prefix argument, ask for file patterns to search as well.  When
19570         prompting for the directory, require an existing one.
19571         (xref-collect-matches): Add a new argument, FILES.  Use it in the
19572         above function.
19574         Add `project-ignores'
19575         * lisp/progmodes/project.el (project-ignores): New generic
19576         function, and an implementation for the VC project type.
19577         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
19578         variant of rgrep-default-command that handles a generic list of
19579         ignores.
19580         (xref-collect-matches): Use it, and pass through to it the value
19581         of the newly added argument.
19582         (xref-find-regexp): Handle ignored paths within the project.
19583         Remove outdated comment.
19584         * lisp/vc/vc.el (vc-default-ignore-completion-table):
19585         Skip the comments and the empty lines.
19587 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
19589         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
19591 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
19593         gnus-registry.el: Correct function argument order
19594         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
19595         Reverse the order of function arguments.
19597 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
19599         Bind grep-highlight-matches to nil
19600         * lisp/progmodes/xref.el (xref-collect-matches):
19601         Bind grep-highlight-matches to nil (bug#20728).
19603 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
19605         nnimap.el: Fix IMAP message size parsing
19606         * lisp/gnus/nnimap.el (nnimap-transform-headers):
19607         Don't assume that UID comes before RFC822.SIZE.
19609 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
19611         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
19612         (auth-source-creation-prompts): Declare.
19613         (nnimap-retrieve-headers, nnimap-status-message)
19614         (nnimap-request-create-group, nnimap-request-delete-group)
19615         (nnimap-close-group, nnimap-request-move-article)
19616         (nnimap-request-accept-article, nnimap-request-newgroups)
19617         (nnimap-request-post, nnimap-dummy-active-number)
19618         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
19619         (nnimap-parse-flags): Remove unused var `p'.
19620         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
19621         (nnimap-flags-to-marks): Remove unused var `totalp'.
19623 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
19625         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
19627 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19629         * src/macfont.m (macfont_list): Ignore font families lacking
19630         font descriptors.
19632 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
19634         Don't check the exit status, it can be misleading
19635         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
19636         exit status, it can be misleading.
19638         Introduce a Project API
19639         * lisp/progmodes/project.el: New file.
19640         * lisp/cedet/ede.el (project-try-ede): New function.
19641         (project-root): New implementation.
19642         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
19643         Set project-search-path-function.
19644         (elisp--xref-find-references): Delegate some logic to
19645         project-search-path.
19646         (elisp-search-path): New function.
19647         (elisp-xref-find): Don't implement `matches' anymore.
19648         * lisp/progmodes/etags.el: Don't implement `matches'.
19649         Delegate some logic to project-search-path.
19650         (etags-search-path): New function.
19651         * lisp/progmodes/xref.el (xref-find-function):
19652         Remove `matches' from the API.
19653         (xref-find-regexp): Move whatever common logic was in elisp and
19654         etags implementations, and search the directories returned by
19655         project-directories and project-search-path.
19657 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
19659         * test/automated/map-tests.el (test-map-delete-return-value):
19660         Uncomment test.
19662         Add support for gv.el in map.el
19663         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
19664         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
19665         * test/automated/map-tests.el: Update tests to work with the new
19666         implementations of map-elt and map-put.
19668 2015-07-09  Glenn Morris  <rgm@gnu.org>
19670         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
19672 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
19674         Syntax-propertize until the end of the line first
19675         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
19676         until the end of the line first.
19678 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
19680         * doc/emacs/files.texi (File Archives): Add a cross reference.
19682 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
19684         nnimap.el: Handle plain value for nnimap-stream
19685         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
19686         capabilities, so that a 'plain value for the `nnimap-stream' server
19687         variable is handled correctly.
19688         * doc/misc/gnus.texi (Customizing the IMAP Connection):
19689         Document the 'plain option.
19691 2015-07-08  Leo Liu  <sdl.web@gmail.com>
19693         Fix bug in thing-at-point--bounds-of-well-formed-url
19694         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
19695         sure boundary contains current point.
19697 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
19699         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
19700         in the end.
19702         Declare whitespace-line-column a safe file-local
19703         * lisp/whitespace.el (whitespace-line-column): Declare to be a
19704         safe file-local when the value is an integer.
19706 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
19708         gnus-group.el: Check if group names are already strings
19709         * lisp/gnus/gnus-group.el (gnus-group-group-name):
19710         The group name may already be a string.
19711         Specifically, in the group list reached from the *Server* buffer,
19712         the 'gnus-group text property returns a string.  Everywhere else
19713         it returns a symbol.
19715         nnimap.el: Remove unused let variables
19716         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
19718 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
19720         Support "maximized" property of runemacs's shortcut
19721         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
19722         the '--maximized' switch to Emacs.
19724         Support "minimized" property of runemacs's shortcut
19725         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
19726         pass the '--iconic' switch to Emacs.  (Bug#20991)
19728 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
19730         Doc fixes
19731         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
19732         C-w' in Diff mode.
19733         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
19734         Add a cross reference.
19736 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
19738         * lisp/obsolete/landmark.el: Add Obsolete-since header.
19740 2015-07-07  Glenn Morris  <rgm@gnu.org>
19742         * test/automated/ert-tests.el (ert-test-deftest):
19743         Update for recent changes.
19745 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19747         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
19748         * lisp/emacs-lisp/gv.el (gv-setter): New function.
19749         (gv-invalid-place): New error.
19750         (gv-get): Use them.
19751         (gv-synthetic-place, gv-delay-error): New places.
19752         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
19753         (cl-defgeneric, cl-defmethod): Use gv-setter.
19755 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
19757         Make vc-tests work with MSYS svn program
19758         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
19759         svn is an MSYS program.
19761 2015-07-07  Ken Brown  <kbrown@cornell.edu>
19763         Improve recent change to emacsclient on Cygwin
19764         * lisp/server.el (server-process-filter): Remove redundant check
19765         that 'cygwin-convert-file-name-from-windows' is defined as a
19766         function on Cygwin.  Don't call that function unless its argument
19767         starts with a drive letter.
19769 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
19771         * lisp/emacs-lisp/package.el (package-compute-transaction):
19772         Fix void variable due to `found-something' being in the wrong `let'.
19774 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
19776         * lisp/play/landmark.el: Move to lisp/obsolete/.
19778 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
19780         Have `x-show-tip' handle `right' and `bottom' frame parameters
19781         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
19782         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
19783         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
19784         tooltips also via `right' and `bottom' frame parameters.
19786 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19788         Add online-help support to describe types
19789         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
19790         (describe-symbol): Improve the selection of default.
19791         * lisp/help-mode.el: Require cl-lib.
19792         (describe-symbol-backends): Move from help-fns.el.
19793         (help-make-xrefs): Use it.
19794         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
19795         for types.
19796         (cl--typedef-regexp): New const.
19797         (find-function-regexp-alist): Add entry for types.
19798         (cl-help-type, cl-type-definition): New buttons.
19799         (cl-find-class): New function.
19800         (cl-describe-type): New command.
19801         (cl--describe-class, cl--describe-class-slot)
19802         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
19803         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
19804         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
19805         New functions.  Moved from eieio-opt.el.
19806         (cl--generic-class-parents): New function, extracted from
19807         cl--generic-struct-specializers.
19808         (cl--generic-struct-specializers): Use it.
19809         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
19810         Improve constructor's docstrings.
19811         (cl-struct-unknown-slot): New error.
19812         (cl-struct-slot-offset): Use it.
19813         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
19814         definition in current-load-list.
19815         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
19816         (eieio--add-new-slot): Set it.
19817         (eieio-defclass-internal): Use new name for current-load-list.
19818         (eieio-oref): Add compiler-macro to warn about unknown slots.
19819         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
19820         as compile-time as well.  Improve constructor docstrings.
19821         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
19822         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
19823         (eieio-class-def): Remove button.
19824         (eieio-help-constructor): Use new name for load-history element.
19825         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
19826         (eieio-method-documentation): Move to cl-generic.el.
19827         (eieio-display-method-list): Use new names.
19828         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
19829         Add "define-linline".
19830         (lisp-fdefs): Remove "defsubst".
19831         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
19832         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
19833         (macroexp--warn-and-return): Use it to avoid inf-loops.
19834         Add `compile-only' argument.
19836 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19838         python.el: Fix local/remote shell environment setup
19839         * lisp/progmodes/python.el (python-shell-with-environment):
19840         Fix remote/local environment setup.
19841         * test/automated/python-tests.el (python-shell-with-environment-1)
19842         (python-shell-with-environment-2): New tests.
19844 2015-07-06  Glenn Morris  <rgm@gnu.org>
19846         * lisp/simple.el (set-variable): Tweak recent doc fix.
19848 2015-07-06  Ken Brown  <kbrown@cornell.edu>
19850         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
19852 2015-07-06  Glenn Morris  <rgm@gnu.org>
19854         * lisp/simple.el (set-variable): Use user-error for type mismatch.
19856 2015-07-06  Ken Brown  <kbrown@cornell.edu>
19858         * src/emacs.c (main): Don't increase the stack size on Cygwin.
19860 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
19862         (describe-symbol): Rewrite describe-function-or-variable
19863         * lisp/help-fns.el (describe-symbol-backends): New var.
19864         (help-xref-stack-item): Declare.
19865         (describe-symbol): Rename from describe-function-or-variable.
19866         Rewrite using describe-symbol-backends instead of help-xref-interned.
19867         * lisp/help.el (help-map): Use it.
19868         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
19869         (help-xref-interned): Make it into an obsolete alias.
19871         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
19872         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
19873         and cl-letf.
19875 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
19877         Fix parsing glitches in dired-mark-sexp (bug#13575)
19878         * lisp/dired-x.el (dired-x--string-to-number): New function.
19879         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
19880         of directory-listing-before-filename-regexp.  Consider
19881         forward-word harmful and replace it.  Add more verbiage in
19882         comments and doc string.
19884 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19886         python.el: Respect process environment for remote shells
19887         * lisp/progmodes/python.el
19888         (python-shell-calculate-process-environment): Calculate
19889         process-environment or tramp-remote-process-environment depending
19890         whether current file is remote.
19891         (python-shell-calculate-exec-path): Calculate exec-path or
19892         tramp-remote-path depending whether current file is remote.
19893         (python-shell-with-environment): New macro.
19894         (python-shell-prompt-detect, python-shell-calculate-command)
19895         (python-shell-make-comint, python-check): Use it.
19897         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
19898         * lisp/progmodes/python.el (python-shell--interpreter)
19899         (python-shell--interpreter-args): New vars.
19900         (inferior-python-mode, python-shell-make-comint): Use them.
19902         python.el: Fixes for IPython 3.x  (Bug#20580)
19903         * lisp/progmodes/python.el:
19904         (python-shell-completion-native-setup): Fix IPython 3.x setup.
19905         (python-shell-completion-native-get-completions): Fix timeout
19906         logic.
19908         python.el: Fix mark-defun behavior  (Bug#19665)
19909         * lisp/progmodes/python.el (python-mark-defun): New function.
19910         * test/automated/python-tests.el (python-mark-defun-1)
19911         (python-mark-defun-2, python-mark-defun-3): New tests.
19913 2015-07-05  Glenn Morris  <rgm@gnu.org>
19915         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
19916         such as "extends(parent), private".  (Bug#20969)
19917         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
19918         New tests.
19920 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
19922         Avoid duplicate calls to current_timespec
19923         * src/process.c (wait_reading_process_output):
19924         Cache current_timespec results as long as we're not waiting.
19926 2015-07-05  Ian Kelling  <ian@iankelling.org>
19928         Avoid returning early reading process output due to SIGIO
19929         * src/process.c (wait_reading_process_output): Extend the behavior of
19930         not breaking due to not finding output when a timer has lowered the
19931         timeout to include when SIGIO lowers the timeout.
19933         Don't return as fast reading any process output
19934         * src/process.c (wait_reading_process_output):
19935         The patch for Bug#17647 returns too fast sometimes when reading
19936         from any processes.  Revert part of it, and limit the timeout more
19937         sensibly (Bug#20978).
19939         Refactor timeouts in wait_reading_process_output
19940         * src/process.c (wait_reading_process_output):
19941         Simplify timeouts with an enum.  Remove a redundant condition.
19942         (Bug#20978)
19944         Remove ADAPTIVE_READ_BUFFERING ifdef
19945         * src/process.c (make-process, make-pipe-process, deactivate_process)
19946         (wait_reading_process_output, read_process_output, send_process)
19947         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
19948         added in case there was an operating system in which it was not
19949         useful.  That was 11 years ago and it hasn't happened.  Make
19950         development easier by not considering the effect of changes on a
19951         theoretical OS where this is disabled (Bug#20978).
19953 2015-07-05  Glenn Morris  <rgm@gnu.org>
19955         * lisp/simple.el (set-variable): Doc fix.
19957         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
19959 2015-07-05  Ian Kelling  <ian@iankelling.org>
19961         accept-process-output fix
19962         This is a followon to the fix for bug#17647 (Bug#20976).
19963         * src/process.c (status_notify): Fix too high return in some cases.
19965 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
19967         * lisp/character-fold.el (character-fold-table):
19968         Only fold decompositions if at least one character is non-spacing.
19969         (Bug#20975)
19971 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
19973         Merge from gnulib
19974         This incorporates:
19975         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
19976         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
19977         2015-07-02 update-copyright: fix test failure with perl >= 5.22
19978         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
19979         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
19980         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
19981         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
19983 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
19985         Respect `prog-indentation-context' in python.el
19986         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
19987         (python-indent-context, python-indent--calculate-indentation)
19988         (python-info-current-defun)
19989         (python-info-dedenter-opening-block-message)
19990         (python-info-line-ends-backslash-p)
19991         (python-info-beginning-of-backslash)
19992         (python-info-continuation-line-p): Use `prog-widen'.
19993         (python-indent--calculate-indentation)
19994         (python-indent--calculate-levels)
19995         (python-indent-calculate-indentation): Use `prog-first-column'.
19996         (python-indent--calculate-levels): Simplify.
19997         Ignore also initial empty lines for syntax calculation.
19998         * lisp/progmodes/python.el (python-indent-context): Return
19999         :no-indent for first non-empty line, not just in line 1.
20000         * test/automated/python-tests.el (python-indent-base-case)
20001         (python-indent-inside-paren-1, python-indent-inside-paren-2)
20002         (python-indent-inside-paren-3, python-indent-inside-paren-4)
20003         (python-indent-inside-paren-5, python-indent-inside-paren-6)
20004         (python-indent-after-backslash-1)
20005         (python-indent-after-backslash-2)
20006         (python-indent-after-backslash-3)
20007         (python-indent-after-backslash-4, python-indent-inside-string-1):
20008         Expect :no-indent for first non-empty line.
20010 2015-07-04  Daniel Colascione  <dancol@dancol.org>
20012         Factor isearch word description into new function
20013         * lisp/isearch.el (isearch--describe-word-mode): New function.
20014         (isearch-message-prefix, isearch-query-replace): Use it.
20016 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
20018         Fix mouse pointer on w32 when a menu is active
20019         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
20020         shape while a menu is in use.  This started happening since we now
20021         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
20023 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
20025         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
20026         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
20027         parameter.  (Bug#17344)
20029         Have `compilation-set-window' use right window for getting fringes
20030         (Bug#20829)
20031         * lisp/progmodes/compile.el (compilation-set-window):
20032         Take `window-fringes' from argument window.
20034 2015-07-03  Glenn Morris  <rgm@gnu.org>
20036         Update eieio tests for recent eieio-core change.
20037         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
20038         * test/automated/eieio-tests.el
20039         (eieio-test-32-slot-attribute-override-2):
20040         Replace the deleted eieio--class-v with cl--find-class.
20042 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
20044         Fix some issues with `window-divider-mode'
20045         * lisp/frame.el (window-divider-default-places): New option.
20046         (window-divider-mode): Remove option.
20047         (window-divider-mode): Make it a "regular" minor mode.
20048         (window-divider-width-valid-p): Drop frame- prefix.
20049         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
20050         prefix.  Handle `window-divider-default-places'.
20051         (frame--window-divider-mode-set-and-apply): Remove.
20052         (window-divider-default-bottom-width)
20053         (window-divider-default-right-width): Drop :group entries.
20054         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
20055         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
20056         (menu-bar-no-window-divider): Set `window-divider-default-places'
20057         and call `window-divider-mode'.
20058         * doc/emacs/frames.texi (Window Dividers): Document
20059         `window-divider-default-places'.
20061 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
20063         * doc/emacs/display.texi (Displaying Boundaries):
20064         * doc/emacs/search.texi (Word Search): Add cross references.
20066 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
20068         -batch should not affect ‘’ -> `' display
20069         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
20070         -batch (Bug#20926).
20072 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
20074         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
20075         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
20076         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
20077         Use cl--find-class instead.
20079         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
20081 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
20083         Some further fixes in Change Window node (Bug#20183)
20084         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
20085         by "resizing" in section title.  Add some concept indices.
20086         Suggested by N. Jackson (Bug#20183).
20088         * doc/emacs/windows.texi (Change Window): Reference window
20089         dividers.
20091         Document new `window-divider-mode'.
20092         * lisp/frame.el (window-divider-mode): Fix doc-string.
20093         * doc/emacs/frames.texi (Window Dividers): New section.
20095         Improve accessibility of window dividers (Bug#20183)
20096         * lisp/faces.el (window-divider)
20097         (window-divider-first-pixel, window-divider-last-pixel): Change
20098         membership from `frames' to `window-divider' customization group.
20099         * lisp/frame.el (window-divider): New customization group.
20100         (window-divider-mode): New minor mode.
20101         (window-divider-default-bottom-width)
20102         (window-divider-default-right-width): New options.
20103         (frame--window-divider-previous-mode): New variable.
20104         (frame-window-divider-width-valid-p)
20105         (frame--window-divider-mode-apply)
20106         (frame--window-divider-mode-set-and-apply): New functions.
20107         * lisp/menu-bar.el (menu-bar-options-save): Save
20108         window-divider-mode settings.
20109         (menu-bar-window-divider-customize)
20110         (menu-bar-bottom-and-right-window-divider)
20111         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
20112         (menu-bar-no-window-divider): New functions.
20113         (menu-bar-showhide-window-divider-menu): New variable.
20114         (menu-bar-showhide-menu): Show/hide window divider menu.
20115         * lisp/mouse.el (mouse-split-window-vertically)
20116         (mouse-split-window-horizontally): Replace `error' by
20117         `user-error'.  Bind `window-combination-resize' to nil.
20118         (top-level): Add/reorder mouse key bindings on mode- and
20119         vertical-line.
20121 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
20123         Don't display ‘’ as `' under X in en_GB
20124         The curved quote setup code invokes (char-displayable-p ?‘),
20125         but this isn’t reliable until after the X frame replaces the
20126         terminal frame (Bug#20926).
20127         * lisp/international/mule-cmds.el (set-locale-environment):
20128         Move curved quote setup code from here ...
20129         * lisp/startup.el (command-line): ... to here, after creating
20130         the X frame.
20132 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
20134         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
20136         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
20137         to reverse the meaning (Bug#15631).
20139 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
20141         Be more tolerant to fonts named "Foobar-12"
20142         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
20143         don't barf; instead, request a new fontset to be generated.  This
20144         avoids unnecessarily rejecting fonts named against XLFD rules.  See
20145         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
20146         for the description of the original problem.
20147         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
20148         by a hyphen in a font's name.
20150         Fix value of posn-at-pont in R2L lines
20151         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
20152         coordinate of -1, for a newline in a right-to-left line that
20153         overflowed into the left fringe.
20155 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
20157         (cl--copy-slot-descriptor): Copy the `props' alist as well
20158         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
20159         Rename from cl--copy-slot-descriptor.
20160         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
20162 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
20164         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
20165         (xterm-query-timeout): New var.
20166         (xterm--query): Use it.  Fallback on async method if we timeout before
20167         getting the first byte of the reply (bug#12354).
20169 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
20171         Spelling fixes
20172         * lisp/character-fold.el (character-fold-search):
20173         * lisp/emacs-lisp/package.el (package-hidden-regexps):
20174         Fix typos.
20176 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
20178         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
20180 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
20182         In strings, prefer plain ` and ' to \` and \'
20183         * lisp/allout.el (allout-insert-listified):
20184         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
20185         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
20186         (ls-lisp-string-lessp):
20187         * lisp/menu-bar.el (menu-bar-open):
20188         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
20189         * lisp/progmodes/compile.el (compile):
20190         * lisp/progmodes/etags.el (tags-loop-scan):
20191         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
20192         * lisp/subr.el (posn-actual-col-row):
20193         * lisp/term/pc-win.el (x-list-fonts):
20194         * lisp/textmodes/texinfmt.el (texinfmt-version):
20195         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
20196         * lisp/time.el (display-time-world-list):
20197         * lisp/tmm.el (tmm-menubar):
20198         * src/buffer.c (syms_of_buffer):
20199         * src/fileio.c (syms_of_fileio):
20200         Omit unnecessary and confusing backslash before quote.
20201         * lisp/erc/erc.el (erc-cmd-LASTLOG):
20202         * lisp/progmodes/flymake.el (flymake-fix-file-name):
20203         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
20204         Fix string that was intended to escape a backslash and not a quote.
20206 2015-06-30  Glenn Morris  <rgm@gnu.org>
20208         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
20210         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
20211         Replace hard-coded lists with wildcard + filter-out.
20213         * configure.ac (system-configuration-features): Add X11, NS.
20215         Improve reproducibility of generated loaddefs file
20216         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
20217         Make the return value the modtime of the input file (if no autoloads).
20218         (update-directory-autoloads): In the "no autoloads" section,
20219         use "most recent modtime" rather than "current time".
20221 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20223         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
20224         (Bug#20930)
20226 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
20228         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
20230         Add seq-min and seq-max
20231         Bump version number.
20232         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
20233         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
20235 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
20237         Make sure sleep-for always delays for as long as it's told
20238         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
20239         a loop, to ensure we always wait exactly the required amount of
20240         time.  (Bug#15990)
20242 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
20244         Fix pointer signedness glitch
20245         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
20247 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
20249         Don't block changes in mouse pointer inside 'track-mouse'
20250         * etc/NEWS:
20251         * doc/lispref/frames.texi (Mouse Tracking): Document the special
20252         effect of setting 'track-mouse' to 'dragging'.
20253         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
20254         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
20255         * lisp/mouse-drag.el (mouse-drag-throw):
20256         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
20257         to avoid changes in the shape of the mouse pointer.
20258         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
20259         pointer shape when do_mouse_tracking has the value of 'dragging',
20260         not just any non-nil value.  (Bug#20934)
20261         (syms_of_xdisp): DEFSYM 'dragging'.
20263 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20265         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
20267         * lisp/emacs-lisp/package.el (package-compute-transaction):
20268         Don't assume version sorting.
20270         * lisp/emacs-lisp/package.el (package--save-selected-packages):
20271         Don't save before init time, to avoid overwriting configurations.
20272         (Bug#20855)
20274 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
20276         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
20277         references.
20279 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
20281         Update for the upcoming CFEngine 3.7 release: support macros and
20282         quoted context strings; reformat JSON; indent promise attributes 2
20283         units by default; give function parameter descriptions in the eldoc
20284         glue.
20285         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
20286         Autoload `json-pretty-print'.  Support new features in 3.7.
20287         (cfengine-parameters-indent): Set default promise attribute indent to
20288         2 more than the promise itself.
20289         (cfengine3-macro-regex): New variable to match the new macro syntax.
20290         (cfengine3-font-lock-keywords): Use it to highlight macros.
20291         (cfengine3-indent-line): Use it to indent macros to column 0.
20292         (cfengine3-class-selector-regex): Update for the new quoted strings
20293         format.
20294         (cfengine3-reformat-json-string): New function to reformat a JSON
20295         string using `json-pretty-print'.
20296         (cfengine3-format-function-docstring): Use function parameter
20297         description if it's provided by the cf-promises syntax dump.
20299 2015-06-29  Michael R. Mauger  <michael@mauger.com>
20301         Cygwin emacsclient handles w32 file names
20302         * lisp/server.el (server-process-filter): Allow Cygwin's
20303         emacsclient to be used as a file handler on MS-Windows.
20305 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
20307         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
20308         (bug#20925).
20310 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
20312         * doc/lispref/text.texi (Sticky Properties): Improve wording.
20313         (Bug#20924)
20315         Allow font names that end in "-NN", where NN is a number
20316         * src/font.c (font_load_for_lface): If the font-spec didn't match
20317         any available fonts, try again without interpreting trailing "-NN"
20318         as the font size.  For the description of the original problem, see
20319         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
20321         .gdbinit followup to changes in !USE_LSB_TAG
20322         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
20323         !USE_LSB_TAG, as Emacs no longer does.
20325 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
20327         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
20328         Otherwise `s p' of f and F will stomp on each other's value.
20329         (Bug#20916)
20331 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
20333         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
20334         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
20336 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
20338         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
20339         as additional guess.
20341         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
20342         to a string.
20344 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
20346         apropos-library quoting fix
20347         * lisp/apropos.el (apropos-library): Quote library consistently
20348         with the rest of the quoting used by apropos.
20350         Clarify interpreter-mode-alist doc
20351         * lisp/files.el (interpreter-mode-alist):
20352         Reword to avoid confusing quoting that wasn't working anyway.
20354 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
20356         Sync with Tramp 2.2.12
20357         * doc/misc/trampver.texi:
20358         * lisp/net/trampver.el: Update release number.
20359         * test/automated/tramp-tests.el (tramp-test13-make-directory):
20360         Fix cleanup.
20362 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
20364         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
20366 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
20368         Bind grep-highlight-matches around the rgrep call
20369         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
20370         around the rgrep call (bug#20728).
20372         Put "--color" before the other options in grep-command
20373         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
20374         before the other options in grep-command (bug#20912).
20376         Add --color Grep option to the command dynamically
20377         * lisp/progmodes/grep.el (grep-template, grep-find-template):
20378         Update the description for <C>.  (Bug#20728)
20379         (grep-compute-defaults): Don't add the --color option to
20380         grep-options.  Only add it to grep-command.
20381         (grep-expand-keywords): Expand the env value opts into <C>.
20382         (grep-expand-template): Replace cf in the env with the opts list,
20383         that can include -i and --color.
20384         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
20385         "--color=always" from the template, because we don't have to.
20387 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
20389         cl-extra fixes for most-negative-fixnum
20390         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
20391         Don't mishandle an argument equal to most-negative-fixnum,
20392         whose absolute value equals itself.
20393         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
20395         Initialize cl--gensym-counter to 0
20396         Previously it was initialized to a random value, which made it
20397         harder to reproduce earlier Emacs runs.  The need for a random
20398         value went away when Emacs introduced and used the #: syntax for
20399         uninterned symbols (Bug#20862).
20400         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
20401         Document that cl--gensym-counter now starts with 0.
20402         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
20403         (cl--random-time): Move to near only remaining use.
20404         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
20406         Improve docstring for macroexp-let2
20407         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
20408         Improve as per suggestion by RMS in:
20409         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
20410         Also, rename args to match new doc string.
20412 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
20414         Fix VC test suite on MS-Windows
20415         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
20416         always starts with 3 slashes after the colon.
20417         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
20418         'w32-application-type' to invoke CVS on MS-Windows with properly
20419         formatted CVSROOT directory name.
20421         Add a new function w32-application-type
20422         * src/w32proc.c (Fw32_application_type): New function.
20424         Avoid error in TLS connections due to incorrect format
20425         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
20426         the call to 'error', instead of the unsupported %u.  Reported by
20427         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
20429 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
20431         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
20433 2015-06-26  Leo Liu  <sdl.web@gmail.com>
20435         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
20436         `with-output-to-string' in elisp.
20438         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
20439         with-output-to-string".
20440         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
20442 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
20444         Minor corrections in ELisp manual
20445         * doc/lispref/nonascii.texi (Character Properties): Correct
20446         inaccuracies in description of values of the Unicode properties.
20448         Fix invisible mouse pointers on Windows.
20449         * src/w32fns.c: Include windowsx.h.
20450         (w32_wnd_proc): If the mouse moved and the mouse pointer is
20451         invisible, make it visible again even when the main (Lisp)
20452         thread is busy.
20453         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
20454         garbaging the frame have the input thread call SetCursor.
20456 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
20458         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
20459         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
20460         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
20461         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
20462         (w32_toggle_invisible_pointer): New function.
20463         (w32_create_terminal): Add w32_toggle_invisible_pointer as
20464         toggle_invisible_pointer_hook for this terminal.
20466 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
20468         Doc fix for deletion commands
20469         'delete-char' does not respect the value of 'delete-active-region'.
20470         * doc/emacs/killing.texi (Deletion):
20471         Fix documentation for some single-char deletion commands.
20473         * doc/emacs/help.texi (Apropos):
20474         Improve documentation of 'apropos-do-all'.
20476         * doc/emacs/help.texi (Help Summary):
20477         Improve documentation of 'describe-mode'.
20479 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
20481         Fix submake dependency bug with .h files
20482         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
20483         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
20484         before the submake in $(libsrc) would spin off a subsubmake
20485         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
20487 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
20489         * lisp/character-fold.el (character-fold-table): Reuse `table'.
20491 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
20493         Translate undisplayable ‘ to `
20494         * doc/lispref/help.texi (Keys in Documentation):
20495         * lisp/international/mule-cmds.el (set-locale-environment):
20496         * lisp/term/w32console.el (terminal-init-w32console):
20497         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
20498         If ‘ is not displayable, transliterate it to `, not to '.  See:
20499         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
20501         Fix C99 incompatibilities in Cairo code
20502         * src/image.c (xpm_load) [USE_CAIRO]:
20503         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
20504         Fix pointer signedness problem.
20506 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
20508         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
20509         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
20510         `with-output-to-string' should have the same indent as `progn'.
20511         This is in line with the declaration of `with-output-to-string'.
20513 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
20515         Get ‘./configure; make -C src emacs’ to work
20516         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
20517         * lib-src/Makefile.in (../lib/libgnu.a):
20518         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
20520 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
20522         Fix GC bugs --with-wide-int and Qnil == 0
20523         Use the same alignment for the !USE_LSB_TAG case as for the
20524         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
20525         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
20526         once we changed the representation of symbols so that Qnil == 0.
20527         Problem reported by Eli Zaretskii (Bug#20862).
20528         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
20529         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
20530         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
20531         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
20532         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
20533         This optimization in the !USE_LSB_TAG case is no longer valid when
20534         symbols are represented via offsets.  Change the only use to
20535         assume that pointers might hide in objects.
20536         * src/lisp.h (alignas) [!USE_LSB_TAG]:
20537         Require support in this case, too.
20538         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
20539         This is OK, because the !USE_LSB_TAG case now applies only when
20540         Lisp_Object is wider than void *, so there's no longer any need
20541         to shift the offset.  Not shifting the offset means that
20542         symbol representations have the same alignment as pointers,
20543         which the GC assumes.
20545 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
20547         * doc/lispintro/emacs-lisp-intro.texi (Data types):
20548         Improve documentation of 'substring'.
20550 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20552         * lisp/character-fold.el (character-fold-table): Fix table generation.
20554 2015-06-24  Glenn Morris  <rgm@gnu.org>
20556         * nextstep/Makefile.in (all): Make it the first target.
20557         (../src/emacs${EXEEXT}): Add rule for making it.
20559 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
20561         * etc/NEWS: Fix mention to old function name.
20563         * lisp/character-fold.el: New file (Bug#20887)
20564         (character-fold-to-regexp): New function.
20565         * lisp/replace.el (replace-search): Check value of
20566         `character-fold-search'.
20567         * lisp/isearch.el: Move character-folding code to
20568         character-fold.el
20569         (isearch-toggle-character-fold): New command.
20570         (isearch-mode-map): Bind it to "\M-sf".
20571         (isearch-mode): Check value of `character-fold-search'.
20573 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
20575         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
20576         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
20577         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
20579         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
20580         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
20582 2015-06-24  Glenn Morris  <rgm@gnu.org>
20584         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
20586 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
20588         lisp/gnus/nnmaildir.el: Silence lexical warnings
20589         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
20590         functional style.
20591         (nnmaildir--update-nov): Remove unused var `numdir'.
20592         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
20593         (nnmaildir-request-group, nnmaildir-request-create-group)
20594         (nnmaildir-request-post, nnmaildir-request-move-article)
20595         (nnmaildir-request-accept-article, nnmaildir-active-number):
20596         Mark unused args.
20597         (nnmaildir-get-new-mail, nnmaildir-group-alist)
20598         (nnmaildir-active-file): Declare.
20599         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
20600         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
20601         `mark', `end', `new-mark', and `mark-sym'.
20602         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
20603         `nlist2'.
20604         (nnmaildir-request-expire-articles):
20605         Remove unused vars `article', `stop' and `nlist2'.
20606         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
20607         `end'.  Use nnmaildir--article when dyn-binding is needed.
20608         Give the value directly in the `let' for `del-mark', `del-action',
20609         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
20610         (nnmaildir-close-server): Declare those local vars that need to be
20611         dyn-bound.
20613 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
20615         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
20617         Port selection info fix to clang
20618         * src/keyboard.h (kbd_buffer_store_event_hold):
20619         Don't assume C11 semantics for alignof (Bug#20756).
20621         Fix bug that munged selection info
20622         On some optimizing C compilers, copying a structure did not
20623         copy the padding bytes between elements, and the type punning
20624         between struct input_data and struct selection_input_data did
20625         not work.  Change the C code to use a proper union type instead.
20626         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
20627         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
20628         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
20629         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
20630         (mark_kboards):
20631         Use union buffered_input_event, not struct input_event.
20632         (clear_event, deliver_input_available_signal, process_special_events):
20633         Remove unnecessary forward decls.
20634         (kbd_buffer_store_buffered_event): New function, mostly just the
20635         old kbd_buffer_store_event_hold, except its argument is of type
20636         union buffered_input_event, not struct input_event.
20637         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
20638         not needed otherwise.  Argument is now of type
20639         struct selection_input_event *, not struct input_event *.
20640         All callers changed.
20641         (clear_event): Arg is now of type union buffered_input_event *,
20642         not struct input_event *.  All callers changed.
20643         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
20644         (union buffered_input_event): New type.
20645         (kbd_buffer_store_event_hold): Now an inline function,
20646         defined here.
20647         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
20648         (struct input_event): Use it.
20649         * src/xselect.c (struct selection_event_queue):
20650         Make elements be of type struct selection_input_event,
20651         not struct input_event.
20652         (selection_input_event_equal): New static function.
20653         (x_queue_event): Use it.
20654         (x_queue_event, x_decline_selection_request)
20655         (x_selection_current_request, x_reply_selection_request)
20656         (x_handle_selection_request, x_handle_selection_clear)
20657         (x_handle_selection_event): Use struct selection_input_event,
20658         not struct input_event.  All callers changed.
20659         (x_convert_selection): Omit unused first arg.  All callers changed.
20660         (Fx_disown_selection_internal): Omit unnecessary union.
20661         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
20662         rather than rolling our own equivalent.  Prefer sie.kind when
20663         setting up that kind of structure.
20664         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
20665         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
20666         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
20667         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
20668         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
20669         (SELECTION_EVENT_TIME, x_handle_selection_event):
20670         Arg is now of type struct selection_input_event *)
20671         not struct input_event *.  All callers changed.
20673 2015-06-23  Glenn Morris  <rgm@gnu.org>
20675         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
20677 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
20679         * lisp/isearch.el: Fold many unicode characters to ASCII.
20680         (isearch-character-fold-search, isearch--character-fold-extras)
20681         (isearch--character-fold-table): New variable.
20682         (isearch--character-folded-regexp): New function.
20683         (isearch-search-fun-default): Use them.
20684         * lisp/replace.el (replace-character-fold): New variable.
20685         (replace-search): Use it.
20686         * etc/NEWS: Document it.
20688 2015-06-23  Glenn Morris  <rgm@gnu.org>
20690         Check for an input event before showing a dialog box.  (Bug#20813)
20691         * lisp/subr.el (y-or-n-p):
20692         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
20693         as last-nonmenu-event.
20695 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
20697         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
20698         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
20699         (switch-to-prev-buffer, switch-to-next-buffer): Respect
20700         switch-to-visible-buffer independent of the windows history.
20702 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
20704         * src/keyboard.c (last_timer_event): Remove unused var.
20706 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
20708         * test/automated/package-test.el (package-test-update-listing):
20709         Fix test.
20711 2015-06-23  Glenn Morris  <rgm@gnu.org>
20713         Revert 2014-06-25 nextstep/Makefile change.
20714         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
20715         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
20716         not as an order-only prerequisite.
20718         * configure.ac (--with-ns): Enable by default on OS X.
20720 2015-06-23  Leo Liu  <sdl.web@gmail.com>
20722         Fix shell-for/backward-command to exclude spaces
20723         * lisp/shell.el (shell-forward-command, shell-backward-command):
20724           Handle the 'move case from re-search-forward/backward.
20725           fixes debbugs:20873
20727 2015-06-22  Juri Linkov  <juri@linkov.net>
20729         * lisp/replace.el (query-replace-read-from): Add separator to
20730         the local binding of text-property-default-nonsticky.  (Bug#20690)
20732         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
20733         (Bug#20785)
20735 2015-06-22  Ken Brown  <kbrown@cornell.edu>
20737         Enable CPU profiling on Cygwin
20738         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
20739         change that undefined this.
20740         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
20741         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
20742           Cygwin.
20744         Improve diagnostics of profiler-cpu-start
20745         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
20746         return -1 if the sampling interval is invalid.
20747         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
20748         fails.  (Bug#20843)
20750 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
20752         * lisp/emacs-lisp/package.el: Exclude packages by name.
20753         (package-hidden-regexps): New variable.
20754         (package-menu--refresh): Use it.
20755         (package-menu-hide-package): New command.
20757         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
20759 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
20761         Fix debug-timer-check on systems without HAVE_TIMERFD
20762         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
20763         the expired timers, since wait_reading_process_output doesn't.
20764         (debug_timer_callback): Enlarge the tolerance to 20 msec.
20766         Fix RCS crashes in vc-test
20767         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
20768         ports of 'ci' on MS-Windows by always passing the -t- switch.
20770 2015-06-22  Glenn Morris  <rgm@gnu.org>
20772         * doc/emacs/package.texi (Packages):
20773         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
20775         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
20777 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
20779         Port tests to help-quote-translation
20780         * test/automated/ert-x-tests.el (ert-test-describe-test):
20781         * test/automated/package-test.el (package-test-describe-package)
20782         (package-test-signed): Allow straight quotes, too.
20784 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
20786         Make find-function-on-key use the current window
20787         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
20788         Extract from `find-function-on-key', add a second argument.
20789         (find-function-on-key): Use it (bug#19679).
20790         (find-function-on-key-other-window)
20791         (find-function-on-key-other-frame): New commands.
20793 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
20795         Revert "Define `map-elt' as a generalized variable"
20796         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
20798 2015-06-21  Ken Brown  <kbrown@cornell.edu>
20800         Drop support for CPU profiling on Cygwin
20801         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
20802         (Bug#20843)
20804 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
20806         Fix some “nested” quoting confusion in doc strings
20807         * lisp/emacs-lisp/advice.el (ad-map-arglists):
20808         * lisp/kermit.el (kermit-clean-on):
20809         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
20810         * src/keyboard.c (Frecursive_edit):
20811         Use curved quotes when quoting text containing apostrophe,
20812         so that the apostrophe isn't curved in the output.
20814 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
20816         Define `map-elt' as a generalized variable
20817         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
20818         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
20819         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
20820         `setf' with `map-elt'.
20821         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
20823 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
20825         Improve error handling in tramp-adb.el
20826         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
20827         Improve error handling.
20829 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
20831         Reuse `alist-get' in map.el
20832         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
20833         elements.
20835 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
20837         Fix bytecomp-tests--warnings when $TMPDIR has a long name
20838         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
20839         Allow the warning to begin on the 3rd, not only 2nd line, which
20840         happens if temporary-file-directory has a very long name.
20842         Expect 2 icalendar tests to fail on MS-Windows
20843         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
20844         (icalendar-real-world): Make them expected failures on MS-Windows.
20846 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
20848         Improve port of settings UI to older displays
20849         * lisp/cus-start.el (standard): Don't assume curved quotes are
20850         easily distinguishable when users are tinkering with a setting
20851         that affects how curved quotes are generated.
20853         Fix quoting in electric-quote-mode doc string
20854         * lisp/electric.el (electric-quote-mode): Fix quoting.
20855         This is a fallout from the recent change introducing
20856         ‘help-quote-translation’.
20858         Spelling fix
20860         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
20862         * src/doc.c (syms_of_doc): Remove unused symbols.
20864 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
20866         * lisp/window.el (window-state-put): Undedicate target window
20867         before putting STATE into it.  (Bug#20848)
20869 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
20871         Merge from origin/emacs-24
20872         a5e6f33 Fixes: debbugs:20832
20873         b9f02cf Fixes: debbugs:20832
20875 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
20877         Fix file-in-directory-p when the directory is UNC
20878         * lisp/files.el (file-in-directory-p): Support files and
20879         directories that begin with "//".  (Bug#20844)
20881 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
20883         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
20884         in the minibuffer.  (Bug#20832)
20886 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
20888         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
20889         for adding new todo file is empty but modified.  (Bug#20832)
20891 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
20893         (filepos-to-bufferpos): Further tweaks to the utf-16 code
20894         * lisp/international/mule-util.el (filepos-to-bufferpos):
20895         Fix typo.  Move non-exact check to the utf-16 branch (the only one
20896         affected).  Don't use byte-to-position for the utf-16 case.
20898 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
20900         Minor fixes in filepos-to-bufferpos
20901         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
20902         test for utf-8-emacs.  Exempt single-byte encodings from the
20903         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
20904         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
20905         UTF-16 encoded files for CR-LF EOLs.
20907 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
20909         Improve the optional translation of quotes
20910         Fix several problems with the recently-added custom variable
20911         help-quote-translation where the code would quote inconsistently
20912         in help buffers.  Add support for quoting 'like this', which
20913         is common in other GNU programs in ASCII environments.  Change
20914         help-quote-translation to use more mnemonic values: values are now the
20915         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
20916         traditional Emacs help-buffer quoting style `like this'.  Change the
20917         default behavior of substitute-command-keys to match what's done in
20918         set-locale-environment, i.e., quote ‘like this’ if displayable,
20919         'like this' otherwise.
20920         * doc/lispref/help.texi (Keys in Documentation): Document
20921         new behavior of substitute-command-keys, and document
20922         help-quote-translation.
20923         * doc/lispref/tips.texi (Documentation Tips):
20924         Mention the effect of help-quote-translation.
20925         * etc/NEWS: Mention new behavior of substitute-command-keys,
20926         and merge help-quote-translation news into it.
20927         When talking about doc strings, mention new ways to type quotes.
20928         * lisp/cedet/mode-local.el (overload-docstring-extension):
20929         Revert my recent change to this function, which shouldn't be
20930         needed as the result is a doc string.
20931         * lisp/cedet/mode-local.el (mode-local-print-binding)
20932         (mode-local-describe-bindings-2):
20933         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
20934         * lisp/cus-theme.el (describe-theme-1):
20935         * lisp/descr-text.el (describe-text-properties-1, describe-char):
20936         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
20937         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
20938         (eieio-help-constructor):
20939         * lisp/emacs-lisp/package.el (describe-package-1):
20940         * lisp/faces.el (describe-face):
20941         * lisp/help-fns.el (help-fns--key-bindings)
20942         (help-fns--compiler-macro, help-fns--parent-mode)
20943         (help-fns--obsolete, help-fns--interactive-only)
20944         (describe-function-1, describe-variable):
20945         * lisp/help.el (describe-mode):
20946         Use substitute-command-keys to ensure a more-consistent quoting
20947         style in help buffers.
20948         * lisp/cus-start.el (standard):
20949         Document new help-quote-translation behavior.
20950         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
20951         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
20952         (help-xref-url-regexp):
20953         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
20954         * lisp/wid-edit.el (widget-documentation-link-regexp):
20955         Also match 'foo', in case we're in a help buffer generated when
20956         help-quote-translation is ?'.
20957         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
20958         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
20959         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
20960         (Fsubstitute_command_keys): Document and implement new behavior.
20961         (Vhelp_quote_translation): Document new behavior.
20963 2015-06-18  Glenn Morris  <rgm@gnu.org>
20965         * lisp/cus-start.el (help-quote-translation): Add :version.
20967         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
20969 2015-06-18  Alan Mackenzie  <acm@muc.de>
20971         Make translation of quotes to curly in doc strings optional.
20972         * src/doc.c (traditional, prefer-unicode): New symbols.
20973         (help-quote-translation): New variable.
20974         (Fsubstitute_command_keys): Make translation of quotes dependent on
20975         `help-quote-translation'; also translate curly quotes back to ASCII
20976         ones.
20977         * lisp/cus-start.el (top-level): Add a customization entry for
20978         `help-quote-translation'.
20980 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
20982         * lisp/emacs-lisp/package.el: Don't always propagate async errors
20983         (package--with-work-buffer-async): Only propagate the error if the
20984         callback returns non-nil.
20985         (package--download-one-archive): Return nil on the signature
20986         checking callback if we accept unsigned.
20987         (package--download-and-read-archives): Return non-nil on the
20988         archive download callback.
20990 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
20992         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
20993         * src/nsfns.m (Fx_create_frame):
20994         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
20995         image_cache_refcount before first x_default_parameter call.
20997 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
20999         Improve and extend filepos-to-bufferpos
21000         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
21001         Don't barf if F returns nil for some argument.
21002         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
21003         that every encoding of type 'charset' is single-byte.
21005 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
21007         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
21008         Properly delete packages.  (Bug#20836)
21010 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
21012         Update data files from just-released Unicode 8.0
21013         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
21014         status.
21015         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
21016         * admin/unidata/BidiMirroring.txt:
21017         * admin/unidata/BidiBrackets.txt:
21018         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
21020 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
21022         Document curved quotes a bit better
21023         * doc/emacs/basic.texi (Inserting Text):
21024         Mention C-x 8.  Change example to use curved quote rather
21025         than infinity, as this lets us give more ways to do it.
21026         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
21027         and quotation marks.
21028         * doc/emacs/text.texi (Quotation Marks):
21029         * doc/lispref/tips.texi (Documentation Tips):
21030         Add "curly quotes" and "curved quotes" to the index.
21031         * doc/emacs/text.texi (Quotation Marks):
21032         Give the C-x 8 shorthands for curved quotes.
21033         Cross-reference to "Quotation Marks".
21035 2015-06-17  Daiki Ueno  <ueno@gnu.org>
21037         Add pinentry.el for better GnuPG integration
21038         * lisp/pinentry.el: New file.
21039         * etc/NEWS: Add entry about pinentry.el.
21040         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
21041         (Bug#20550)
21043 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
21045         * lisp/emacs-lisp/package.el: Slightly better error reporting.
21047 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
21049         (define-minor-mode): Use setq-default for :global minor modes
21050         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
21051         Use setq-default for :global minor modes (bug#20712).
21053 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
21055         Avoid infloop in redisplay with tall images
21056         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
21057         down near ZV.  (Bug#20808)
21058         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
21059         instead of CHARPOS.
21061 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
21063         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
21064         Fix error reporting.
21066         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
21068         * lisp/emacs-lisp/package.el: Revert buffer after any operation
21069         Call `package-menu--post-refresh' after any operation that changes
21070         the package database (`package-install' and `package-delete').  To
21071         avoid performance issues in large transactions, these functions
21072         add `post-refresh' to `post-command-hook' instead of calling it
21073         immediately.
21074         (package-menu--mark-or-notify-upgrades): New function.
21075         (list-packages): Add it to `package--post-download-archives-hook'.
21076         (package-menu--post-refresh): Lose the upgrade-checking code, add
21077         code to remove itself from `post-command-hook'.
21078         (package-install, package-delete): Add it to `post-command-hook'.
21079         (package-menu-execute): Don't call `package-menu--post-refresh'.
21081 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
21083         Add missing function xref-location-group for elisp-mode.
21084         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
21086 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
21088         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
21089         The behavior now matches the description in the manual.  (Bug#20783)
21091 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
21093         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
21095 2015-06-17  Glenn Morris  <rgm@gnu.org>
21097         Generate char-script-table from Unicode source.  (Bug#20789)
21098         * admin/unidata/Makefile.in (AWK): New, set by configure.
21099         (all): Add charscript.el.
21100         (blocks): New variable.
21101         (charscript.el, ${unidir}/charscript.el): New targets.
21102         (extraclean): Also remove generated charscript.el.
21103         * admin/unidata/blocks.awk: New script.
21104         * admin/unidata/Blocks.txt: New data file, from unicode.org.
21105         * lisp/international/characters.el: Load charscript.
21106         * src/Makefile.in (charscript): New variable.
21107         (${charscript}): New target.
21108         (${lispintdir}/characters.elc): Depend on charscript.elc.
21109         (temacs$(EXEEXT)): Depend on charscript.
21111         * lisp/international/characters.el (char-script-table): Tweak
21112         some ranges to better match the source.  (Bug#20789#17)
21114         Remove "no-byte-compile: t" from a few files.
21115         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
21116         * lisp/obsolete/patcomp.el: No reason not to compile these.
21118 2015-06-16  Glenn Morris  <rgm@gnu.org>
21120         Fix some typos in copied Unicode data.  (Bug#20789)
21121         * lisp/international/characters.el (char-script-table):
21122         * lisp/international/fontset.el (script-representative-chars)
21123         (setup-default-fontset): Fix typos.
21125         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
21126         Don't print filename twice (it's in the prefix now).
21128         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
21129         No longer needed.
21131         Address a compilation warning.
21132         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
21133         Replace 't' with '_' in pcase.
21135         Address some check-declare warnings.
21136         * lisp/simple.el (tabulated-list-print):
21137         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
21138         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
21139         (ns-get-selection): Update declarations.
21141         Address some compilation warnings.
21142         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
21143         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
21144         Replace 't' with '_' in pcase.
21146         Address some compilation warnings.
21147         * lisp/face-remap.el (text-scale-adjust):
21148         * lisp/menu-bar.el (popup-menu-normalize-position):
21149         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
21150         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
21151         * lisp/emacs-lisp/generator.el (cps--transform-1):
21152         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
21153         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
21154         * lisp/progmodes/octave.el (octave-goto-function-definition)
21155         (octave-find-definition-default-filename):
21156         Replace 't' with '_' in pcase.
21158         * lisp/emacs-lisp/pcase.el (pcase--u1):
21159         Paper-over today's bootstrap failure.
21161 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
21163         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
21165         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
21167         Better confirmation message in `find-alternate-file' (Bug#20830)
21168         * lisp/files.el (find-alternate-file'): Improve the confirmation
21169         message to show the buffer name.
21171         Better docstring for null.  (Bug#20815)
21172         * src/data.c (null): Improves the docstring, saying what null returns
21173         when OBJECT is non-nil.
21175 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
21177         * lisp/net/newst-treeview.el: Use lexical-binding.
21179         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
21180         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
21181         New auxiliary function, extracted from filepos-to-bufferpos.
21182         Make sure it terminates.
21183         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
21184         Add support for the `exact' quality.
21186 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
21188         Identify feeds in newsticker treeview with :nt-feed property
21189         * lisp/net/newst-treeview.el:
21190         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
21192 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
21194         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
21195         (pcase--self-quoting-p): Floats aren't self-quoting.
21196         (pcase): Tweak docstring.
21197         (pcase--u1): Deprecate the t pattern.  Improve error detection for
21198         the nil pattern.
21199         (\`): Tweak docstring.  Signal an error for unrecognized cases.
21200         (bug#20784)
21202 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
21204         Fix infloop in filepos-to-bufferpos
21205         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
21206         offset calculation, and make it conditional on the eol-type of the
21207         file's encoding.  (Bug#20825)
21209 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
21211         Fix handling of image cache refcounts.  (Bug#20802)
21212         This backports Eli Zaretskii's solution of this problem for W32
21213         to X and NS.
21214         * src/nsfns.m (image_cache_refcount): Define unconditionally.
21215         (unwind_create_frame): If the image cache's reference count
21216         hasn't been updated yet, do that now.
21217         (Fx_create_frame): Set image_cache_refcount unconditionally.
21218         * src/xfns.c (image_cache_refcount): Define unconditionally.
21219         (unwind_create_frame): If the image cache's reference count
21220         hasn't been updated yet, do that now.
21221         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
21222         unconditionally.
21223         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
21224         X and NS.
21226 2015-06-16  Nils Ackermann  <nils@ackermath.info>
21228         Improve reftex-label-regexps default value
21229         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
21230         keyvals label regexp more strict to better cope with unbalanced
21231         brackets common in math documents.
21233 2015-06-16  Glenn Morris  <rgm@gnu.org>
21235         * doc/emacs/calendar.texi (Format of Diary File):
21236         Move "nonmarking" from here...
21237         (Displaying the Diary): ... to here.
21239         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
21240         Swap the order of these nodes.
21241         * doc/emacs/emacs.texi: Update detailed menu for the above change.
21243         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
21244         Update date of examples.
21245         (Diary, Format of Diary File): Move example from former to latter.
21246         Reduce duplication.
21248         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
21249         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
21250         Don't set no-byte-compile in the outputs.
21251         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
21253 2015-06-15  Glenn Morris  <rgm@gnu.org>
21255         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
21256         * doc/emacs/calendar.texi (Diary, Format of Diary File):
21257         Update for above diary-file change.
21259         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
21260         (apply-macro-to-region-lines): Use user-error.
21262         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
21263         (pages-directory-for-addresses): Doc fixes.
21265 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
21267         * lisp/info.el: Cleanup bytepos/charpos issues
21268         * lisp/international/mule-util.el: Use lexical-binding.
21269         (filepos-to-bufferpos): New function.
21270         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
21271         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
21272         (Info-read-subfile, Info-search): Use 0-based file positions.
21274         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
21275         (perl--syntax-exp-intro-keywords): New var.
21276         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
21277         (bug#20800).
21279 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
21281         Fix quoting when making derived mode docstring
21282         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
21283         Nest regexp-quote inside format, not the reverse.
21284         Problem reported by Artur Malabarba in:
21285         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
21287 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
21289         Fix current-iso639-language on MS-Windows
21290         * lisp/international/mule-cmds.el (set-locale-environment):
21291         Downcase the locale name before interning it.  This is so the
21292         'current-iso639-language' on MS-Windows matches the ':lang'
21293         property of font-spec objects.
21295         Limit Symbola usage some more
21296         * lisp/international/fontset.el (setup-default-fontset): Limit
21297         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
21298         (Bug#20727)
21300 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
21302         * lisp/emacs-lisp/map.el (map-let): Better docstring.
21304 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
21306         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
21307         (help-fns-test-funny-names): Spelling fixes.
21309 2015-06-14  Glenn Morris  <rgm@gnu.org>
21311         * lisp/version.el (emacs-repository-version-git): Demote errors.
21312         Check result is a hash.
21314 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
21316         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
21317         Catch errors that happen before going async.  (Bug#20809)
21319 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
21321         Another improvement of documentation of set-fontset-font
21322         * doc/lispref/display.texi (Fontsets): Say explicitly that
21323         CHARACTER can be a single codepoint.
21324         * src/fontset.c (Fset_fontset_font): Doc fix.
21326         Another improvement for symbol and punctuation characters
21327         * lisp/international/fontset.el (setup-default-fontset): Exclude
21328         from Symbola character ranges for symbols and punctuation covered
21329         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
21330         installed and where its coverage of symbols and punctuation is
21331         known to be good.  (Bug#20727)
21333 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
21335         Some generic support for multi-mode indentation.
21336         * lisp/progmodes/prog-mode.el (prog-indentation-context):
21337         New variable.
21338         (prog-first-column, prog-widen): New convenience functions.
21340 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
21342         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
21343         Don't assume that `tabulated-list-printer' will leave point at the
21344         end of the buffer.  (Bug#20810)
21346 2015-06-13  Glenn Morris  <rgm@gnu.org>
21348         Tweaks for getting repository version; a bit more like it was for bzr
21349         * lisp/version.el (emacs-repository-version-git)
21350         (emacs-repository--version-git-1): New functions,
21351         split from emacs-repository-get-version.
21352         (emacs-repository-get-version): Make the second argument meaningful.
21354         * lisp/startup.el (command-line-1): Inform if skipping relative
21355         file names due to deleted PWD.
21357         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
21358         when starup directory is missing.  (Bug#18851)
21359         (errno.h): Include it.
21361 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
21363         Better fix for documenting `X as "`X"
21364         Fix suggested by Stefan Monnier.
21365         * lisp/help-fns.el (help-fns--signature):
21366         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
21367         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
21368         Don't treat `X specially, as help-fns--signature now handles this.
21370 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
21372         Improve the default fontset when Symbola is not installed
21373         * lisp/international/fontset.el (setup-default-fontset): Only
21374         prepend Symbola and FreeMono font specs for symbols and
21375         punctuation; do not replace the default spec for them.  This
21376         should have better results when Symbola/FreeMono are not
21377         installed.  (Bug#20727)
21379         Improve documentation of ':lang' in font specs
21380         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
21381         use of the ':lang' property of the font spec.
21382         * doc/emacs/frames.texi (Fonts): Document the language names that
21383         can be in the STYLE part of XLFD.
21384         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
21385         property.
21387         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
21389         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
21391         Revert last change in fontset.el
21392         * lisp/international/fontset.el (setup-default-fontset): Revert
21393         the change "Configure Symbola font only if installed", since font
21394         search is evidently not yet set up when this function is called.
21395         (Bug#20727)
21397 2015-06-12  Glenn Morris  <rgm@gnu.org>
21399         Ensure early startup warnings are visible at the end.  (Bug#20792)
21400         * lisp/emacs-lisp/warnings.el (display-warning):
21401         If startup isn't complete, delay the warning.
21402         * lisp/startup.el (normal-top-level, command-line):
21403         Let display-warning automatically handle the needed delays.
21404         Run delayed-warnings-hook.
21406         * lisp/version.el (emacs-repository-get-version):
21407         Avoid calling external executable if possible.  (Bug#20799)
21409 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
21411         Document `X as "`X", not as "(` X)"
21412         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
21413         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
21415         * src/print.c (print_object): Minor simplification.
21417 2015-06-12  Glenn Morris  <rgm@gnu.org>
21419         * src/buffer.c (init_buffer): Add final newline to message.
21421 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
21423         Configure Symbola font only if installed
21424         * lisp/international/fontset.el (setup-default-fontset):
21425         Don't specify the Symbola font if it's not installed.
21426         Likewise for FreeMono.  (Bug#20727)
21428 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
21430         Configure Symbola font only for symbols and punctuation
21431         * lisp/international/fontset.el (setup-default-fontset): Leave
21432         only symbols and punctuation in the fontset setup for Symbola
21433         font; remove "Greek and Coptic" and "Cyrillic Supplement".
21434         (Bug#20798)
21436 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
21438         Fix crash in fontset-info
21439         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
21440         non-nil.
21442 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
21444         Port to Solaris 10 sparc + Sun C 5.13
21445         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
21446         Adjust to process.c change.
21447         * src/process.c (create_process): Declare volatile variables at
21448         top level of this function, so that they're less likely to be
21449         reused later in the function in the code executed by the vforked
21450         child.  Do not declare locals used only in the vforked child, as
21451         they might share memory with locals still live in the parent.
21452         Instead, use the same variables in the child as in the parent.
21453         This works around a subtle bug that causes a garbage collector
21454         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
21456 2015-06-12  Glenn Morris  <rgm@gnu.org>
21458         * lisp/startup.el (normal-top-level): Don't let *Messages* get
21459         a nil default-directory.
21461 2015-06-11  Glenn Morris  <rgm@gnu.org>
21463         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
21465         Some progress towards starting with PWD deleted.  (Bug#18851)
21466         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
21467         * lisp/startup.el (normal-top-level, command-line-1):
21468         * lisp/minibuffer.el (read-file-name-default):
21469         Handle default-directory being nil.
21471 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
21473         Fix "not a tty" bug on Solaris 10
21474         * configure.ac (PTY_OPEN): Define to plain 'open'
21475         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
21476         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
21477         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
21478         hosts that call grantpt which does its work via a setuid subcommand
21479         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
21480         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
21481         seems relevant in that case too.
21483 2015-06-11  Juri Linkov  <juri@linkov.net>
21485         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
21486         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
21487         (Bug#20785)
21489 2015-06-11  Glenn Morris  <rgm@gnu.org>
21491         * lisp/international/characters.el (char-script-table): Fix typo.
21493 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
21495         Fix quoting of help for functions with odd names
21496         While investigating Bug#20759, I discovered other quoting problems:
21497         C-h f mishandled characters like backslash and quote in function names.
21498         This fix changes the behavior so that 'C-h f pcase RET' now
21499         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
21500         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
21501         in src/lread.c's read1 function says that the backslash will be
21502         needed starting in Emacs 25, which implies that 'format' is
21503         correct and the old pcase documention was wrong to omit the backslash.
21504         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
21505         * lisp/help-fns.el (help-fns--signature):
21506         * lisp/help.el (help-add-fundoc-usage):
21507         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
21508         Use help--make-usage-docstring rather than formatting
21509         help-make-usage.
21510         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
21511         Return raw docstring.
21512         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
21513         raw docstring.  Take more care to distinguish raw from cooked dstrings.
21514         (describe-function-1): Let help-fns--signature substitute
21515         command keys.
21516         * lisp/help.el (help--docstring-quote): New function.
21517         (help-split-fundoc): Use it, to quote funny characters more
21518         systematically.
21519         (help--make-usage): Rename from help-make-usage, since this
21520         should be private.  Leave an obsolete alias for the old name.
21521         (help--make-usage-docstring): New function.
21522         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
21524 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
21526         * lisp/thingatpt.el (in-string-p): Revert last change,
21527         since in-string-p is not used in thingatpt.el but only from outside.
21528         Also, use lexical binding.
21530 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
21532         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
21533         * test/automated/let-alist.el (let-alist-cons): Test it.
21535 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
21537         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
21539 2015-06-10  Glenn Morris  <rgm@gnu.org>
21541         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
21543         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
21544         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
21545         * admin/gitmerge.el (gitmerge-commit-message):
21546         Exclude "skipped" messages from ChangeLog once again.
21548         Slight namespace cleanup for thingatpt.el.
21549         * lisp/thingatpt.el (thing-at-point--in-string-p)
21550         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
21551         (thing-at-point--read-from-whole-string): Rename from
21552         old versions without "thing-at-point--" prefix.
21553         Keep old versions as obsolete aliases.  Update all uses.
21555         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
21556         Move requiring of finder from here...
21557         (checkdoc-package-keywords): ... to here.
21559         Use 'user-error' in a few calendar files.
21560         * lisp/calendar/appt.el (appt-add):
21561         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
21562         (calendar-generate):
21563         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
21564         Replace 'error' with 'user-error'.
21566         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
21568         * lisp/files-x.el (add-file-local-variable):
21569         Special-case 'lexical-binding'.  (Bug#20641)
21571         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
21572         No longer autoload.
21573         * doc/misc/autotype.texi (Executables):
21574         Undocument executable-self-display.
21576         * lisp/progmodes/executable.el (executable-self-display):
21577         Use non-obsolete tail syntax.  (Bug#20779)
21578         (executable-self-display): Doc update.
21580 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
21582         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
21583         (finder-known-keywords): Silence byte-compiler.
21585 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21587         * lisp/simple.el (eval-expression): Macroexpand before evaluating
21588         (bug#20730).
21590         * lisp/progmodes/sh-script.el: Better handle nested quotes.
21591         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
21592         (sh-font-lock-quoted-subshell): Make sure double quotes within single
21593         quotes don't mistakenly end prematurely the surrounding string.
21595         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
21597 2015-06-09  Glenn Morris  <rgm@gnu.org>
21599         * test/automated/Makefile.in (ELFILES): Sort.
21601         * Makefile.in (SUBDIR_MAKEFILES):
21602         * lwlib/Makefile.in (WARN_CFLAGS):
21603         Use built-in Make functions rather than echo+sed.
21605 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
21607         Update char-script-table
21608         * lisp/international/characters.el (char-script-table): Update
21609         from Unicode 8.0 Draft.
21611         Improve font selection for punctuation and other symbols
21612         * src/fontset.c (face_for_char): If the character's script is
21613         'symbol', and the font used for ASCII face has a glyph for it, use
21614         the font for the ASCII face instead of searching the fontsets.
21615         This comes instead of NS-specific code that used the current
21616         face's font instead, which is now disabled due to undesirable
21617         consequences.  (Bug#20727)
21619 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
21621         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
21622         Skip past `#' to find BEG (bug#20771).
21623         * test/automated/elisp-mode-tests.el
21624         (elisp-completes-functions-after-hash-quote): New test.
21626 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
21628         Fix compilation warning/error in --without-x builds
21629         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
21630         code on HAVE_WINDOW_SYSTEM.
21632         Improve the default fontset wrt symbols
21633         * lisp/international/fontset.el (setup-default-fontset): Better
21634         setup of fontset-default for symbols: use Symbola and FreeMono.
21635         (Bug#20727)
21637 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
21639         Add new command checkdoc-package-keywords
21640         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
21641         New defcustom.
21642         (checkdoc-list-of-strings-p): Add doc.
21643         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
21644         non-nil, call `checkdoc-package-keywords'.
21645         (checkdoc-get-keywords): New defun.
21646         (checkdoc-package-keywords): New command.  Warns if the current file
21647         has package.el-style keywords that aren't in `finder-known-keywords'.
21648         * etc/NEWS: Add entry.
21650 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
21652         Avoid crashes when key-binding is called from a timer
21653         * src/keymap.c (Fkey_binding): Don't segfault if called with an
21654         empty vector as KEY.  (Bug#20705)
21656         Fix a thinko in arc-mode.el
21657         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
21658         non-Zip64 case.  (Bug#20769)
21660 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
21662         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
21664 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
21666         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
21667         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
21668         "*warn*", print the warning to the standard output.  (bug#20754)
21670 2015-06-07  Glenn Morris  <rgm@gnu.org>
21672         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
21674         * src/font.c (syms_of_font) <font-log>: Doc fix.
21676         Remove the obsolete leading "*" from some C doc strings.
21677         * src/coding.c (syms_of_coding):
21678         * src/font.c (syms_of_font): Remove leading "*" from docs.
21679         * lisp/cus-start.el (enable-character-translation): Add it.
21681 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
21683         Move gen_origin from program to data
21684         That way, 'make change-history' needs to change only ChangeLog.2,
21685         instead of having to change two files.
21686         * ChangeLog.2: Add commit info for range that this file covers.
21687         * Makefile.in (new_commit_regexp): New macro.
21688         (change-history-nocommit): Simplify, by putting what used to be
21689         the gen_origin value into the data (ChangeLog.2) rather than
21690         into the program (gitlog-to-emacslog).
21691         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
21692         the input file (e.g., ChangeLog.2) rather than by having a
21693         constant in the program.  Substitute it into the output.
21695 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
21697         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
21698         function name (bug#20759).
21700 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
21702         Adapt 'struct timespec' to next release of MinGW runtime
21703         * nt/inc/ms-w32.h (struct timespec): Don't declare if
21704         __struct_timespec_defined is defined.
21706 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
21708         Merge from gnulib
21709         This incorporates:
21710         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
21711         2015-06-05 stdio: Don't redefine gets when using C++
21712         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
21713         2015-06-02 file-has-acl: fix build on Mac OS X 10
21714         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
21715         2015-06-01 pthread_sigmask: discount system version if a simple macro
21716         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
21717         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
21718         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
21719         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
21720         * lib/gnulib.mk: Regenerate.
21722 2015-06-06  Juri Linkov  <juri@linkov.net>
21724         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
21725         before calling grep-compute-defaults because now it affects the
21726         command lines computed in grep-compute-defaults.  (Bug#20728)
21728 2015-06-06  Glenn Morris  <rgm@gnu.org>
21730         Address some compilation warnings.
21731         * lisp/international/mule-cmds.el (w32-get-console-codepage)
21732         (w32-get-console-output-codepage):
21733         * lisp/progmodes/elisp-mode.el (xref-collect-references):
21734         * lisp/version.el (cairo-version-string): Declare.
21735         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
21737 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
21739         Fix display when a font claims large values of ascent and descent
21740         This fixes bug#20628.
21741         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
21742         coordinate of a hollow cursor glyph when the original glyph's
21743         ascent is too small.
21744         (get_font_ascent_descent, normal_char_ascent_descent)
21745         (normal_char_height): New functions.
21746         (handle_single_display_spec, append_space_for_newline)
21747         (calc_pixel_width_or_height, produce_stretch_glyph)
21748         (calc_line_height_property): Use normal_char_ascent_descent and
21749         normal_char_height.
21750         (x_produce_glyphs): When font-global values of ascent and descent
21751         are too large, use per-character glyph metrics instead, if
21752         possible.  But don't allow the glyph row's ascent and descent
21753         values become smaller than the values from the metrics of the
21754         font's "normal" character.
21755         * src/xftfont.c (xftfont_draw):
21756         * src/w32font.c (w32font_draw): Correct the values of ascent and
21757         descent used to draw glyphless characters' hex code in a box.
21758         * src/xterm.c (x_draw_glyph_string_background):
21759         * src/xdisp.c (x_produce_glyphs):
21760         * src/w32term.c (x_draw_glyph_string_background):
21761         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
21762         to detect fonts whose global ascent and descent values are too
21763         large to be used in layout decision, and redraw the background
21764         when that happens.
21765         * src/dispextern.h (FONT_TOO_HIGH): New macro.
21766         (get_font_ascent_descent): Add prototype.
21767         * src/xterm.c (x_new_font):
21768         * src/w32term.c (x_new_font):
21769         * src/nsterm.m (x_new_font):
21770         * src/font.c (font_open_entity):
21771         * src/composite.c (composition_gstring_width):
21772         Use get_font_ascent_descent to obtain reasonable values for ascent
21773         and descent of a font.
21775 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
21777         Add assertion in adjust_point_for_property
21778         * src/keyboard.c (adjust_point_for_property): Add eassert for
21779         current buffer being shown in selected window.
21781 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
21783         Replace uses of in-string-p; make it obsolete
21784         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
21785         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
21787 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
21789         Fix Dired display of an explicit list of files by ls-lisp.el
21790         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
21791         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
21792         correct for when displaying individual files separately, not as
21793         part of listing a directory, in which case these values are not
21794         recomputed by 'ls-lisp-insert-directory', but used verbatim.
21796         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
21798 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
21800         Do not adjust point in a non-selected window
21801         * src/keyboard.c (command_loop_1): Do not adjust point when
21802         current buffer is not shown in selected window (Bug#20590).
21804         * etc/DEBUG: Mention 'maybe_call_debugger'
21806 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
21808         Fix a unit test for map.el
21809         * test/automated/map-tests.el (test-map-let): Fix the test to work
21810         with the new syntax of `map-let'.
21812         * lisp/emacs-lisp/map.el (map-let): Better docstring.
21814         Better syntax for the map pcase pattern
21815         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
21816         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
21818         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
21820         Fix a byte-compiler error in map-put and map-delete
21821         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
21822         called with a symbol.
21824 2015-06-05  Glenn Morris  <rgm@gnu.org>
21826         * admin/gitmerge.el (gitmerge-commit-message):
21827         Revert to including "skipped" messages in ChangeLog once again.
21829 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
21831         Use string> instead of equiv lambda with string<
21832         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
21833         lambda with string<.
21835 2015-06-05  Glenn Morris  <rgm@gnu.org>
21837         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
21838         (map--delete-array): Fix typo.
21840         * test/automated/map-tests.el: Replace "assert" with "should".
21842         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
21843         (SUBDIRS_REL): Derive from SUBDIRS.
21845         Tweak some build messages.
21846         * lisp/Makefile.in ($(lisp)/loaddefs.el):
21847         * lisp/cus-dep.el (custom-make-dependencies):
21848         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
21849         * lisp/international/titdic-cnv.el (batch-titdic-convert):
21850         Don't say how to compile.
21852 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
21854         Omit U+0332 COMBINING LOW LINE in previous change
21855         It turns out that it does not work on Ubuntu 15.04.
21857         Fix transliteration of Bahá'í months
21858         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
21859         Improve quality of Latin transliteration of Bahá'í month names.
21861         Fix curved quotes in a few places
21862         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
21863         The strings in question are not doc strings, so this partially
21864         undoes the recent change that assumed they were doc strings.
21865         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
21866         * lisp/info.el (Info-finder-find-node):
21867         Use curved quotes.
21868         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
21869         Also allow curved quotes in doc strings.
21871 2015-06-04  Glenn Morris  <rgm@gnu.org>
21873         * lisp/Makefile.in (AM_V_at): Add missing definition.
21875         * lisp/Makefile.in: Quieten output a bit.
21876         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
21877         Don't echo directories, since the commands we invoke print them.
21879         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
21880         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
21881         (SUBDIRS_SUBDIRS): New variables.
21882         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
21883         Remove.
21884         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
21885         (update-subdirs, compile-main, compile-clean):
21886         Replace "setwins" usage with new "SUBDIRS" variables.
21888         * lisp/vc/compare-w.el (compare-windows-get-window-function):
21889         Fix :version tag.
21891 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21893         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
21895         Undo removal of x_clear_area call on expose for GTK3 or cairo
21896         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
21897         Clear exposed area.  (Bug#20677)
21899 2015-06-04  Glenn Morris  <rgm@gnu.org>
21901         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
21903         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
21905         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
21906         Rename from quail-lao-update-translation, since lao.el defines that.
21908 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
21910         Handle new-style advice in find-funct
21911         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
21912         Handle new-style advice.  Return the symbol's function definition.
21913         (Bug#20718)
21914         (find-function-library): Update accordingly.
21916 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
21918         Merge branch 'map'
21920         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
21922         Add new function string-greaterp
21923         * lisp/subr.el (string-greaterp): New function.  Also aliased to
21924         `string>'.
21925         * test/automated/subr-tests.el (string-comparison-test): Add unit
21926         tests for `string>'and `string<'.
21927         * src/fns.c (string-lessp): Better docstring.
21929 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
21931         Fix timezone-related functions on MS-Windows
21932         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
21933         'xputenv', even if no reallocation of tzvalbuf was necessary.
21934         This fixes a bug in timezone-related functions on MS-Windows.
21935         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
21937 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
21939         Don't pass raw directory name to 'error'
21940         * lisp/files.el (basic-save-buffer-2): Avoid format error if
21941         a directory name contains a string like "%s".
21943 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
21945         Override 'grep --color=always'
21946         * lisp/progmodes/xref.el (xref-collect-matches):
21947         Override --color=always in grep-find-template.
21949 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
21951         Fix error introduced recently in file-notify-tests.el
21952         * test/automated/file-notify-tests.el
21953         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
21954         (file-notify--deftest-remote): Revert previous patch, not
21955         necessary anymore.
21957 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
21959         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
21960         Starting from a display string after a newline, point went to the
21961         previous line.  Also, fix an inadvertent use of a buffer position
21962         with FETCH_BYTE.  (Bug#20701)
21964 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
21966         Instrument file-notify-test.el in order to catch hydra error
21967         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
21968         Wrap body by `ignore-case', in order to trap non-local errors.
21970 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21972         Undo previous changes in non-toolkit scroll bar drawing
21973         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
21974         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
21976 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
21978         * .gitignore: Also ignore doc/*/*/*.html and .ps.
21980         Support quotes 'like this' in info files
21981         This is possible when 'makeinfo --disable-encoding' is used
21982         in Texinfo 5.
21983         * lisp/calc/calc-help.el (calc-describe-thing):
21984         * lisp/gnus/gnus-art.el (gnus-button-alist):
21985         * lisp/info.el (Info-find-index-name):
21986         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
21987         Also support quotes 'like this'.
21988         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
21989         * lisp/finder.el (finder-font-lock-keywords): Remove var that
21990         hasn't been used in years, instead of bothering to fix its quoting.
21992 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21994         * .gitignore: Remove !test/etags/html-src/*.html.
21995         It's no longer needed, since *.html was removed.  Sort.
21997 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
21999         Restore <D> instead of '.' in grep-find-template
22000         * lisp/cedet/semantic/symref/grep.el
22001         (semantic-symref-grep-use-template): Update a comment.
22002         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
22003         instead of '.' in grep-find-template (bug#20719).
22004         (rgrep): Pass nil as the directory to rgrep-default-command.
22005         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
22006         default value for DIR.
22007         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
22008         workaround.
22010 2015-06-02  Glenn Morris  <rgm@gnu.org>
22012         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
22014         * configure.ac (emacs_config_features): Add Cairo.
22016         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
22018 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
22020         Ensure that autorevert works for remote files in file-notify-tests.el
22021         * test/automated/file-notify-tests.el (file-notify--test-desc):
22022         New defvar.
22023         (file-notify--test-remote-enabled)
22024         (file-notify-test00-availability, file-notify-test01-add-watch)
22025         (file-notify-test02-events): Use it.
22026         (file-notify--test-event-test): Check proper descriptor.
22027         (file-notify-test03-autorevert): Ensure that
22028         `visited-file-modtime' has changed.  (Bug#20392)
22030 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
22032         Add a pcase pattern for maps and `map-let' based on it
22033         * lisp/emacs-lisp/map.el (map-let): New macro.
22034         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
22035         * test/automated/map-tests.el: New test for `map-let'.
22037 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
22039         Reuse rgrep mechanics in xref-find-regexp
22040         * lisp/progmodes/grep.el (rgrep-default-command):
22041         Extract from `rgrep'.
22042         * lisp/progmodes/xref.el (xref-collect-references): Split from
22043         `xref-collect-matches'.  Only handle the case of symbol search.
22044         (xref-collect-matches): Instead of Semantic Symref, use
22045         `rgrep-default-command', to take advantage of its directory and
22046         file ignore settings.
22047         (xref--collect-match): Remove the last argument, leaving the
22048         regexp construction up to the caller.
22049         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
22050         Change to take the xref-collect- function to use as an argument.
22051         (elisp-xref-find): Update accordingly.
22052         * lisp/progmodes/etags.el (etags--xref-find-matches)
22053         (etags-xref-find): Same.
22055         Move xref-elisp-location to elisp-mode.el
22056         * lisp/progmodes/xref.el (xref-elisp-location)
22057         (xref-make-elisp-location, xref-location-marker): Remove here.
22058         (xref--xref): Don't limit the type of the location slot.
22059         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
22060         Define as a cl-struct here.
22061         (xref-location-marker): Move here.
22063 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
22065         Minor tweaks for .gitignore
22066         * .gitignore: Don't ignore versioned *.html and *.ps files.
22067         Don't ignore admin/notes/tags that might be ignored as TAGS
22068         on case-insensitive filesystems.  (Bug#20710)
22070 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22072         Generate curved quotes in ert doc
22073         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
22074         (ert-results-mode-menu)
22075         (ert-results-pop-to-backtrace-for-test-at-point)
22076         (ert-results-pop-to-messages-for-test-at-point)
22077         (ert-results-pop-to-should-forms-for-test-at-point)
22078         (ert-describe-test):
22079         Quote ‘like this’, not `like this', when generating doc strings
22080         and the like.
22081         * test/automated/ert-x-tests.el (ert-test-describe-test):
22082         Allow quoting ‘like this’.
22084 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
22086         Add test for previous commit
22087         * test/automated/replace-tests.el: New file.
22088         (query-replace--split-string-tests): Add test for previous commit.
22090         Avoid confusion in query-replace history when replacing NUL chars
22091         * lisp/replace.el (query-replace--split-string): New function.
22092         (query-replace-read-from): Rely on the 'separator' property
22093         instead of searching for the NUL character (Bug#20690).
22095 2015-06-02  Glenn Morris  <rgm@gnu.org>
22097         Merge from origin/emacs-24
22098         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
22100         * admin/gitmerge.el (gitmerge-commit-message):
22101         Exclude "skipped" messages from ChangeLog.
22103 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
22105         Sync with Tramp repository
22106         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
22107         messages.
22108         (tramp-handle-make-auto-save-file-name): When calling
22109         `make-auto-save-file-name' internally, make sure it uses Unix-like
22110         behavior, not Windows-like behavior.
22111         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
22112         the local case, because "chown" might fail on w32.
22113         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
22114         for XEmacs.
22116 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
22118         MS-Windows followup for batch stdout/stderr output changes
22119         * lisp/international/mule-cmds.el (set-locale-environment):
22120         In batch mode, use console codepages for keyboard and terminal
22121         encoding.  (Bug#20545)
22123         Update .gitattributes for DOS EOL files
22124         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
22125         CRLF end-of-line format.
22127         NS equivalents of xterm.c and w32term.c changes
22128         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
22129         glyph string background also when the font in use claims
22130         preposterously large global height value.  Helps to remove
22131         artifacts left from previous displays when glyphless characters
22132         are displayed as hex code in a box.
22133         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
22134         value for FRAME_LINE_HEIGHT, even when a font claims very large
22135         value for its height.
22137 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
22139         Avoid grave accent quoting in stderr diagnostics
22140         A few Emacs diagnostics go directly to stderr, and so can't easily
22141         contain curved quotes (as non-UTF-8 locales might mishandle them).
22142         Instead of bothering to add support for this rarity, reword the
22143         diagnostics so that they don't use grave accent to quote.
22144         * src/alloc.c (mark_memory): Fix comment.
22145         * src/buffer.c (init_buffer):
22146         * src/dispnew.c (init_display):
22147         * src/emacs.c (main, sort_args):
22148         * src/lread.c (dir_warning):
22149         * src/term.c (init_tty):
22150         * src/unexmacosx.c (unexec):
22151         * src/xfns.c (select_visual):
22152         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
22153         Reword stderr diagnostics to avoid quoting `like this'.
22154         * src/unexmacosx.c: Include errno.h.
22155         * src/xfns.c (select_visual): Encode value for locale.
22157 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
22159         Treat batch stdout/stderr like standard display
22160         Calls like (print FOO) could generate improperly encoded or
22161         hard-to-read output if FOO contains characters outside the system
22162         locale.  Fix this by treating batch stdout and stderr like
22163         interactive standard display, when it comes to transliterating and
22164         encoding characters (Bug#20545).
22165         * doc/emacs/mule.texi (Communication Coding):
22166         * doc/lispref/display.texi (Active Display Table):
22167         * doc/lispref/nonascii.texi (Locales):
22168         * etc/NEWS:
22169         * src/coding.c (syms_of_coding):
22170         * src/dispnew.c (syms_of_display):
22171         Document this.
22172         * src/print.c: Include disptab.h.
22173         (printchar_to_stream): New function, with much of the guts of the
22174         old Fexternal_debugging_output, except this one also uses the
22175         standard display table.
22176         (printchar, strout, Fexternal_debugging_output): Use it.
22178 2015-05-31  Glenn Morris  <rgm@gnu.org>
22180         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
22182 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
22184         Remove DEFSYMs that aren't used at the C level.  Also:
22185         * src/decompress.c (Qzlib_dll):
22186         * src/font.c (Qunicode_sip):
22187         * src/frame.c (Qtip_frame):
22188         * src/ftfont.c (Qserif):
22189         * src/gnutls.c (Qgnutls_dll):
22190         * src/xml.c (Qlibxml2_dll):
22191         Move from here ...
22192         * src/w32fns.c (syms_of_w32fns): ... to here,
22193         as these are used only on MS-Windows.
22195 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
22197         Use another default value for tramp-histfile-override
22198         * lisp/net/tramp-sh.el (tramp-histfile-override):
22199         Use ".tramp_history" as default.
22200         Fixes bug#20446
22202 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
22204         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
22206 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
22208         * etc/NEWS: Add an entry about map.el.
22210         Improve the docstring of functions in map.el
22211         Since a map is not a data structure but a concept, adding information
22212         about the possible types of maps can be useful information.
22213         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
22214         each public function.
22216 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
22218         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
22219         specific tests depending on the type of the map.
22221         * lisp/emacs-lisp/map.el: Better docstrings.
22223 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22225         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
22227 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
22229         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
22231         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
22233         Fix a false negative in `map-elt' with alists and values being nil
22234         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
22235         found but its associated value is nil, do not return the default
22236         value.
22237         * test/automated/map-tests.el: Add a regression test.
22239 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
22241         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
22243         Do not signal an error when trying to delete a key from an array
22244         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
22245         the key is present to avoid signaling an error.
22246         * test/automated/map-tests.el: Add a test for deleting non-existing
22247         keys from maps.
22249         * lisp/emacs-lisp/map.el: Better docstring.
22251         Minor improvement in map-elt
22252         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
22253         doing a lookup in arrays, but check the boundaries of the array
22254         instead.
22255         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
22256         and a negative integer as key.
22258 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
22260         * test/automated/map-tests.el: Refactoring of test methods.
22262         * test/automated/map-tests.el: Renamed from map-test.el.
22264 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
22266         * lisp/emacs-lisp/map.el (map-into): Better error message.
22268         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
22270         Throw an error when converting a map into an unknown map type
22271         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
22272         not valid.
22273         * test/automated/map-tests.el: Add a regression test.
22275         New library map.el similar to seq.el but for mapping data structures.
22276         * test/automated/map-tests.el: New file.
22277         * lisp/emacs-lisp/map.el: New file.
22279 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
22281         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
22282         there's no explicit tag name (bug#20629).
22284 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
22286         Remove format2
22287         * src/editfns.c, src/lisp.h (format2): Remove.
22288         It is more trouble than it's worth, now that we have CALLN.
22289         This is just a minor refactoring.
22290         * src/buffer.c (Fkill_buffer):
22291         * src/dbusbind.c (XD_OBJECT_TO_STRING):
22292         * src/fileio.c (barf_or_query_if_file_exists):
22293         Adjust to format2 going away.
22295         Don't misencode C-generated messages
22296         Also, be more consistent about calls to 'Fmessage' vs 'message'.
22297         * src/alloc.c (Fgc_status):
22298         Prefer AUTO_STRING to build_string for Fmessage call.
22299         * src/data.c (Fmake_variable_buffer_local)
22300         (Fmake_local_variable, Fmake_variable_frame_local):
22301         * src/doc.c (store_function_docstring):
22302         Use Fmessage, not message, since the argument can contain
22303         non-ASCII characters, and this can cause the resulting message
22304         to be incorrectly encoded for the current environment.
22305         * src/fns.c (maybe_resize_hash_table):
22306         * src/xselect.c (x_clipboard_manager_save_all):
22307         Use message, not Fmessage, since Fmessage's power isn't needed here.
22308         * src/process.c (Fmake_network_process): Reword message to avoid %s.
22309         * src/xdisp.c (vmessage): Document restrictions on message contents.
22310         (message_nolog) [false]: Remove unused code.
22312         Use \r rather than ^M in string literals
22313         This is less likely to cause problems on platforms that
22314         use CRLF (or CR!) termination for lines.
22316         Update .gitattributes to match current sources
22317         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
22318         * .gitattributes: Accommodate tests that insist on DOS format.
22319         Remove test/automated/data/decompress/foo-gzipped.
22320         Add etc/e/eterm-color.
22322 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
22324         * doc/emacs/mule.texi (Modifying Fontsets):
22325         Document face-ignored-fonts.  (Bug#20628)
22327         Add etags test for the new -Q option
22328         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
22329         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
22330         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
22331         test-case changes below.
22332         * test/etags/ETAGS.good_6: New file.
22333         * test/etags/cp-src/x.cc: New file.
22334         * test/etags/Makefile (CPSRC): Add x.cc.
22335         (check): Add one more test, for -Q.
22337 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
22339         Use list for the tags completion table, not obarray
22340         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
22341         list instead of an obarray
22342         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
22343         (tags-completion-table): Combine those lists.
22344         (tags-completion-table): Update the docstring.
22346 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
22348         Restore EOL format testing in etags
22349         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
22350         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
22351         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
22352         test-case changes below.
22353         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
22354         * test/etags/cp-src/c.C (B): Add back stray CR character.
22355         * test/etags/c-src/dostorture.c: Add back.
22356         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
22358 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
22360         Declare Emacs on MS-Windows to be DPI-aware
22361         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
22362         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
22363         This avoids Windows entering compatibility mode for Emacs,
22364         which causes fonts to look less nice.
22366 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
22368         Improve Tramp traces
22369         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
22370         * lisp/net/tramp.el (tramp-debug-message): Use it.
22372 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
22374         backup-buffer minor reworking of internals
22375         * lisp/files.el (backup-buffer): Rework to avoid a couple of
22376         unused locals inadvertently introduced in the previous change.
22378         backup-buffer now reports .emacs.d/%backup% ills
22379         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
22380         fails due to disk space exhaustion or whatever, do not pretend
22381         that it succeeded.  More generally, do a better job of checking
22382         for I/O failures, and limit the scope of the condition-case to
22383         just the operations where file errors should be caught and ignored
22384         (Bug#20595).  Also, don't bother trying to delete later backups if
22385         an earlier deletion fails, as this is a sign of trouble and it's
22386         better to stop when there's trouble.
22388         copy-file now truncates output after writing
22389         * src/fileio.c (Fcopy_file): Truncate output after writing rather
22390         than before.  This is more likely to work than truncation before
22391         writing, if the file system is out of space or the user is over
22392         disk quota (Bug#20595).  Also, check for read errors.
22394 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
22396         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
22397         Don't load descriptors from directories above the package directories.
22399 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
22401         Merge from gnulib
22402         This incorporates the following (Bug#20681):
22403         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
22404         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
22405         * lib/set-permissions.c: Copy from gnulib.
22407 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
22409         Improve Tramp traces
22410         * lisp/net/tramp.el (tramp-call-process-region): New defun.
22411         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
22413 2015-05-29  Glenn Morris  <rgm@gnu.org>
22415         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
22417 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
22419         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
22420         The signature was changed in the cairo branch, merged on 2015-05-23.
22421         This oversight broke compiling only the non-toolkit X version.
22423 2015-05-29  Samer Masterson  <samer@samertm.com>
22425         * doc/lispref/os.texi: Update initial-buffer-choice docs.
22427 2015-05-29  Glenn Morris  <rgm@gnu.org>
22429         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
22430         Mark as an expected failure.
22432 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
22434         Change package test to look for curved quotes
22435         * test/automated/package-test.el (package-test-describe-package)
22436         (package-test-signed): Search for curved single quotes as well as
22437         for grave accent and apostrophe.
22439 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
22441         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
22442         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
22444 2015-05-28  Samer Masterson  <samer@samertm.com>
22446         Show files when `initial-buffer-choice' is non-nil
22447         * lisp/startup.el (command-line-1): When Emacs is given a file as an
22448         argument and `initial-buffer-choice' is non-nil, display both the file
22449         and `initial-buffer-choice'.  For more than one file, show
22450         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
22451         commands out of the command line arg parser.
22452         (initial-buffer-choice): Clarify docstring.
22454 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
22456         Fix last commit
22457         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
22458         (gnulib module qcopy-acl): Add back, as it is harmless.  This
22459         minimizes differences wrt lib/gnulib.mk.
22461         Fix the MS-Windows build as followup to gnulib update
22462         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
22463         set-permissions.c, as they don't compile on MinGW.
22464         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
22466 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
22468         Revert my change to gnus-art.el
22469         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
22470         It wasn't that important, and it caused a Gnus build to fail.  See:
22471         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
22473         New minor mode Electric Quote
22474         This lets you easily insert quotes ‘like this’ by typing
22475         quotes `like this', and similarly you can easily insert
22476         quotes “like this” by typing quotes ``like this'' (Bug#20545).
22477         * doc/emacs/basic.texi (Inserting Text):
22478         * doc/emacs/modes.texi (Minor Modes):
22479         * etc/NEWS: Document it.
22480         * doc/emacs/text.texi (Quotation Marks): New section.
22481         * lisp/electric.el (electric-quote-comment)
22482         (electric-quote-string, electric-quote-paragraph):
22483         New custom vars.
22484         (electric--insertable-p)
22485         (electric-quote-post-self-insert-function): New functions.
22486         (electric-quote-mode, electric-quote-local-mode): New minor modes.
22487         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
22488         Add curved single quotes to electric-pair-text-pairs.
22489         Set electric-quote-string in this buffer.
22491         A few more doc string fixes (Bug#20385)
22493         Accept curved quotes in doc strings
22494         * lisp/info-look.el (info-lookup-guess-custom-symbol):
22495         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
22497         Generate curved quotes in pseudo-info nodes
22498         * lisp/info.el (Info-virtual-index-find-node)
22499         (Info-virtual-index, Info-apropos-find-node, info-apropos):
22500         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
22502         Fix minor quoting problems in doc strings
22503         Most of these fixes involve escaping grave accents that are
22504         actually intended to be grave accents, not left quotes.
22505         (Bug#20385)
22507         Support curved quotes in doc strings
22508         Emacs's traditional doc string style has been to quote symbols
22509         `like this'.  This worked well on now-obsolete terminals where
22510         ` and ' were symmetric quotes, but nowadays curved quotes
22511         ‘like this’ look better.  Support quoting the new way too.
22512         (Bug#20385)
22513         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
22514         ‘like-this’ as well as `like-this'.
22515         * etc/NEWS: Mention this.
22516         * lisp/cedet/mode-local.el (overload-docstring-extension)
22517         (mode-local-print-binding, mode-local-describe-bindings-2):
22518         * lisp/cus-theme.el (describe-theme-1):
22519         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22520         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22521         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
22522         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
22523         (eieio-help-constructor):
22524         * lisp/emacs-lisp/package.el (describe-package-1):
22525         * lisp/faces.el (describe-face):
22526         * lisp/help-fns.el (help-fns--key-bindings)
22527         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
22528         (help-fns--interactive-only, describe-function-1):
22529         (describe-variable):
22530         * lisp/help.el (describe-mode):
22531         * lisp/international/mule-cmds.el (describe-input-method)
22532         (describe-language-environment):
22533         * lisp/international/mule-diag.el (describe-character-set)
22534         (print-coding-system-briefly, list-input-methods)
22535         (list-input-methods-1):
22536         Insert curved quotes rather than grave accent and apostrophe.
22537         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
22538         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
22539         (checkdoc-proper-noun-region-engine):
22540         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
22541         (lisp-cl-font-lock-keywords-2):
22542         * lisp/finder.el (finder-font-lock-keywords):
22543         * lisp/gnus/gnus-art.el (gnus-button-alist):
22544         * lisp/help-fns.el (help-do-arg-highlight)
22545         (describe-function-1, describe-variable):
22546         * lisp/help-mode.el (help-xref-symbol-regexp)
22547         (help-xref-info-regexp, help-xref-url-regexp):
22548         * lisp/help.el (describe-mode):
22549         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
22550         * lisp/wid-edit.el (widget-documentation-link-regexp):
22551         Parse symbols quoted ‘like-this’ as well as `like-this'.
22552         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
22553         Add "‘" and "’" to electric-pair-text-pairs.
22554         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
22555         (elisp-completion-at-point, elisp--preceding-sexp):
22556         Also treat "‘" and "’" as quoting chars.
22558         substitute-command-keys now curves quotes
22559         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
22560         * doc/lispref/help.texi (Keys in Documentation):
22561         * etc/NEWS: Document this.
22562         * src/doc.c (Fsubstitute_command_keys): Implement it.
22564 2015-05-28  Glenn Morris  <rgm@gnu.org>
22566         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
22567         (rmail-summary-by-topic, rmail-summary-by-senders):
22568         No longer strip leading/trailing whitespace.
22570         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
22571         (f90-no-block-limit): Add "enum".  (Bug#20680)
22572         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
22573         New tests.
22575 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22577         * lisp/isearch.el (isearch--current-buffer): Give a default value.
22578         Un-revert changes mistakenly dropped by f9fabb2b.
22580 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22582         Merge from gnulib
22583         This incorporates:
22584         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
22585         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
22586         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
22587         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
22588         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
22589         2015-05-26 stdio: fix probe on mingw under gcc 5.1
22590         * admin/merge-gnulib (GNULIB_MODULES):
22591         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
22592         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
22593         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
22594         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
22595         Get latest versions from gnulib.
22596         * lib/get-permissions.c, lib/set-permissions.c: New files.
22597         * lib/gnulib.mk, m4/gnulib-comp.m4:
22598         Regenerate.
22599         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
22601 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
22603         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
22604         process here.
22605         (vc-do-command): Rather than here (bug#20608).
22607 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
22609         Avoid gratuitous delete-dups in face-at-point
22610         * lisp/faces.el (face-at-point): Do not compute the properly
22611         ordered, duplicate-free list if only a single value is
22612         requested anyway.  (Bug#20519)
22614         Show the exact C-x 8 RET invocation in describe-char
22615         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
22616         invocation instead of a template.  (Bug#20522)
22618 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
22620         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
22621         (package-menu--post-refresh): Call `tabulated-list-print' with the
22622         UPDATE argument.  This only affects the refresh action, the revert
22623         action still erases tags.
22624         (package-menu-get-status): Change `assq' to `assoc'.
22625         (package-menu--mark-upgrades-1): New function.
22626         (package-menu--mark-upgrades-pending): New variable.
22627         (package-menu-mark-upgrades): Use them to delay marking until
22628         after refresh is done.
22629         (package-menu--post-refresh): Call mark-upgrades-1 if
22630         mark-upgrades-pending is non-nil.
22632 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
22634         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
22635         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
22636         (commit 3953c4be2816537be95520605d45b866dc731f4b).
22638 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22640         * lisp/isearch.el (isearch--current-buffer): New var.
22641         (isearch-update): Set cursor-sensor-inhibit here.
22642         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
22643         (bug#20532).
22645         Change inhibit-point-motion-hooks to t
22646         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
22647         to t and document it as obsolete.
22649 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
22651         Support ZIP files that use Zip64 extensions
22652         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
22653         format of central directory offsets used by Zip64 extensions.
22654         (Bug#20665)
22656 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
22658         New test tramp-test30-make-auto-save-file-name
22659         * test/automated/tramp-tests.el
22660         (tramp-test30-make-auto-save-file-name): New test.
22661         (tramp-test31-special-characters)
22662         (tramp-test31-special-characters-with-stat)
22663         (tramp-test31-special-characters-with-perl)
22664         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
22665         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
22666         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
22667         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
22669         Improve tramp-handle-make-auto-save-file-name
22670         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
22671         (tramp-handle-make-auto-save-file-name): Let native
22672         `make-auto-save-file-name' use `auto-save-file-name-transforms',
22673         if `tramp-auto-save-directory' is not set.
22675 2015-05-27  Glenn Morris  <rgm@gnu.org>
22677         No longer set dired-directory in eshell.  (Bug#16477)
22678         * lisp/eshell/esh-mode.el (eshell-mode):
22679         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
22681         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
22683         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
22684         * lisp/progmodes/cc-mode.el (c-mode-help-address):
22685         Change to submit@debbugs.
22686         (c-mode-bug-package): New constant.
22687         (mail-position-on-field): Declare.
22688         (c-submit-bug-report): Insert X-Debbugs-Package header.
22689         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
22690         Mention debbugs.gnu.org.
22692 2015-05-26  Glenn Morris  <rgm@gnu.org>
22694         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
22695         (rmail-summary-by-recipients, rmail-summary-by-topic)
22696         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
22697         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
22699 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
22701         Handle curved quotes in info files
22702         * lisp/calc/calc-help.el (calc-describe-thing):
22703         * lisp/info.el (Info-find-index-name)
22704         (Info-try-follow-nearest-node, Info-fontify-node):
22705         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
22706         In info files, process quotes ‘like this’ the same way we process
22707         quotes `like this'.  This catches a few places we missed earlier.
22709 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
22711         xref-prompt-for-identifier: Use a list value
22712         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
22713         value, to be interpreted as a list of commands.
22714         (xref--prompt-p): New function.
22715         (xref--read-identifier): Use it.
22717 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
22719         Teach MS-Windows font back-end return per-glyph ascent/descent
22720         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
22721         values.
22722         * src/w32font.c (w32font_text_extents): Compute, cache, and
22723         accumulate per-glyph ascent and descent values, instead of copying
22724         global values from the font.  If the values are not available from
22725         the font data, i.e., non-TTF fonts, fall back on font-global values.
22726         (compute_metrics): Compute and return per-glyph ascent and descent
22727         values, if returned by GetGlyphOutlineW, falling back on
22728         font-global values.  (Bug#20628)
22729         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
22730         height of rectangle to be drawn, to be compatible with
22731         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
22732         box, when per-glyph ascent/descent values are used.
22734 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
22736         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
22737         Don't sort if sorter is nil.
22739 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
22741         Fix Bug#20621
22742         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
22743         are major modes which set `auto-save-mode' on their own rules;
22744         Tramp shall not overwrite such settings.
22746 2015-05-26  Glenn Morris  <rgm@gnu.org>
22748         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
22749         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
22750         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
22751         Doc updates.
22752         (vc-dir-mode): Remove unnecessary autoload.
22754 2015-05-25  Philipp Stephani  <phst@google.com>
22756         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
22757         (xterm--extra-capabilities-type): Add `getSelection'.
22758         (xterm--query): Add `no-async' argument.
22759         (xterm--init-activate-get-selection): New function.
22760         (terminal-init-xterm): Use it.
22761         (xterm--init-modify-other-keys): Rename from
22762         terminal-init-xterm-modify-other-keys.
22763         (xterm--init-bracketed-paste-mode): Rename from
22764         terminal-init-xterm-bracketed-paste-mode.
22765         (xterm--init-activate-set-selection): Rename from
22766         terminal-init-xterm-activate-set-selection.
22767         (xterm--selection-char): New function.
22768         (gui-backend-set-selection): Use it.  Use the &context to only apply
22769         this method in terminals where we enabled the feature.
22770         (gui-backend-get-selection): New method.
22772 2015-05-25  Daniel Colascione  <dancol@dancol.org>
22774         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
22775         keyword constants to C++.
22777 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
22779         Make TAGS files more portable to MS-Windows
22780         * etc/NEWS: Document this.
22781         * lib-src/etags.c (readline_internal) [DOS_NT]:
22782         Don't treat CRs differently from GNUish hosts.
22783         * lisp/progmodes/etags.el (etags-goto-tag-location):
22784         Adjust STARTPOS to account for the skipped CRs in dos-style files.
22786 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
22788         Improve fix of bug#20634 in tramp-sh.el
22790 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
22792         Fix a typo in last commit
22793         * lib-src/etags.c (C_entries): Fix a typo.
22794         * test/etags/ETAGS.good_1:
22795         * test/etags/ETAGS.good_2:
22796         * test/etags/ETAGS.good_3:
22797         * test/etags/ETAGS.good_4:
22798         * test/etags/ETAGS.good_5:
22799         * test/etags/CTAGS.good: Update due to the change in etags.c.
22801         Fix tagging of class members in C-like OO languages
22802         * lib-src/etags.c (longopts): Add new option --class-qualify and
22803         its shorthand -Q.
22804         (print_help): Add help text for --class-qualify.
22805         (main): Add handling of -Q.
22806         (consider_token, C_entries) <omethodparm>: Append argument types
22807         to Objective C methods only if --class-qualify was specified.
22808         Qualify C++, Objective C, and Java class members with their class
22809         names only if --class-qualify was specified.
22810         (C_entries): If --class-qualify was not specified, remove the
22811         namespace and class qualifiers from tag names of C++ methods.
22812         This allows to use etags.el as xref back-end without the
22813         tag-symbol-match-p method, which greatly increases the number of
22814         potentially false positives.  (Bug#20629)
22815         * doc/man/etags.1: Update to document the new --class-qualify
22816         option.
22817         * test/etags/ETAGS.good_1:
22818         * test/etags/ETAGS.good_2:
22819         * test/etags/ETAGS.good_3:
22820         * test/etags/ETAGS.good_4:
22821         * test/etags/ETAGS.good_5:
22822         * test/etags/CTAGS.good: Update due to changes in etags.c.
22824 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
22826         (cl-generic-define-method): Side effects are evil (bug#20644)
22827         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
22828         cons-cells that might be used as keys in an `equal' hash-table.
22830 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
22832         Make erc timestamps visible again
22833         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
22834         Make timestamps visible again (if requested).
22836 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
22838         Fix last change in etags.c that broke tagging compresed files
22839         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
22840         quoting of decompression shell command for MS-Windows/MS-DOS.
22842 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
22844         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
22845         (Bug#20639)
22847 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
22849         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
22850         Fix typo in "Inhibit `epa-file-handler' in Tramp"
22851         (commit 89035e247591c8d688fce922b7079881aa110f33).
22853 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
22855         Fix IPv6 addresses in Tramp
22856         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
22857         Add square brackets around host name.
22859 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
22861         Inhibit `epa-file-handler' in Tramp (Bug#20634)
22862         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
22863         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
22864         `epa-file-handler'.
22866 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
22868         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
22869         (pcase-let): Document the behavior in case the pattern doesn't match.
22871 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22873         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
22874         (tabulated-list-print): New optional argument, UPDATE.  If
22875         non-nil, the list is printed by only adding and deleting the
22876         changed entries, instead of erasing the whole buffer.  This method
22877         is much faster when few or no entries have changed.
22878         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
22879         * etc/NEWS: Document it.
22881         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
22882         (tabulated-list--get-sorter): New function.
22883         (tabulated-list-print): Restore window-line when remember-pos is
22884         passed and optimize away the `nreverse'.
22886 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
22888         Simpilify etags TEX mode scanning
22889         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
22890         Remove static vars.
22891         (TeX_commands): Deduce escapes here instead.
22892         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
22893         This removes the need for a reset_input call.
22895         Improve etags I/O error reporting
22896         * lib-src/etags.c:
22897         Don't include sys/types.h and sys/stat.h; no longer needed.
22898         (infilename): New static var.
22899         (process_file_name): Don't call 'stat'.  Instead, just open the
22900         file for reading and report any errors.  Don't bother making
22901         a copy of the file argument; it's not needed.  Be more careful to
22902         use the failing errno when reporting an error.
22903         Quote the real name better (though no perfectly)
22904         when passing it to the shell.
22905         (reset_input): New function, which reports I/O errors.
22906         All uses of 'rewind' changed to use this function.
22907         (perhaps_more_input): New function, which also checks for
22908         I/O errors.  All uses of 'feof' changed to use this function.
22909         (analyze_regex): Report an error if fclose fails.
22910         (readline_internal): Report an error if getc fails.
22911         (etags_mktmp): Return an error if close fails.
22913         etags.c: avoid side effects in 'if'
22914         * lib-src/etags.c (process_file_name, Perl_functions)
22915         (TEX_decode_env): Hoist side effects into previous statement.
22917         .gitignore tweaks
22918         * .gitignore: Ignore all *.stamp files.  Sort.
22919         Ignore [0-9]*.txt (commonly used name for git patches)
22920         and /vc-dwim-log-* (vc-dwim temporary).
22922 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
22924         Fix last change in etags.c, which failed the test suite
22925         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
22926         before the last change.
22928 2015-05-23  Glenn Morris  <rgm@gnu.org>
22930         Remove charset map files from repository, generate in first bootstrap
22931         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
22932         (all): Create the stamp file.
22933         (extraclean): Delete the stamp file.
22934         * src/Makefile.in (lispintdir, charsets): New variables.
22935         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
22936         New rules.
22937         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
22938         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
22939         * etc/charsets/*.map: Remove from repository.
22941 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
22943         Cleanup etags.c to use locale-independent code
22944         Although this doesn't alter behavior (as etags doesn't use
22945         setlocale), the new version is more clearly locale-independent and
22946         the executable is a bit smaller on my platform.
22947         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
22948         Include <c-ctype.h> instead of <ctype.h>.
22949         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
22950         (begtk, midtk):
22951         Remove; no longer needed.
22952         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
22953         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
22954         c_islower, c_tolower, respectively.
22955         (notinname, begtoken, intoken, endtoken): Rewrite as functions
22956         instead of macros, and initialize the tables at compile-time
22957         rather than at run-time.
22959         Put default action first in src/Makefile
22960         * src/Makefile.in (all): Put this rule before lisp.mk.
22961         That way, plain 'make' works in the src directory again.
22963 2015-05-23  Glenn Morris  <rgm@gnu.org>
22965         * Makefile.in: Fix extraclean rule.
22966         (extraclean_dirs): New.
22967         (extraclean): Use it.
22969 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
22971         Avoid compiler warning in image.c on MS-Windows
22972         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
22973         warning in image.c.
22975 2015-05-23  Glenn Morris  <rgm@gnu.org>
22977         Fix --without-toolkit-scroll-bars builds.
22978         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
22979         Add new argument to x_clear_area1.
22980         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
22981         Update x_clear_area arguments.
22983         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
22984         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
22985         Change to included version.
22986         (LOCAL, local, totalclean): Remove.
22987         (extraclean): Delete all generated files.
22989 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
22991         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
22992         CVS/Entries exists.
22994         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
22996         * lisp/progmodes/etags.el (tags-completion-at-point-function):
22997         Don't trust the find-tag function.
22999 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
23001         Pacify --enable-gcc-warnings
23002         * src/frame.h (x_query_color): Remove redundant extern decl.
23003         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
23004         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
23005         (ftcrfont_text_extents, ftcrfont_draw):
23006         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
23007         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
23008         (x_ins_del_lines, frame_highlight, frame_unhighlight)
23009         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
23010         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
23011         (x_update_window_begin, x_connection_closed)
23012         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
23013         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
23014         (*x_gc_get_ext_data, x_extension_initialize)
23015         (x_cr_accumulate_data):
23016         Remove redundant static decl.  Many of these GCC doesn't complain
23017         about, but we might as well clean out the duplication while we're
23018         in the neighborhood.
23019         * src/xterm.c (x_fill_trapezoid_for_relief):
23020         Remove decl of nonexistent function.
23022 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
23024         Replace gui-method macros with cl-generic with &context
23025         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
23026         (gui-method-declare, gui-call): Remove.
23027         (frame-creation-function): Use cl-defgeneric.
23028         (make-frame): Adjust callers.
23029         * lisp/menu-bar.el (menu-bar-edit-menu):
23030         Use gui-backend-selection-exists-p.
23031         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
23032         (gui-backend-get-selection): New cl-generic to replace
23033         gui-get-selection method.
23034         (gui-backend-set-selection): New cl-generic to replace
23035         gui-set-selection method.
23036         (gui-selection-owner-p): New cl-generic to replace
23037         gui-selection-owner-p method.
23038         (gui-backend-selection-exists-p): New cl-generic to replace
23039         gui-selection-exists-p method.  Adjust all callers.
23040         * lisp/server.el (server-create-window-system-frame): Don't ignore
23041         window-system spec even when unsupported.
23042         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
23043         * lisp/startup.el (handle-args-function, window-system-initialization):
23044         Use cl-defgeneric.
23045         (command-line): Adjust calls accordingly.
23046         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
23047         a window-system-initialization method.
23048         (handle-args-function, frame-creation-function): Use cl-defmethod.
23049         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
23050         (gui-get-selection): Use cl-defmethod on the new functions instead.
23051         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
23052         a gui-backend-get-selection method.
23053         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
23054         Use cl-defmethod on the new functions instead.
23055         (msdos-window-system-initialization): Turn into
23056         a window-system-initialization method.
23057         (frame-creation-function, handle-args-function): Use cl-defmethod.
23058         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
23059         a window-system-initialization method.
23060         (handle-args-function, frame-creation-function): Use cl-defmethod.
23061         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
23062         (gui-get-selection): Use cl-defmethod on the new functions instead.
23063         * lisp/term/x-win.el (x-window-system-initialization): Turn into
23064         a window-system-initialization method.
23065         (handle-args-function, frame-creation-function): Use cl-defmethod.
23066         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
23067         (gui-get-selection): Use cl-defmethod on the new functions instead.
23068         * lisp/term/xterm.el (xterm--set-selection): Turn into
23069         a gui-backend-set-selection method.
23070         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
23071         (Fns_selection_owner_p): Remove unused arg `terminal'.
23072         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
23074 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
23076         Revert "Fix etags Bug#20629 that broke C++ support"
23077         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
23079 2015-05-23  Jan D  <jan.h.d@swipnet.se>
23081         Fix etags Bug#20629 that broke C++ support
23082         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
23083         Revert commit from Sun May 10 (Bug#20629).
23085         Merge branch 'cairo'.
23086         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
23087         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
23089         Merge branch 'master' into cairo
23091         Fixes to compile cairo branch without cairo
23092         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
23093         first argument.
23094         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
23095         USE_CAIRO.
23097 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
23099         * lisp/emacs-lisp/package.el: Always update selected-packages.
23100         (package--update-selected-packages): New function.
23101         (package-menu-execute): Use it before starting the transaction,
23102         this way the list of selected packages is updated even when the
23103         transaction fails.
23104         (package-menu--perform-transaction): Don't edit selected-packages.
23106 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
23108         Fix etags reading of compressed files
23109         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
23110         Include fcntl.h, for O_CLOEXEC.
23111         (process_file_name): Don't use 'popen', whose streams cannot be
23112         rewound.  Instead, uncompress the file to a temporary file,
23113         created by 'etags_mktmp', and read from that as usual.
23114         (etags_mktmp): New function.
23115         * test/etags/ETAGS.good_1:
23116         * test/etags/ETAGS.good_2:
23117         * test/etags/ETAGS.good_3:
23118         * test/etags/ETAGS.good_4:
23119         * test/etags/ETAGS.good_5: Update to be consistent with latest
23120         changes in etags.c regarding reading compressed files.
23122         Improve documentation of 'set-fontset-font'
23123         * doc/lispref/display.texi (Fontsets): Document the value of nil
23124         for the 3rd argument of 'set-fontset-font'.
23126         Fix documentation of forward-line
23127         * src/cmds.c (Fforward_line): Clarify the return value if the line
23128         at end of accessible portion of the buffer has no newline.
23129         * doc/lispref/positions.texi (Text Lines): Document what happens
23130         if the line at end of accessible portion of buffer has no newline.
23131         (Bug#20587)
23133 2015-05-22  Glenn Morris  <rgm@gnu.org>
23135         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
23137         * admin/charsets/mapconv (LC_ALL): Set to C.
23139         * Makefile.in: Add admin/charsets into top-level clean rules.
23140         (clean): Add admin/charsets.
23141         (maybeclean_dirs): New variable.
23142         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
23144         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
23146 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
23148         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
23150 2015-05-22  Glenn Morris  <rgm@gnu.org>
23152         Generate admin/charsets Makefile via configure, and make more portable
23153         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
23154         (admin/charsets/Makefile): Generate it.
23155         * admin/charsets/Makefile.in: Rename from Makefile.
23156         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
23157         New variables, set by configure.
23158         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
23159         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
23160         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
23161         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
23162         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
23163         (all): Declare PHONY.
23164         (local): New PHONY target.
23165         (map_template): New template.  Use to define short PHONY aliases.
23166         (*.map): Add directory prefixes to targets and prerequisites.
23167         Respect make verbosity.
23168         (JISC6226.map): Replace non-portable sed append without newline.
23169         (install): Remove rule.
23170         (clean): Only delete temporary sedscript.
23171         (bootstrap-clean, distclean, maintainer-clean, extraclean)
23172         (totalclean): New PHONY rules.
23173         * admin/charsets/mapconv (BASE): Replace basename with expr.
23174         (FILE): Add "mapfiles" subdirectory.
23175         (AWK): New variable.  Use throughout in place of "awk".
23176         (main): Use "gunzip -c" in place of "zcat".
23177         Don't leave whitespace before "p", for older sed.
23178         * admin/charsets/mapfiles/PTCP154: Add final newline,
23179         to make older sed versions happy.
23181 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
23183         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
23184         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
23185         (auto-revert-notify-watch-descriptor): Use defvar-local.
23186         (find-file-hook, auto-revert-tail-mode)
23187         (auto-revert-notify-add-watch): Use setq-local.
23188         (auto-revert-notify-add-watch): Don't call make-local-variable on
23189         kill-buffer-hook (bug#20601).
23191 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23193         Change defgeneric so it doesn't completely redefine the function
23194         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
23195         previously defined methods.
23196         (cl-generic-define-method): Let-bind purify-flag instead of
23197         using `fset'.
23198         (cl--generic-prefill-dispatchers): Only define during compilation.
23199         (cl-method-qualifiers): Remove redundant alias.
23200         (help-fns-short-filename): Silence byte-compiler.
23201         * test/automated/cl-generic-tests.el:
23202         Adjust to new defgeneric semantics.
23204 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
23206         * lisp/emacs-lisp/package.el (package-menu-execute):
23207         Remove reference to remove-dups.
23209 2015-05-21  kwhite  <kwhite@gnu.org>
23211         * lisp/erc/erc.el: Hide network/channel messages.
23212         (erc-network-hide-list, erc-channel-hide-list): New lists to define
23213         message types per network/channel.
23214         (erc-add-targets): New function to parse list of targets.
23215         (erc-hide-current-message-p): Modify to check for new targets.
23217 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
23219         Don't quote nil and t in doc strings
23220         This is as per "Tips for Documentation Strings" in the elisp manual.
23221         For consistency, do the same in diagnostics and comments.
23223 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
23225         Fix a minor problem with mouse-face on mode line
23226         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
23227         mouse face also if the mouse pointer hovers above mode-line glyphs
23228         that don't come from any Lisp string.  (Bug#20620)
23230 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
23232         * lisp/emacs-lisp/package.el: Fix selected-package logic.
23233         (package-menu-execute): Mark as selected all non-upgrade packages
23234         being installed.
23235         (package-menu--perform-transaction): Don't mark anything.
23237         * lisp/emacs-lisp/package.el: Mode-line progress report.
23238         (package-menu--transaction-status): New variable.
23239         (package-menu-mode, package-menu--perform-transaction): Use it.
23241         * lisp/emacs-lisp/package.el: Better transaction messages.
23242         (package-menu--partition-transaction): New function.
23243         (package-menu--prompt-transaction-p, package-menu-execute):
23244         Use it.
23245         (package-menu--perform-transaction): Don't do any messaging.
23247         * lisp/emacs-lisp/package.el: Revert async package transactions.
23248         (package-menu-async): Update doc.
23249         (package-install-from-archive, package-download-transaction)
23250         (package-install, package-menu--perform-transaction)
23251         (package-menu-execute): Remove asynchronous functionality.
23253 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
23255         Revert doc string changes to f90.el
23256         Problem reported by Glenn Morris in:
23257         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
23258         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
23259         Revert recent changes to doc strings, as it's intended that they
23260         use grave accent, not quote.
23262 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
23264         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
23265         Improve parameter name.
23267         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
23269 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
23271         Don't require help-fns when not needed
23272         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
23273         * lisp/emacs-lisp/elint.el:
23274         Don't require help-fns at the top level
23275         * lisp/emacs-lisp/advice.el (ad-arglist):
23276         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
23277         Don't require help-fns.  (Bug#17001)
23279 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
23281         Fix slash collapsing in etags on MS-Windows
23282         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
23283         MS-Windows code from the Posix code, and support collapsing both
23284         forward- and back-slashes on MS-Windows.  Fixes a regression found
23285         by the test suite.
23287         Improve documentation of glyphless-char-display
23288         * doc/lispref/display.texi (Glyphless Chars): Improve
23289         documentation of glyphless character display.
23291         Fix "acronym" display of glyphless characters on w32
23292         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
23293         ignore "acronym" substitutes of 1 character for glyphless characters.
23295 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
23297         Add an automated test for let-when-compile
23298         * test/automated/subr-tests.el (let-when-compile): New test.
23300         Add let-when-compile macro instead of using pcase-let
23301         * lisp/subr.el (let-when-compile): New let-like macro that makes its
23302         bindings known to macros like `eval-when-compile' in the body.
23303         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
23304         a `let-when-compile'.  Also comment out the unused lexical var
23305         `el-kws-re'.
23306         The change greatly improves readability, while providing almost the
23307         same (even shorter) byte code: instead of pre-evaluating 10 variables,
23308         tossing them into a list, and destructuring that list a full screen
23309         page later, the variables are simply bound as they are evaluated,
23310         wrapped individually in `eval-when-compile'.
23312 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
23314         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
23315         (package-delete-button-action): New function.
23316         (describe-package-1): Add Delete button.
23318         * lisp/emacs-lisp/package.el: Better dependency description.
23319         (package--used-elsewhere-p): New optional arg, ALL, and return
23320         package-desc objects instead of names.
23321         (package-delete): Update accordingly.
23322         (describe-package-1): Describe which packages require the package.
23324 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
23326         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
23327         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
23328         Fix doc-string.
23330         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
23331         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
23332         (switch-to-buffer): If the selected window is strongly dedicated
23333         to its buffer, signal error before prompting for buffer name.
23334         Handle `switch-to-buffer-in-dedicated-window'.
23335         * doc/lispref/windows.texi (Switching Buffers):
23336         Document `switch-to-buffer-in-dedicated-window'.
23338 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23340         Prefer "this" to “this” in doc strings
23341         This mostly just straightens quotes introduced in my previous patch.
23342         Suggested by Dmitry Gutov in:
23343         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
23344         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
23345         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
23346         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
23347         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
23348         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
23349         Prefer straight double quotes to curved double quotes in doc strings.
23351         Fix minor quoting problems in doc strings
23352         These were glitches regardless of how or whether we tackle the
23353         problem of grave accent in doc strings.
23354         * lisp/calc/calc-aent.el (math-restore-placeholders):
23355         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
23356         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
23357         * lisp/leim/quail/hebrew.el ("hebrew-new")
23358         ("hebrew-biblical-sil"):
23359         * lisp/leim/quail/thai.el ("thai-kesmanee"):
23360         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
23361         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
23362         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
23363         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
23364         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
23365         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
23366         (semantic-tag-components):
23367         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
23368         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
23369         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
23370         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
23371         * lisp/emacs-lisp/generator.el (iter-next):
23372         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
23373         (gnus-article-mode-syntax-table):
23374         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
23375         * lisp/net/soap-client.el (soap-wsdl-get):
23376         * lisp/net/telnet.el (telnet-mode):
23377         * lisp/org/org-compat.el (org-number-sequence):
23378         * lisp/org/org.el (org-remove-highlights-with-change)
23379         (org-structure-template-alist):
23380         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
23381         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
23382         (handwrite-12pt, handwrite-13pt):
23383         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
23384         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
23385         * lisp/progmodes/verilog-mode.el (verilog-tool)
23386         (verilog-string-replace-matches, verilog-preprocess)
23387         (verilog-auto-insert-lisp, verilog-auto-insert-last):
23388         * lisp/textmodes/makeinfo.el (makeinfo-options):
23389         * src/font.c (Ffont_spec):
23390         Fix minor quoting problems in doc strings, e.g., missing quote,
23391         ``x'' where `x' was meant, etc.
23392         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
23393         Fix minor quoting problem in other string.
23394         * lisp/leim/quail/ethiopic.el ("ethiopic"):
23395         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
23396         Omit unnecessary quotes.
23397         * lisp/faces.el (set-face-attribute, set-face-underline)
23398         (set-face-inverse-video, x-create-frame-with-faces):
23399         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
23400         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
23401         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
23402         * lisp/net/tramp.el (tramp-methods):
23403         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
23404         * lisp/textmodes/artist.el (artist-ellipse-right-char)
23405         (artist-ellipse-left-char, artist-vaporize-fuzziness)
23406         (artist-spray-chars, artist-mode, artist-replace-string)
23407         (artist-put-pixel, artist-text-see-thru):
23408         * lisp/vc/ediff-util.el (ediff-submit-report):
23409         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
23410         Use double-quotes rather than TeX markup in doc strings.
23411         * lisp/skeleton.el (skeleton-pair-insert-maybe):
23412         Reword to avoid the need for grave accent and apostrophe.
23413         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
23414         Don't use grave and acute accents to quote.
23416 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
23418         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
23419         Silence compiler.
23421 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23423         Try to port new etags tests to MS-Windows
23424         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
23425         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
23426         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
23427         Adjust to test-case changes below.
23428         * test/etags/Makefile (CSRC): Remove dostorture.c.
23429         Whatever it was trying to test, wasn't working portably.
23430         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
23431         just a line-ending problem.
23432         * test/etags/c-src/dostorture.c: Remove.
23433         * test/etags/cp-src/c.C: Remove stray CR.
23434         * test/etags/html-src/algrthms.html: Remove trailing CRs.
23435         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
23436         but if someone edits it later it should stay UTF-8-compatible.
23438 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
23440         Fix display of overlapping window-specific overlays
23441         * src/keyboard.c (adjust_point_for_property): When adjusting point
23442         due to display strings, ignore overlays that are specific to
23443         windows other than the currently selected one.
23444         * src/xdisp.c (handle_single_display_spec): If the display
23445         property comes from an overlay, arrange for buffer iteration to
23446         resume only after the end of that overlay.  (Bug#20607)
23448 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
23450         New command icomplete-force-complete-and-exit
23451         * lisp/icomplete.el (icomplete-force-complete-and-exit):
23452         New command
23453         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
23454         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
23455         (icomplete-minibuffer-map): Bind C-j to it.
23456         (icomplete-forward-completions, icomplete-backward-completions):
23457         Mention the new command in the docstring.
23458         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
23459         Revert the previous fix for bug#17545.
23461 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
23463         Fix last commit
23465         In Elisp manual explain how to override window manager positioning
23466         (Bug#20552)
23467         * doc/lispref/frames.texi (Position Parameters): Give example of
23468         how to override a window manager positioning decision.
23470         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
23471         * src/frame.c (Fdelete_frame): In doc-string mention that frame
23472         can't be deleted if it has a surrogate minibuffer.
23473         * doc/lispref/frames.texi (Minibuffers and Frames)
23474         (Deleting Frames): Explain "surrogate minibuffer frames".
23476         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
23478 2015-05-18  Glenn Morris  <rgm@gnu.org>
23480         Add option to ignore commit lines matching a pattern in ChangeLog
23481         * build-aux/gitlog-to-changelog: Add --ignore-line option.
23482         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
23484 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
23486         Don't skip new etags tests on non-UTF-8 hosts
23487         Problem reported by Eli Zaretskii for MS-Windows.
23488         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
23489         (LC_ALL): Set to C if the current locale isn't UTF-8.
23490         (.PHONY): Remove ediff_1 thru ediff_5.
23491         (check): Always run.
23493 2015-05-18  Glenn Morris  <rgm@gnu.org>
23495         * lisp/calculator.el (calculator-funcall):
23496         * lisp/textmodes/artist.el (artist-spray-random-points):
23497         Use standard degree/radian conversion utilities.
23499         Further lisp-complete-symbol related cleanup.
23500         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
23501         Unadvertise non-functional argument.  Replace obsolete alias.
23503 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
23505         Add a test case for Maven warning ouput
23506         * test/automated/compile-tests.el
23507         (compile-tests--test-regexps-data): Add a case for Maven warning
23508         ouput.
23509         (compile--test-error-line): Check the compilation message type, if
23510         it's specified in the test data.
23512 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
23514         Update Maven compilation-mode entry to distinguish warnings
23515         * lisp/progmodes/compile.el
23516         (compilation-error-regexp-alist-alist): Update Maven entry to
23517         distinguish warnings (bug#20556).
23519 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
23521         * test/automated/sgml-mode-tests.el: New file.
23523 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
23525         Improve handling of the first Git revision
23526         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
23527         there's no next entry, delete until the end of the buffer.
23528         (log-view-end-of-defun-1): Stop at eob.
23529         * lisp/vc/vc-annotate.el
23530         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
23531         when previous-revision is nil.
23532         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
23533         with `--' to avoid ambiguity.
23534         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
23535         returned revision string.
23536         (vc-git-annotate-time): Expect `^' before the first revision.
23537         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
23538         REV1 is nil, and REV2 is not.
23539         * lisp/vc/vc.el: Update the description of the `diff' function.
23541 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
23543         Allow checkdoc to be called in batch
23544         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
23545         is non-nil, echo the error with `warn'.
23546         How it can be used in -batch:
23547         (with-current-buffer (find-file "checkdoc.el")
23548           (checkdoc-current-buffer t))
23550 2015-05-18  Glenn Morris  <rgm@gnu.org>
23552         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
23554 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
23556         * admin/notes/unicode: New section "binary files".
23558         Change new etags test to use UTF-8 encoding
23559         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
23560         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
23561         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
23562         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
23563         * test/etags/html-src/softwarelibero.html:
23564         Switch to UTF-8 encoding.
23565         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
23566         Remove Makefile, as it's too incestuous to have the test input
23567         include the build procedure.
23568         (UTF8_LOCALE, UTF_ENCODING): New macros.
23569         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
23570         (check): Skip if not UTF-8.
23571         (.PHONY): New rule.
23572         (FRC): Remove, as superseded by .PHONY.  All uses removed.
23573         (regexfile): Prefer printf to echo when outputting oddball chars.
23574         (.PRECIOUS): Remove, as these files are not built.
23576         Rename 'foo-gzipped' to 'foo.gz'
23577         * test/automated/data/decompress/foo.gz:
23578         Rename from test/automated/data/decompress/foo-gzipped,
23579         to make it easier for other tools to tell that it's compressed.
23580         * test/automated/zlib-tests.el (zlib--decompress):
23581         Adjust to renamed file.
23583 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
23585         Set up default-directory
23586         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
23587         binding for `v'.
23588         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
23589         appropriate value for default-directory.
23591 2015-05-17  Samer Masterson  <samer@samertm.com>
23593         * lisp/eshell/em-term.el (eshell-term-sentinel):
23594         No-op by default, only kills term buffer if
23595         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
23596         (eshell-destroy-buffer-when-process-dies): New custom to preserve
23597         previous behavior.
23599         eshell: Introduce new buffer syntax
23600         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
23601         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
23602         needed (Bug#19319).
23603         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
23604         (eshell-get-target): Remove shorthand-specific code.
23605         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
23606         '#<buffer-name>'.
23608 2015-05-17  Jan D  <jan.h.d@swipnet.se>
23610         Merge branch 'master' into cairo
23612 2015-04-26  Jan D  <jan.h.d@swipnet.se>
23614         Merge branch 'master' into cairo
23616         Add PBM support for cairo
23617         * src/image.c (xcolor_to_argb32): New function.
23618         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
23619         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
23620         XImagePtr if ! USE_CAIRO.
23621         (pbm_load): Add cairo support.
23623 2015-04-12  Jan D  <jan.h.d@swipnet.se>
23625         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
23626         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
23627         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
23628         x_free_cr_resources.
23630         Handle specified bg in images.  Use generic libpng code for PNGs.
23631         * src/image.c (get_spec_bg_or_alpha_as_argb)
23632         (create_cairo_image_surface): New functions when USE_CAIRO.
23633         (xpm_load): Call the above functions.  Handle XPM without mask
23634         when USE_CAIRO.
23635         (png_load_body): Handle USE_CAIRO case.
23636         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
23637         instead.
23638         (jpeg_load_body): Call create_cairo_image_surface.
23639         (gif_load, svg_load_image): Handle specified background, call
23640         create_cairo_image_surface.
23641         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
23643 2015-04-11  Jan D  <jan.h.d@swipnet.se>
23645         Support GIF and TIFF with cairo
23646         * configure.ac: Allow jpeg with cairo.
23647         Allow tiff and gif with cairo.
23648         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
23649         (tiff_load): Create cairo image surface if USE_CAIRO.
23650         (gif_load): Ditto.
23652         Support JPEG with USE_CAIRO
23653         * configure.ac: Allow jpeg with cairo.
23654         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
23656 2015-04-05  Jan D  <jan.h.d@swipnet.se>
23658         Support RSVG and cairo
23659         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
23660         * src/dispextern.h (struct image): Add cr_data2 if cairo.
23661         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
23662         (x_clear_image): Free cr_data and cr_data2 if set.
23663         (xpm_load): Assign data to cr_data2.
23664         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
23666 2015-04-03  Jan D  <jan.h.d@swipnet.se>
23668         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
23669         * configure.ac (HAVE_RSVG): Move after cairo.
23670         (USE_CAIRO): Disable rsvg, don't disable Xpm.
23671         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
23672         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
23673         don't return early.
23674         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
23675         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
23676         and create a surface.
23678         Tool tips for menus did not show any text.
23679         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
23680         tip frames, the geometry may be wrong.
23682         Merge branch 'master' into cairo, fixes tooltips not shown.
23684         Merge branch 'master' into cairo
23686         Add CAIRO_CFLAGS to lwlib/Makefile.in
23687         * Makefile.in (CAIRO_CFLAGS): Add.
23689 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23691         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
23693 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23695         Draw outermost line using black relief and erase corners also for cairo.
23696         * src/xterm.c [USE_CAIRO]: Include math.h.
23697         (enum corners) [USE_CAIRO]: New enum.
23698         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
23699         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
23700         than 1, draw the outermost line using the black relief.
23702         * src/xterm.c (x_fill_trapezoid_for_relief):
23703         Remove unnecessary cairo_close_path.
23705 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23707         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
23709         * src/xterm.c (x_draw_stretch_glyph_string):
23710         Call x_reset_clip_rectangles instead of XSetClipMask.
23712         Use int instead of unsigned int for width and height args.
23713         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
23714         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
23715         width and height args.
23717         Modernize k&r cairo-related function declarations.
23718         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
23719         (xg_print_frames_dialog): Modernize k&r declarations.
23720         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
23721         (Fx_print_frames_dialog): Modernize k&r declarations.
23722         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
23723         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
23724         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
23725         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
23726         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
23727         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
23728         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
23729         (x_clear_area): Modernize k&r declarations.
23731         Implement wave-style variant of underlining for cairo.
23732         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
23733         (x_draw_underwave) [USE_CAIRO]: Use it.
23735         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
23736         instead of XFillRectangle.
23738 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23740         Fix fringe bitmap initialization for cairo
23741         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
23742         data for cairo image surface.
23743         * src/xterm.c (x_cr_define_fringe_bitmap):
23744         Call cairo_surface_mark_dirty.
23746 2015-02-11  Jan D  <jan.h.d@swipnet.se>
23748         Add cairo drawing
23749         * configure.ac (with-cairo): New option.
23750         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
23751         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
23752         Output "Does Emacs use cairo?".
23753         * lisp/version.el (emacs-version): Add cairo version.
23754         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
23755         (FONT_OBJ): Add comment about ftcrfont.
23756         (ALL_CFLAGS): Add CAIRO_CFLAGS.
23757         (LIBES): Add CAIRO_LIBS.
23758         * src/dispextern.h (struct image): Add cr_data for cairo.
23759         (x_cr_init_fringe): Declare.
23760         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
23761         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
23762         * src/fringe.c (x_cr_init_fringe): New function name that shares code
23763         with w32_init_fringe.
23764         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
23765         * src/ftfont.c (ftfont_info_size); New global variable.
23766         (ftfont_open2): New extern function almost the same as old ftfont_open,
23767         but takes the font_object as argument.
23768         (ftfont_open): Build font object and call ftfont_open2.
23769         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
23770         * src/gtkutil.c (xg_clear_under_internal_border)
23771         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
23772         Only queue_draw if not cairo.  Change args to x_clear_area.
23773         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
23774         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
23775         (xg_print_frames_dialog): New functions for printing.
23776         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
23777         (xg_print_frames_dialog): Declare.
23778         * src/image.c: Add defined (USE_CAIRO) for PNG.
23779         Add !defined USE_CAIRO for W32 PNG code.
23780         (x_clear_image): If cairo, destroy the surface in cr_data.
23781         (png_load): Add new cairo compatible implementation.
23782         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
23783         * src/xfns.c: New section Printing.
23784         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
23785         (x-print-frames-dialog): New printing functions.
23786         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
23787         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
23788         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
23789         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
23790         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
23791         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
23792         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
23793         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
23794         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
23795         Declare.
23796         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
23797         (max_fringe_bmp, fringe_bmp): New variables.
23798         (x_gc_get_ext_data, x_extension_initialize)
23799         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
23800         (x_set_cr_source_with_gc_foreground)
23801         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
23802         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
23803         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
23804         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
23805         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
23806         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
23807         (x_update_begin): Create cairo surface if needed.
23808         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
23809         (x_update_end): Paint cairo drawing surface to xlib surface.
23810         (x_clear_under_internal_border, x_after_update_window_line): Adjust
23811         arguments to x_clear_area.
23812         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
23813         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
23814         of XSetClipMask.
23815         (x_set_glyph_string_clipping)
23816         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
23817         instead of XSetClipRectangles.
23818         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
23819         Use x_fill_rectangle instead of XFillRectangle.
23820         (x_draw_glyph_string_foreground)
23821         (x_draw_composite_glyph_string_foreground)
23822         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
23823         instead of XDrawRectangle.
23824         (x_draw_relief_rect): Add code for USE_CAIRO.
23825         Call x_reset_clip_rectangles instead of XSetClipMask.
23826         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
23827         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
23828         instead of XSetClipMask.
23829         (x_draw_image_foreground, x_draw_image_foreground_1):
23830         x_draw_rectangle instead of XDrawRectangle.
23831         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
23832         XFillRectangle.
23833         (x_draw_image_glyph_string): If img has cr_data, use it as
23834         a cairo surface.
23835         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
23836         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
23837         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
23838         x_reset_clip_rectangles instead of XSetClipMask.
23839         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
23840         (x_clear_area1): New function that calls XClearArea.
23841         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
23842         non-cairo.
23843         (x_clear_frame): x_clear_window instead of XClearWindow.
23844         (x_scroll_run): Set frame garbaged if cairo.
23845         (XTmouse_position): Initialize *part to 0.
23846         (x_scroll_bar_create): Adjust arguments to x_clear_area.
23847         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
23848         x_fill_rectangle instead of XFillRectangle.
23849         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
23850         arguments to x_clear_area.
23851         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
23852         (handle_one_xevent): Adjust arguments to x_clear_area.
23853         Destroy cairo surface for frame if ConfigureNotify.
23854         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
23855         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
23856         x_reset_clip_rectangles instead of XSetClipMask.
23857         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
23858         x_reset_clip_rectangles instead of XSetClipMask.
23859         (x_clear_frame_area): Adjust arguments to x_clear_area.
23860         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
23861         (x_term_init): Call x_extension_initialize if cairo.
23862         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
23863         x_cr_destroy_fringe_bitmap for cairo.
23864         (x_initialize): Call x_cr_init_fringe for cairo.
23865         * src/xterm.h: Add include of cairo header files.
23866         (x_bitmap_record): Add img if cairo.
23867         (x_gc_ext_data): New struct for cairo.
23868         (x_display_info): Add ext_codes for cairo.
23869         (x_output): Add cr_context and cr_surface for cairo.
23870         (x_clear_area): Change arguments from Display*/Window to frame pointer.
23871         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
23872         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
23873         (x_cr_draw_frame, x_cr_export_frames): Declare.
23875 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
23877         Fix integer-valued `mouse-highlight' (Bug#20590)
23878         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
23880 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
23882         MS-Windows followup for ASCIIfication of curved quotes
23883         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
23884         test for curved quotes being displayable, after switching the
23885         terminal encoding.  (Bug#20545)
23887 2015-05-17  Jan D  <jan.h.d@swipnet.se>
23889         Add comment that x_shift_glyphs_for_insert is never called
23890         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
23891         Add comment that this function is never called.
23893 2015-05-16  Glenn Morris  <rgm@gnu.org>
23895         * src/lisp.mk: Remove from repository and generate at build-time.
23896         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
23897         (shortlisp_filter): New variable.
23898         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
23899         (distclean): Remove lisp.mk.
23900         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
23901         * lisp/loadup.el: Tweak layout to make it easier to parse.
23902         * make-dist: Do not distribute src/lisp.mk.
23904 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
23906         Display shorter dates in Git annotate output
23907         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
23908         format (when not overridden with vc-git-annotate-switches).
23909         (vc-git-annotate-time): Support the short format, as well as ISO
23910         8601 that has been used until now (bug#5428).
23912 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
23914         ASCIIfy curved quotes on displays lacking them
23915         * lisp/international/mule-cmds.el (set-locale-environment):
23916         If curved quotes don't work, display straight ASCII approximations
23917         (Bug#20545).
23919 2015-05-16  Glenn Morris  <rgm@gnu.org>
23921         Small src/Makefile simplification
23922         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
23923         * src/Makefile.in (lisp): Derive from shortlisp.
23924         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
23926 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
23928         * lisp/help-mode.el (help-go-forward): Doc fix.
23929         (Bug#20577)
23931         * doc/lispref/debugging.texi (Profiling): Improve indexing.
23932         (Bug#20576)
23934 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
23936         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
23937         have one fewer `not'.
23939         * lisp/vc/vc-git.el (vc-git-diff-switches)
23940         (vc-git-annotate-switches, vc-git-resolve-conflicts)
23941         (vc-git-program, vc-git-root-log-format): Remove the redundant
23942         :group declarations.
23944 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
23946         Removes the predicate from lisp-complete-symbol (Bug#20456)
23947         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
23948         and remove it from the docstring.
23950 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
23952         Add new option vc-git-resolve-conflicts
23953         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
23954         (vc-git-find-file-hook): Add to after-save-hook only when the
23955         above is non-nil.
23956         (vc-git-resolve-when-done): Update to honor the new variable.
23957         (Bug#20292)
23959 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
23961         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
23962         (tabulated-list-init-header): Document new behavior.
23963         (tabulated-list-print-fake-header): Do nothing if
23964         `tabulated-list--header-string' is nil.
23965         (tabulated-list--header-string): Add a docstring.
23966         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
23967         * etc/NEWS: Document it.
23969 2015-05-15  Leo Liu  <sdl.web@gmail.com>
23971         Revert "Fix cps--gensym"
23972         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
23973         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
23975 2015-05-15  Glenn Morris  <rgm@gnu.org>
23977         Replace AC_SUBST_FILE in configure with include in Makefiles
23978         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
23979         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
23980         (AUTO_DEPEND): New output variable.
23981         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
23982         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
23983         (lwlib_deps_frag): Replace by conditional include.
23984         * lwlib/autodeps.mk: Remove file.
23985         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
23986         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
23987         (oldxmenu_deps_frag): Replace by conditional include.
23988         * oldXMenu/autodeps.mk: Remove file.
23989         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
23990         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
23991         (lisp_frag): Replace by an include.
23992         (deps_frag): Replace by conditional include.
23993         * src/autodeps.mk: Remove file.
23995         Tweak japanese.el's loading of dependencies
23996         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
23997         * lisp/language/japanese.el: Use require rather than load.
23998         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
23999         Provide a feature.
24000         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
24001         Provide a feature in the generated file.
24003 2015-05-15  Jan D  <jan.h.d@swipnet.se>
24005         Fix NS warnings
24006         * src/nsmenu.m (ns_popup_dialog)
24007         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
24008         * src/nsfns.m (Fx_create_frame): Remove unused variables.
24009         (Fns_read_file_name): Initialize fname, remove ret.
24010         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
24011         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
24012         Remove unused variable.
24013         (init): Add parantesis in if.
24014         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
24016 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
24018         Fix a enum conversion warning in macfont.m
24019         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
24020         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
24022 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
24024         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
24025         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
24027 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
24029         * lisp/cus-start.el: Add ns-confirm-quit.
24031         Fix warnings on OSX 10.10
24032         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
24033         OSX versions.
24034         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
24035         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
24036         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
24037         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
24038         setScalesWhenResized for OSX < 10.6.
24039         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
24040         * src/nsterm.m (ns_copy_bits): New function that does not use
24041         deprecated NSCopyBits.
24042         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
24043         (runAlertPanel): New function.
24044         (applicationShouldTerminate:): Call runAlertPanel.
24045         (initFrameFromEmacs, toggleFullScreen:): Only call
24046         useOptimizedDrawing for OSX < 10.10.
24047         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
24048         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
24049         (draggingEntered:): Returns NSDragOperation.
24050         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
24052 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
24054         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
24055         (package--init-file-ensured): New variable.
24056         (package-initialize, package--ensure-init-file): Use it.
24058 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
24060         Honor :fore/background for XBM on NS (Bug#14969)
24061         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
24062         initFromXBM takes bg, fg args, remove flip arg.
24063         (ns_image_from_XBM): Add bg, fg args.
24064         * src/image.c (x_create_bitmap_from_data)
24065         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
24066         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
24067         initFromXBM.  Remove flip arg.
24068         (initFromSkipXBM): Move code to initFromXBM.
24069         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
24070         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
24071         always false.
24072         Remove bit flipping (bitPat, swt), generated incorrect images when
24073         width/height wasn't a multiple of 8.
24074         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
24075         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
24076         remove flip arg.
24078 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
24080         * lisp/emacs-lisp/package.el: Be more careful with the init file.
24081         (package--ensure-init-file): Check that user-init-file is set,
24082         exists, is readable, and is writable.  (Bug#20584)
24083         Also expand the docstring.
24085 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
24087         Sync with upstream verilog-mode revision 6232468
24088         * lisp/progmodes/verilog-mode.el
24089         (verilog-font-lock-grouping-keywords-face)
24090         (verilog-highlight-grouping-keywords): Fix use of face when
24091         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
24092         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
24093         parent is reset, bug906.  Reported by Ken Schmidt.
24094         (verilog-auto-inout-module): Add fourth regexp argument to
24095         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
24096         Reported by John Tillema.
24097         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
24098         modport if signal attachment is itself a modport.  Reported by
24099         Matthew Lovell.
24100         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
24101         always_comb and always_latch, bug844.  Reported by Greg Hilton.
24102         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
24103         with many curly-bracket pairs, bug663.
24104         (verilog-set-auto-endcomments): Fix end comments for functions of
24105         type void, etc.  Reported by Alex Reed.
24106         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
24107         caused by indent-line-to deleting tabls pre 24.5.
24108         (verilog-nameable-item-re): Fix nameable items that can have an
24109         end-identifier to include endchecker, endgroup, endprogram,
24110         endproperty, and endsequence.  Reported by Alex Reed.
24111         (verilog-label-be): When auto-commenting a buffer, consider
24112         auto-comments on all known keywords (not just a subset thereof).
24113         Reported by Alex Reed.
24114         (verilog-auto-end-comment-lines-re)
24115         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
24116         Automatically comment property/endproperty blocks to match other
24117         similar blocks like sequence/endsequence, function/endfunction, etc.
24118         Reported by Alex Reed.
24119         (verilog-set-auto-endcomments): Detect the function- or task-name
24120         when auto-commenting blocks that lack an explicit portlist.
24121         Reported by Alex Reed.
24122         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
24123         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
24124         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
24125         is nil, fix indenting initial/final to match always statements,
24126         bug825.  Reported by Tim Clapp.
24127         (verilog-extended-complete-re): Fix indentation of DPI-C imports
24128         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
24129         Mao and Jason Forkey.
24130         (verilog-read-decls): Fix parsing typed interfaces.  Fix
24131         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
24132         Fix localparam not being ignored in AUTOINSTPARAM,
24133         bug889.  Reported by Shannon Hill.
24134         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
24135         bug793.  Reported by Pierre-David Pfister.
24136         (verilog-auto-arg-format, verilog-auto-arg-ports):
24137         Add verilog-auto-arg-format to support newlines in AUTOARG.
24138         Reported by Jie Xiao.
24139         (verilog-batch-execute-func): Do not batch re-auto files loaded by
24140         Local Variables.  Fix printing "no changes to be saved" with
24141         verilog-batch.  Reported by Dan Dever.
24142         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
24143         interface-only modules, bug721.  Reported by Dean Hoyt.
24144         Author: Alex Reed <acreed4@gmail.com>
24145         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
24146         Don't treat '<keyword>:<identifier>' as the start of a labeled
24147         statement, bug905.  Reported by Enzo Chi.
24148         (verilog-directive-re, verilog-compiler-directives)
24149         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
24150         directives (plus some extras) when determining indentation, bug
24151         901.  Reported by Bernd Beuster.
24152         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
24153         iff expression doesn't start with word-character, bug900.
24154         (verilog-optional-signed-range-re, verilog-optional-signed-re):
24155         Fix incorrect indentation/alignment of unsigned declarations,
24156         bug897.
24157         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
24158         always constructs, bug895.
24159         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
24160         Reported by Eric Mastromarchi.
24161         (verilog-beg-of-statement): Fix indenting for some forms of
24162         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
24163         continued assignment incorrect if first line ends with ']', bug437.
24164         Reported by Dan Dever.  Fix indention of cover inside an
24165         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
24166         blocks, bug842.
24167         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
24168         Reported by Kaushal Modi.
24169         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
24170         (verilog-backward-token): Fix indenting sensitivity lists with
24171         named events, bug840.  Reed.
24172         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
24173         nil not honoring 'forever', 'foreach', and 'do' keywords.
24175 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24177         Check for invalid GTK+ monitor scales
24178         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
24179         INT_MAX for too-large scales.  All callers changed to assume the
24180         result is valid (Bug#20432).
24181         (xg_frame_set_char_size, xg_update_scrollbar_pos):
24182         Calculate scale only if needed.
24183         Show ASCII approximations instead.
24185 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
24187         Fix daemon crashes when linum-mode is turned on early on
24188         * src/window.c (Fwindow_end): Don't try calling display engine
24189         functions on initial-frame frame.  (Bug#20565)
24191         Fix selective diff browsing in Ediff
24192         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
24193         Go to the beginning of the region before searching for the
24194         ediff-regexp-focus-* regexps.  (Bug#20568)
24196 2015-05-14  Jan D  <jan.h.d@swipnet.se>
24198         Fixes bug#20142
24199         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
24200         arrive in the main loop, even for Gtk 3 (Bug#20142).
24202         Don't access display after i/o error (Bug#19147).
24203         * src/xterm.c (x_connection_closed): Add third arg ioerror.
24204         If ioerror, set display to 0 (Bug#19147).
24205         (x_error_quitter): Call x_connection_closed with third arg false.
24206         (x_io_error_quitter): Call x_connection_closed with third arg true.
24208         Handle GTK_SCALE, fixes Bug#20432.
24209         * src/gtkutil.c (xg_get_gdk_scale): New function.
24210         (xg_frame_set_char_size)
24211         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
24212         (xg_get_default_scrollbar_height)
24213         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
24214         when setting sizes (Bug#20432).
24216 2015-05-13  Leo Liu  <sdl.web@gmail.com>
24218         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
24220 2015-05-13  Glenn Morris  <rgm@gnu.org>
24222         Fix bootstrap (void function cl-member).
24223         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
24224         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
24226 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
24228         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
24229         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
24230         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
24231         Avoid defalias for closures which are not immutable.
24232         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
24233         the dispatchers table with various entries.
24234         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
24235         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
24237 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
24239         Improve tagging of C bindings in DEFVAR_*
24240         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
24241         from DEFVAR_*.
24243 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24245         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
24247 2015-05-12  Glenn Morris  <rgm@gnu.org>
24249         * lisp/progmodes/tcl.el (tcl-filter):
24250         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
24252         Add basic VC push support
24253         * lisp/vc/vc.el (vc-push): New autoloaded command.
24254         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
24255         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
24256         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
24257         (vc-bzr-push): New.
24258         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
24259         (vc-git-pull): Reimplement using vc-git--pushpull.
24260         (vc-git-push): New.
24261         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
24262         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
24263         * doc/emacs/maintaining.texi (Pulling / Pushing):
24264         Rename from "VC Pull".  Mention pushing.
24265         (VC With A Merging VCS, VC Change Log): Update xrefs.
24266         (Branches): Update menu.
24267         * doc/emacs/emacs.texi: Update menu.
24268         * etc/NEWS: Mention this.
24270 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
24272         Improve the seq pcase pattern and the `seq-let' macro
24273         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
24274         object is a sequence, and binds each element of ARGS to the
24275         corresponding element of the sequence.
24277 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
24279         Fix tags created from DEFVAR_* declarations in C
24280         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
24281         to make tags extracted from DEFVAR_* declarations more accurate.
24283         Add a test suite for etags
24284         * test/etags/: New test suite, adapted from
24285         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
24286         whose original author is Francesco Potortì <pot@gnu.org>.
24288         Fix tagging of symbols in C enumerations
24289         * lib-src/etags.c (consider_token): Don't tag symbols in
24290         expressions that assign values to enum constants.  See
24291         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
24292         for details.
24293         (C_entries): Reset fvdef to fvnone after processing a preprocessor
24294         conditional and after a comma outside of parentheses.
24296 2015-05-12  Glenn Morris  <rgm@gnu.org>
24298         * lisp/url/url-handlers.el (url-file-name-completion)
24299         (url-file-name-all-completions): Silence compiler.
24301         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
24303         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
24305 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
24307         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
24308         (cl--generic-mandatory-args): Remove.
24309         (cl--generic-split-args): New function.
24310         (cl-generic-define, cl--generic-lambda): Use it.
24311         (cl-generic-define-method): Use it as well, and add support for
24312         context args.
24313         (cl--generic-get-dispatcher): Handle &context dispatch.
24314         (cl--generic-cache-miss): `dispatch-arg' can now be a
24315         context expression.
24316         (cl--generic-dispatchers): Pre-fill.
24317         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
24318         New test.
24320 2015-05-11  Glenn Morris  <rgm@gnu.org>
24322         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
24324 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24326         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
24327         * lisp/term/rxvt.el: Require term/xterm.
24328         (rxvt-function-map): Use xterm-rxvt-function-map.
24329         (rxvt-standard-colors): Move before first use.
24330         (terminal-init-rxvt): Use xterm--push-map and
24331         xterm-register-default-colors.
24332         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
24333         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
24334         Move shared bindings between rxvt and xterm to it.
24335         (xterm-function-map): Use it.  Move the xterm-paste binding to
24336         xterm-rxvt-function-map (bug#20444).
24337         (xterm-standard-colors): Move before first use.
24338         (xterm--push-map): New function.
24339         (xterm-register-default-colors): Take standard colors as argument.
24340         (terminal-init-xterm): Use it.  Adjust call to
24341         xterm-register-default-colors.
24343 2015-05-11  Glenn Morris  <rgm@gnu.org>
24345         * lisp/term/x-win.el: Quieten --without-x compilation.
24346         (x-own-selection-internal, x-disown-selection-internal)
24347         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
24348         Declare.
24350         * Makefile.in (emacslog): Remove srcdir.
24351         (ChangeLog): Update for the above.
24353 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24355         python.el: better limit for looking-back calls
24356         * lisp/progmodes/python.el (python-shell-accept-process-output):
24357         Use last comint prompt start as limit for looking-back.
24359 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
24361         CEDET (srecode-insert-fcn): Fix use of oref on a class
24362         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
24363         on a class.  Reported by Pierre Lorenzon.
24364         (srecode-template-inserter-point): Remove declaration.
24366         CEDET (srecode-create-dictionary): Avoid obsolete object name
24367         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
24368         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
24370 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
24372         C-x 8 shorthands for curved quotes, Euro, etc.
24373         Although C-x 8 lets you insert arbitrary Unicode characters,
24374         it's awkward to use this to insert commonly used symbols such as curved
24375         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
24376         characters commonly found in English text and in basic math.
24377         For example, assuming the Alt key works on your keyboard and iso-transl
24378         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
24379         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
24380         (Bug#20499)
24381         * doc/emacs/mule.texi (Unibyte Mode):
24382         A few other printing characters now work too.
24383         * etc/NEWS: Document this.
24384         * lisp/international/iso-transl.el (iso-transl-char-map):
24385         Also support the following characters:
24386         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
24388 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
24390         Add xref-find-regexp
24391         * lisp/progmodes/xref.el (xref-find-function): Describe the
24392         `matches' action.
24393         (xref-find-regexp): New command, using it.
24394         (xref-collect-references): Rename to xref-collect-matches.
24395         (xref--collect-reference): Rename to xref--collect-match.
24396         (xref-collect-matches, xref--collect-match): Accept new argument,
24397         KIND.  Update accordingly.
24398         (xref--regexp-to-extended): New function.
24399         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
24400         `matches' action.
24401         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
24402         * lisp/progmodes/etags.el (etags-xref-find):
24403         Support the `matches' action.
24404         (etags--xref-find-matches): New function.
24406 2015-05-10  Glenn Morris  <rgm@gnu.org>
24408         * Makefile.in: Fixes for recent change-history changes.
24409         (change-history-nocommit): Update footer regexp.
24410         Ensure output script stays executable.
24412 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
24414         New version of `seq-let' based on a pcase pattern
24415         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
24416         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
24418 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
24420         Add basic HTML5 tags and a template
24421         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
24422         (html-tag-alist): Add HTML5 tags.
24423         (html-tag-help): Add new tags descriptions.
24424         (html-navigational-links): Template for nav links.
24425         (html-html5-template): Template for a HTML5 page.
24427 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
24429         semantic/symref/grep: Don't use word boundaries
24430         * lisp/cedet/semantic/symref/grep.el
24431         (semantic-symref-perform-search): Instead of wrapping input in
24432         word boundaries, check that the characters before and after are
24433         not word constituents.
24435         semantic/symref/grep: Support regexp search
24436         * lisp/cedet/semantic/symref.el
24437         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
24438         the search type is regexp.
24439         * lisp/cedet/semantic/symref/grep.el
24440         (semantic-symref-perform-search): Support the regexp search type.
24441         Pass -E to Grep when it's used.
24443         semantic-symref-regexp: Allow to input an arbitrary string
24444         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
24445         Allow to input an arbitrary string interactively.
24447         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
24448         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
24449         Remove tag-symbol-match-p from the default value
24450         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
24452         Declare find-tag obsolete
24453         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
24454         xref-find-definitions.
24456 2015-05-10  Jan D  <jan.h.d@swipnet.se>
24458         Draw composite string correctly (Bug#20537)
24459         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
24460         New function.
24461         (ns_draw_glyph_string): Call it.
24463 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
24465         Avoid infloop in ERC
24466         * lisp/simple.el (line-move-to-column): Ignore field boundaries
24467         while computing line beginning position.  (Bug#20498)
24469 2015-05-08  Glenn Morris  <rgm@gnu.org>
24471         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
24472         * build-aux/gitlog-to-emacslog: Check called from right directory.
24473         (srcprefix): Remove.
24475         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
24476         * Makefile.in (ChangeLog): No longer pass "distprefix".
24477         * make-dist: Update "make ChangeLog" syntax for the above change.
24479         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
24480         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
24482         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
24484         Add command-line option-parsing to gitlog-to-emacslog
24485         * build-aux/gitlog-to-emacslog: Add command-line options.
24486         By default, refuse to remove an existing output file.
24487         * Makefile.in (CHANGELOG): Update default.
24488         (ChangeLog): Do not test for existing file.
24489         (change-history-nocommit): Ensure temp file does not exist.
24491         Quieten --without-x compilation
24492         * lisp/term/common-win.el: Provide a feature.
24493         * lisp/term/x-win.el (term/common-win): Require it.
24495         * lisp/dired-aux.el (dired-do-print): Require lpr.
24497         Quieten compilation, eg in --without-x builds
24498         * lisp/dired-aux.el (lpr-printer-switch):
24499         * lisp/frame.el (tool-bar-height):
24500         * lisp/linum.el (font-info):
24501         * lisp/window.el (font-info, overflow-newline-into-fringe)
24502         (tool-bar-height):
24503         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
24504         * lisp/gnus/gnus-util.el (iswitchb-mode):
24505         * lisp/mail/rmailmm.el (libxml-parse-html-region):
24506         * lisp/net/nsm.el (gnutls-peer-status)
24507         (gnutls-peer-status-warning-describe):
24508         * lisp/net/shr.el (libxml-parse-xml-region):
24509         * lisp/url/url-http.el (gnutls-peer-status): Declare.
24511 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24513         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
24514         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
24515         `subclass' since they're never called with a class.
24516         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
24517         srecode-dictionary-child-p.
24519 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
24521         * lisp/help.el (help--binding-locus): Document argument POSITION.
24522         (Bug#20530)
24524 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
24526         Merge from gnulib
24527         * doc/misc/texinfo.tex: Get latest version.
24529 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
24531         ffap.el (ffap-read-file-or-url): Fix completing-read call
24532         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
24533         `completing-read' should be a symbol.
24535 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
24537         Verify file modifications by other programs
24538         * src/filelock.c (lock_file): Check whether the file was modified
24539         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
24541         Fix keyboard macros that include function keys
24542         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
24543         keys in the macro before returning.  (Bug#20454)
24545 2015-05-08  Glenn Morris  <rgm@gnu.org>
24547         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
24548         "Copyright-paperwork-exempt".  (Bug#20324)
24550         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
24551         (log-edit-rewrite-tiny-change): New variable.
24552         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
24553         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
24554         * etc/NEWS: Mention this.
24556         * lisp/calc/calc.el (math-zerop): Declare.
24558         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
24560 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24562         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
24563         Support the case when BINDINGS is a single tuple.  (Bug#20525)
24565         * etc/NEWS: Fix typo in previous commit
24566         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
24568 2015-05-07  Jan D  <jan.h.d@swipnet.se>
24570         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
24571         Output URL to Gtk+ bug (Bug#20452).
24573         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
24575 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24577         * lisp/emacs-lisp/package.el: New "external" package status.
24578         An external package is any installed package that's not built-in
24579         and not from `package-user-dir', which usually means it's from an
24580         entry in `package-directory-list'.  They are treated much like
24581         built-in packages, in that they cannot be through the Package Menu
24582         deleted and are not considered for upgrades.
24583         (package-desc-status): Identify if a package is installed outside
24584         `package-user-dir'.
24585         (package-menu--print-info-simple)
24586         (package-menu--status-predicate): Add support for it.
24587         * etc/NEWS: Document it.
24589 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24591         * lisp/mail/rmail.el: Use lexical-binding.
24592         (rmail-bury): Remove unused var `buffer-to-bury'.
24593         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
24594         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
24595         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
24596         (rmail-insert-inbox-text): Remove unused var `movemail'.
24597         (rmail-add-mbox-headers): Remove unused var `limit'.
24598         (rmail-undelete-previous-message): Remove unused var `value'.
24599         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
24600         `resent-reply-to'.
24601         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
24602         (rmail-restore-desktop-buffer): Rename arguments.
24604 2015-05-06  Glenn Morris  <rgm@gnu.org>
24606         * Makefile.in (change-history-commit): Add missing piece of previous.
24608         Avoid unnecessary bumping of Makefile.in's timestamp
24609         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
24610         (emacslog): New variable.
24611         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
24612         (unchanged-history-files): Use $emacslog rather than Makefile.in.
24613         (change-history-nocommit): Store hash in $emacslog.
24614         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
24615         * admin/update_autogen (changelog_files): Update for the above.
24617         * Makefile.in: Don't always insist on removing existing "ChangeLog".
24618         (CHANGELOG): New variable.
24619         (no-ChangeLog): Remove.
24620         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
24621         (change-history-nocommit): Use a temp file rather than insisting
24622         on deletion of any existing "ChangeLog".
24624         * build-aux/gitlog-to-emacslog: Allow specification of output.
24626         * admin/update_autogen: Add option to update ChangeLog.
24627         (usage): Mention -H.
24628         (changelog_flag, changelog_n, changelog_files): New variables.
24629         (main): Check for -H, and maybe run change-history-nocommit.
24631 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24633         * lisp/subr.el (delete-dups): Pre-size the hashtable.
24635         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
24636         cl--arglist-args is defined (bug#20517).
24638 2015-05-06  Glenn Morris  <rgm@gnu.org>
24640         * Makefile.in (change-history-nocommit): New.
24642 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
24644         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
24645         timer when it is non-nil
24646         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
24648 2015-05-06  Glenn Morris  <rgm@gnu.org>
24650         Quieten CEDET compilation
24651         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
24652         Invert fboundp test to quieten on current Emacs.
24653         * lisp/cedet/ede/config.el (ede-shell-run-something)
24654         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
24655         (semanticdb-refresh-table): Declare.
24656         (ede-preprocessor-map): Require semantic/db.
24658         Quieten cc-mode compilation
24659         * lisp/progmodes/cc-awk.el (c-forward-sws):
24660         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
24661         Declare.
24663 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
24665         * lisp/subr.el (delete-dups): Avoid nreverse.
24667 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24669         * lisp/subr.el (delete-dups): Make it destructive again.
24671 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
24673         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
24675 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24677         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
24678         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
24679         (testcover--read): Rename from testcover-read.  Change calling
24680         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
24681         is gone.
24682         (testcover-start): Use add-function.  Move edebug-all-defs binding to
24683         testcover--read.
24684         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
24685         (testcover-mark): Remove unused var `item'.
24686         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
24688 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
24690         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
24691           use a hash table.  This can result in ~500 times speed-up for typical
24692           collections of size 5000, like that of `load-library'.
24694 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24696         CEDET: Avoid `oref' on classes in a few more cases
24697         * lisp/cedet/ede/generic.el (ede-find-target):
24698         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
24699         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
24700         var `prefix'.
24702         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
24703         (grepflags, greppattern): Declare.
24704         (semantic-symref-perform-search): Remove unused var `pat'.
24706         CEDET (srecode-compile-inserter): Avoid `oref' on classes
24707         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
24708         Avoid `oref' on classes (bug#20491).
24709         (srecode-compile-split-code): Remove unused var `key'.
24711 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
24713         Clean up pulse.el a little
24714         * lisp/cedet/pulse.el (pulse): Remove.
24715         (pulse-momentary-timer): Save instead of the stop time.
24716         (pulse-momentary-highlight-overlay):
24717         Call pulse-momentary-unhighlight first thing.
24718         Treat pulse-momentary-overlay as a single value, not a list.
24719         Save the created timer.  Only pass the stop time to the timer.
24720         (pulse-tick): Update accordingly.
24721         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
24722         single value.  Cancel the timer.
24724 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
24726         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
24727         Support the biblatex journaltitle field.
24729 2015-05-05  Glenn Morris  <rgm@gnu.org>
24731         Minor declare-function improvement
24732         * lisp/emacs-lisp/bytecomp.el
24733         (byte-compile-macroexpand-declare-function):
24734         Handle declarations after calls.  (Bug#20509)
24736         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
24738         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
24740 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
24742         Pulse using a timer
24743         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
24744         (pulse-momentary-highlight-overlay): Set up the timer instead of
24745         calling `pulse'
24746         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
24747         (pulse-tick): New function.
24748         (pulse-momentary-unhighlight): Cut off the stop time.
24749         (pulse-delay): Update the docstring WRT to not using sit-for.
24751         Add semantic/symref/grep file patterns for ruby-mode
24752         * lisp/cedet/semantic/symref/grep.el
24753         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
24754         Clarify the docstring.
24756         Don't require match
24757         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
24758         match.  That doesn't work for every command, and some identifier
24759         completion tables are bound to be imperfect anyway.
24761 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
24763         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
24764         (semantic-grammar--template-expand): New function.
24765         (semantic-grammar-header, semantic-grammar-footer): Use it.
24766         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
24767         (semantic-grammar-file-regexp): Refine regexp.
24768         (semantic-grammar-eldoc-get-macro-docstring):
24769         Use elisp-get-fnsym-args-string when available.
24770         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
24771         instead of the old eldoc-* names.
24772         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
24773         from elisp-mode.el.  Tweak calling convention.
24774         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
24775         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
24776         elisp--get-fnsym-args-string.
24777         (elisp--highlight-function-argument): Add `prefix' arg.
24778         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
24779         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
24781 2015-05-05  Glenn Morris  <rgm@gnu.org>
24783         * lisp/help-fns.el (describe-function-1):
24784         Handle builtins with advertised calling conventions.  (Bug#20479)
24786 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
24788         Merge branch 'seq-let'
24790         Update `seq-let' documentation
24791         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
24792         with the support of  `&rest'.
24794         Add support for &rest in `seq-let'
24795         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
24796         in the argument list.
24797         * test/automated/seq-tests.el: Add a test for parsing and binding
24798         `&rest' in `seq-let'.
24800 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
24802         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
24803         Add missing increment (Bug#20467).
24804         (eieio-object-value-create): Adjust to new slots representation
24805         (Bug#20467).
24806         (eieio-object-value-create): Fix missed adjustment to new
24807         representation of slots metadata.
24809 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
24811         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
24813 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
24815         Work around "Attempt to modify read-only object"
24816         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
24817         elisp--xref-find-definitions, to work around "Attempt to modify
24818         read-only object" error.
24820         Only skip some variables that have function counterparts
24821         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
24822         Only skip minor-mode-named variable if it's defined in a Lisp
24823         file, and it's in minor-mode-list (bug#20506).
24824         * test/automated/elisp-mode-tests.el
24825         (elisp-xref-finds-both-function-and-variable)
24826         (elisp-xref-finds-only-function-for-minor-mode): New tests.
24828 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
24830         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
24831         previous change.
24832         (xref--insert-xrefs): Buttonize the whole line, including the
24833         number at the beginning.
24835         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
24836         Make sure we're inside the let bindings.
24837         * test/automated/elisp-mode-tests.el
24838         (elisp-completes-functions-after-let-bindings): New test.
24840 2015-05-04  Glenn Morris  <rgm@gnu.org>
24842         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
24843         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
24844         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
24845         Remove outdated declarations.
24847         Replace instances of "(eval-when-compile (autoload ...))"
24848         * lisp/gnus/gnus-art.el (nneething-get-file-name):
24849         Declare rather than autoload.
24850         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
24851         Remove pointless autoload.
24852         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
24853         (gnus-topic-create-topic, gnus-topic-enter-dribble):
24854         Declare rather than autoload.
24855         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
24856         (mailcap-extension-to-mime): Autoload at run-time.
24857         * lisp/gnus/mm-util.el (latin-unity-massage-name)
24858         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
24859         (latin-unity-representations-present-region):
24860         Declare rather than autoload.
24861         * lisp/gnus/mml-smime.el (epg-make-context)
24862         (epg-passphrase-callback-function): Autoload at run-time.
24863         (epg-context-set-signers, epg-context-result-for)
24864         (epg-new-signature-digest-algorithm)
24865         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
24866         (epg-sign-string, epg-encrypt-string)
24867         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
24868         (epg-configuration, epg-expand-group, epa-select-keys):
24869         Declare rather than autoload.
24870         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
24871         Autoload at run-time.
24872         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
24873         (gnus-registry-get-id-key, gnus-registry-action):
24874         Declare rather than autoload.
24875         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
24876         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
24877         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
24878         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
24879         (spam-stat-split-fancy): Remove pointless autoloads.
24880         * lisp/net/mairix.el: Load gnus-util when compiling.
24881         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
24882         (message-field-value): Declare rather than autoload.
24883         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
24884         Check gnus-alive-p is fbound.
24885         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
24886         (vm-check-for-killed-summary, vm-error-if-folder-empty)
24887         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
24888         Declare rather than autoload.
24890         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
24892         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
24893         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
24895         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
24897         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
24899         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
24900         * lisp/emacs-lisp/package.el (epg-signature-status):
24901         Fix declarations.
24903         * lisp/play/gametree.el (gametree-show-children-and-entry)
24904         (gametree-apply-layout, gametree-mouse-show-subtree)
24905         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
24907         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
24908         Handle cl-defgeneric, cl-defmethod.
24910 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
24912         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
24913         Highlight both type and symbol name.
24915         Insert, highlight and align line numbers in xref output
24916         * lisp/progmodes/etags.el (xref-location-line): Specialize for
24917         xref-etags-location.
24918         * lisp/progmodes/xref.el (xref-location-line): New generic method.
24919         (xref-file-location): Add reader for the line slot.
24920         (xref--location-at-point): Skip to the `xref-location' property.
24921         (xref--collect-reference): Drop the line number from description.
24922         (xref--insert-xrefs): Insert, highlight and align line numbers.
24924 2015-05-04  Daniel Colascione  <dancol@dancol.org>
24926         * lisp/simple.el (save-mark-and-excursion--save)
24927         (save-mark-and-excursion--restore): Fix previous commit
24928         (255a011f0ecf004b31c59945b10154b10fac3af1).
24930 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
24932         Don't pulse the indentation, or the newline
24933         * lisp/cedet/pulse.el (pulse-lighten-highlight)
24934         (pulse-reset-face): Fall back to the inherited background
24935         attribute in FACE.
24936         (pulse-momentary-highlight-region): Add autoload cookie.
24937         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
24938         indentation, or the newline, if the line's non-empty
24939         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
24941 2015-05-04  Daniel Colascione  <dancol@dancol.org>
24943         Add `save-mark-and-excursion', which has the old
24944         `save-excursion' behavior
24945         * doc/lispref/positions.texi (Excursions):
24946         Document `save-mark-and-excursion'.
24947         * lisp/font-lock.el (font-lock-fontify-block):
24948         Use `save-mark-and-excursion' instead of `save-excursion',
24949         restoring Emacs 24 behavior.
24950         * lisp/simple.el (save-mark-and-excursion--save)
24951         (save-mark-and-excursion--restore): New functions.
24952         (save-mark-and-excursion): New user macro.
24953         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
24954         in `save-excursion' documentation.
24956 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
24958         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
24959         Classify lone symbol inside let varlist as variable.
24960         * test/automated/elisp-mode-tests.el
24961         (completest-variables-in-let-bindings): New test.
24963         Add xref-pulse-on-jump
24964         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
24965         Add autoload cookie.
24966         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
24967         (xref--maybe-pulse): New function.
24968         (xref-pop-marker-stack, xref--pop-to-location)
24969         (xref--display-position): Use it.
24970         (xref--location-at-point): Use back-to-indentation.
24972 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
24974         lisp/org/org-{macs,list}.el: Fix lexical warnings
24975         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
24976         (org-list-get-next-item, org-list-get-prev-item)
24977         (org-list-get-children): Mark unused arg `struct'.
24978         (org-list-use-alpha-bul-p): Remove unused var `bul'.
24979         (org-toggle-checkbox): Mark unused var.
24980         (org-update-checkbox-count): Remove unused var `box-num'.
24981         (org-adapt-indentation): Declare.
24982         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
24983         (org-list-send-list): Remove unused var `txt'.
24984         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
24985         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
24986         * lisp/org/org-macs.el: Use `declare'.
24987         (org-with-limited-levels): Declare dyn-bound vars.
24989 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
24991         Fix minor issues with CEDET on MS-Windows
24992         * lisp/cedet/semantic/symref/idutils.el
24993         (semantic-symref-parse-tool-output-one-line): Fix the search
24994         regexp to match MS-Windows file names with drive letters.
24995         (Bug#19468)
24996         * lisp/cedet/semantic/symref/grep.el
24997         (semantic-symref-grep-use-template): Remove "--color=always" from
24998         Grep switches on MS-Windows.
24999         (semantic-symref-grep-shell): Use shell-file-name as the default
25000         value, so this works not only on Posix platforms.
25001         (semantic-symref-perform-search): Use shell-quote-argument instead
25002         of literal '..' for portable quoting of Grep command-line
25003         argument.  Use shell-command-switch instead of a literal "-c".
25004         * lisp/cedet/semantic/bovine/gcc.el
25005         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
25006         for an absolute file name in a portable way.
25008 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
25010         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
25011         (package-import-keyring, package-refresh-contents)
25012         (package-compute-transaction, package--save-selected-packages)
25013         (package-install-from-archive, package-delete)
25014         (package-menu--perform-transaction): Use `inhibit-message' instead.
25015         (package--compile): Set `warning-minimum-level' to :error.
25017 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
25019         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
25020         (terminal-init-screen): Use it (bug#20356).
25021         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
25022         (xterm--extra-capabilities-type): New const.
25023         (xterm-extra-capabilities): Use it.
25024         (xterm--version-handler): Lower the pseudo-version for `screen'.
25026 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
25028         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
25029         Always insert a newline at the end (to avoid mouse-face background
25030         tail at the last line).
25032         elisp-completion-at-point: Prioritize being quoted over funpos
25033         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
25034         Only consider function position when not inside quoted form
25035         (bug#20425).
25036         * test/automated/elisp-mode-tests.el: New file.
25038         Stop vc-print-log from jumping to the top
25039         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
25040         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
25041         is not specified.
25042         (vc-incoming-outgoing-internal): Always pass nil.
25043         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
25044         call it, and don't set vc-sentinel-movepoint (bug#15322).
25045         (vc-print-root-log): Don't fetch the root working revision, nor
25046         pass it to vc-print-log-internal.
25048 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
25050         Fix display of keyboard layouts for right-to-left scripts
25051         * lisp/international/quail.el (quail-insert-kbd-layout):
25052         Force left-to-right paragraph direction.
25054 2015-05-02  K. Handa  <handa@gnu.org>
25056         * src/cmds.c (internal_self_insert): When we insert spaces for
25057         padding, set point before the padding spaces, not after them.
25059 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
25061         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
25063 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
25065         Fix etags-xref-find for references
25066         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
25067         Use `cl-mapcan'.
25068         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
25069         directory if no tags tables are loaded (bug#19468).
25071 2015-05-02  Philipp Stephani  <phst@google.com>
25073         Update the options in whitespace-style defcustom
25074         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
25075         `repeat' because the option is really set-like.  Add missing
25076         options.  Reorder options to match the order in the
25077         documentation.  (Bug#20346)
25079 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
25081         Fix error diagnostics of c-macro-expand
25082         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
25083         too early if no start-marker string was found -- that generally
25084         means cpp exited abnormally, and we still want to show its error
25085         messages to the user.
25087         Don't require Texinfo 5.0 for Emacs documentation
25088         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
25089         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
25090         "@codequoteundirected on", respectively, to avoid requiring
25091         Texinfo 5.x for Emacs documentation.
25093 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
25095         * lisp/files.el (pwd):
25096         When called with a prefix argument, insert the current default
25097         directory at point.
25099 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25101         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
25102         * lisp/isearch.el (isearch-mode-map): Don't inhibit
25103         function-key-map remapping for backspace (bug#20466).
25105 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
25107         Implement xref-find-references in etags and elisp-mode
25108         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
25109         (elisp-xref-find): Use it.
25110         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
25111         * lisp/progmodes/xref.el (xref-collect-references):
25112         (xref--collect-reference): New functions.
25114 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
25116         Prefer plain characters to Texinfo circumlocutions
25117         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
25118         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
25120         Fix single-quoting style in PDF manuals
25121         The PDF versions of the GNU manuals used curved single quotes to
25122         represent grave accent and apostrophe, which made it a pain to cut
25123         and paste code examples from them.  Fix the PDF versions to use
25124         grave accent and apostrophe for Lisp source code, keystrokes, etc.
25125         This change does not affect the info files, nor does it affect
25126         ordinary uses of curved single quotes in PDF.
25127         * doc/emacs/docstyle.texi: New file, which specifies treatment for
25128         grave accent and apostrophe, as well as the document encoding.
25129         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
25130         * doc/lispintro/emacs-lisp-intro.texi:
25131         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
25132         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
25133         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
25134         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
25135         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
25136         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
25137         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
25138         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
25139         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
25140         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
25141         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
25142         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
25143         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
25144         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
25145         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
25146         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
25147         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
25148         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
25149         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
25150         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
25151         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
25152         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
25153         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
25154         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
25155         * doc/misc/woman.texi:
25156         Use it instead of '@documentencoding UTF-8', to lessen the need for
25157         global changes like this in the future.
25158         * doc/emacs/Makefile.in (EMACS_XTRA):
25159         * doc/lispintro/Makefile.in (srcs):
25160         * doc/lispref/Makefile.in (srcs):
25161         Add dependency on docstyle.texi.
25162         * doc/misc/Makefile.in (style): New macro.
25163         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
25164         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
25165         Use it.
25167 2015-05-01  Glenn Morris  <rgm@gnu.org>
25169         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
25171         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
25172         (help-fns--signature): Declare.
25174         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
25176 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
25178         New macro seq-let, providing destructuring support to seq.el
25179         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
25180         to `cl-destructuring-bind' but works on all sequence types supported
25181         by `seq.el'.  Bump version number to 1.6.
25182         * test/automated/seq-tests.el: Add tests for seq-let.
25183         * doc/lispref/sequences.texi: Add documentation for seq-let.
25185 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
25187         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
25189 2015-05-01  Glenn Morris  <rgm@gnu.org>
25191         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
25193 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
25195         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
25196         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
25197         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
25198         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
25199         (Bug#20445).
25201 2015-05-01  K. Handa  <handa@gnu.org>
25203         * lisp/international/mule-cmds.el (input-method-use-echo-area):
25204         Change :type to 'boolean.
25206 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
25208         Start using proportional fonts in eww by default
25209         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
25210         it seems to work well.
25212         Fix links in tables in shr
25213         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
25214         makes (some) links in tables not work.
25216 2015-05-01  Jan D  <jan.h.d@swipnet.se>
25218         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
25220 2015-04-30  Glenn Morris  <rgm@gnu.org>
25222         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
25223         Update for 2015-02-08 change to indirect-function.
25225         * lisp/term/ns-win.el (ns-get-selection-internal):
25226         Remove declaration for function deleted 2014-10-21.
25228         * lisp/dom.el: Load subr-x when compiling, for when-let.
25230         Silence some compilation warnings
25231         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
25232         * lisp/emulation/cua-base.el (delete-active-region):
25233         * lisp/net/net-utils.el (w32-get-console-output-codepage):
25234         * lisp/term/ns-win.el (ns-own-selection-internal)
25235         (ns-disown-selection-internal, ns-selection-owner-p)
25236         (ns-selection-exists-p, ns-get-selection):
25237         Declare for compiler.
25239         Function declaration updates prompted by 'make check-declare'
25240         * lisp/emacs-lisp/package.el (lm-homepage):
25241         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
25242         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
25243         * lisp/gnus/mml.el (libxml-parse-html-region):
25244         * lisp/gnus/nnrss.el (libxml-parse-html-region):
25245         * lisp/net/eww.el (libxml-parse-html-region):
25246         * lisp/net/shr.el (libxml-parse-html-region):
25247         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
25248         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
25249         * lisp/vc/vc-git.el (vc-annotate-convert-time):
25250         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
25251         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
25252         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
25253         Update declaration.
25255         Remove compatibility code for 20-year old function renaming
25256         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
25257         Make it an obsolete alias.
25258         (idlwave-shell-filter): Change all uses to comint-output-filter.
25260 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
25262         Add ace-window face config
25263         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
25264         configuration.
25266 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
25268         Unclutter 'make doc' output a bit
25269         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
25270         Use make subst rather than sh IFS to split target string apart.
25271         This makes 'make' output easier to follow.
25273         Merge from gnulib
25274         * doc/misc/texinfo.tex: Update from gnulib.
25276 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
25278         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
25279         (package-menu--print-info): Obsolete.
25280         (package-menu--print-info-simple): New function.
25281         (package-menu--refresh): Use it, simplify code, and improve
25282         performance.
25283         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
25284         Tiny performance improvement.
25286         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
25288 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
25290         Omit -Wstrict-overflow workaround in GCC 5
25291         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
25292         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
25294         Merge from gnulib
25295         This incorporates:
25296         2015-04-29 extern-inline: no need for workaround in GCC 5.1
25297         2015-04-26 file-has-acl: port to CentOS 6
25298         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
25300 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
25302         Set next-error-* in xref--xref-buffer-mode
25303         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
25304         Set `next-error-function' and `next-error-last-buffer'.
25305         (xref--next-error-function): New function.
25306         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
25308 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25310         python.el: Fix warnings on looking-back calls missing LIMIT
25311         * lisp/progmodes/python.el (python-shell-accept-process-output):
25312         Pass LIMIT arg to looking-back.
25314 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
25316         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
25317         (package--download-and-read-archives): Use pushnew instead of
25318         append.  If something terrible happened during a previous
25319         download, simply refreshing should now make things work again.
25321 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
25323         Introduce etags-xref-find-definitions-tag-order
25324         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
25325         New variable.
25326         (etags--xref-find-definitions): Use it (bug#19468).
25328 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
25330         PATH- and completion-related fixes in Eshell on MS-Windows
25331         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
25332         MS-Windows, prepend "." to list of directories produced from PATH,
25333         as Windows always implicitly searches the current directory first.
25334         (eshell-force-execution): Make it have a non-nil default value on
25335         MS-Windows and MS-DOS.
25336         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
25337         eshell-force-execution is non-nil, complete on readable files and
25338         directories, not only executables.  When running on MS-Windows,
25339         prepend "." to list of directories produced from PATH, as Windows
25340         always implicitly searches the current directory first.
25342 2015-04-29  Sam Steingold  <sds@gnu.org>
25344         Bury RCIRC buffers when there is no activity
25345         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
25346         (rcirc-bury-buffers): New function.
25347         (rcirc-next-active-buffer): When there is no new activity, use
25348         `rcirc-bury-buffers' to hide all RCIRC buffers.
25350 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
25352         Fix DBUS query result parsing for secrets-search-items
25353         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
25354         parsing.  The function assumed that return value of the
25355         SearchItems method called on a collection is a list of two lists,
25356         however this is true only when no collection is specified.  GNOME
25357         had used to incorrectly return a list of two lists in both cases,
25358         but this was already fixed:
25359         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
25360         incorrect information in the secrets-search-items’ docstring.
25361         (Bug#20449)
25363 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
25365         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
25366         Use `inhibit-message' instead of hiding the previous message
25367         with (message nil).
25369 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
25371         Remove the deprecated INTERNAL_FIELD macro by expanding it
25372         * src/lisp.h (INTERNAL_FIELD): Remove.
25373         (DEFVAR_KBOARD): Modify accordingly.
25374         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
25375         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
25376         * src/buffer.c (compact_buffer): Use BVAR.
25378 2015-04-29  Glenn Morris  <rgm@gnu.org>
25380         Replace an obsolete function alias
25381         * lisp/isearch.el (isearch-yank-x-selection):
25382         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
25383         (mouse-drag-secondary-moving):
25384         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
25385         Replace obsolete alias x-get-selection with gui-get-selection.
25387 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
25389         * lisp/mail/rmailsum.el: Use lexical-binding.
25391 2015-04-29  Glenn Morris  <rgm@gnu.org>
25393         * test/automated/package-test.el (package-test-update-archives-async):
25394         Skip test on hydra.nixos.org.
25396 2015-04-28  Glenn Morris  <rgm@gnu.org>
25398         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
25399         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
25400         (foldout-mouse-hide-or-exit): Use new names for outline functions.
25402         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
25403         Update for 2014-06-26 hideif.el change.
25405         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
25406         (rmail--decode-and-apply): New function.
25407         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
25409         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
25411 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
25413         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
25414         (package-menu--refresh): Delegate obsolete-hiding to
25415         `package--remove-hidden'.
25416         (package--remove-hidden): Disregard high-priority package if it is
25417         older than the installed one.
25419 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
25421         Update source file encoding list
25422         Update admin/notes/unicode, along with coding system cookies in
25423         other files, so that the two match each other better.
25424         * admin/notes/unicode: lisp/language/ethio-util.el and
25425         lisp/language/ethiopic.el also use utf-8-emacs.
25426         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
25427         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
25428         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
25429         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
25430         * etc/refcards/sk-survival.tex:
25431         Add "coding: utf-8" so that this file is not mishandled in a
25432         Latin-1 or Big-5 locale.
25433         * lisp/international/robin.el, lisp/org/ox-ascii.el:
25434         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
25435         * lisp/language/ethio-util.el: Fix trailer.
25437 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
25439         Fix synchronous invocation of Ispell
25440         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
25441         value to ispell-process-directory before calling ispell-init-process.
25442         Don't call set-process-coding-system if ispell-async-processp is nil.
25443         (Bug#20448)
25445 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
25447         * lisp/emacs-lisp/package.el: Skip space and comments in init file
25448         (package--ensure-init-file): Insert snippet at first
25449         non-whitespace non-comments line.  Respects local-vars at the top
25450         of the file.
25452 2015-04-28  Glenn Morris  <rgm@gnu.org>
25454         * lisp/mail/rmail.el (rmail-copy-headers):
25455         Handle rmail-nonignored-headers being nil.  (Bug#18878)
25457         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
25459         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
25460         Don't get confused by a bzrlib version mismatch warning.
25462 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25464         Change default location of EUDC options file
25465         * etc/NEWS: Document change to EUDC options file's default location.
25466         * lisp/net/eudc-vars.el (eudc-options-file): Use
25467         `locate-user-emacs-file' to change default options file location.
25469 2015-04-27  Glenn Morris  <rgm@gnu.org>
25471         * test/automated/package-test.el (package-test-update-archives-async):
25472         Try to handle the test server script dying.
25474 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
25476         * lisp/saveplace.el (save-place-mode): New minor mode.
25477         (save-place): Redefine as an obsolete alias.
25479         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
25480         * lisp/midnight.el: Use lexical-binding.
25481         (midnight-mode): Make it a proper minor mode.
25482         (midnight-buffer-display-time): Make arg non-optional.
25483         (midnight-find): Remove.
25484         (clean-buffer-list-kill-never-regexps)
25485         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
25486         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
25487         contain functions.
25488         (clean-buffer-list): Use cl-find.
25489         Allow clean-buffer-list-kill-never-regexps to contain functions.
25491 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
25493         Bump version of seq.el to 1.5
25494         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
25495         from seq-doseq.  Bump version number of seq.el.
25497 2015-04-27  Glenn Morris  <rgm@gnu.org>
25499         * lisp/mail/rmail.el (rmail-reply):
25500         Decode subject before matching "Re:" prefix.  (Bug#20396)
25502 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
25504         * lisp/emacs-lisp/package.el: Small improvements
25505         (package--with-work-buffer-async): More informative error.
25506         (package-install-user-selected-packages): Rename to
25507         `package-install-selected-packages'.
25509 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
25511         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
25512         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
25513         (eieio--class-make): Remove leftover `tag'.
25515 2015-04-27  Glenn Morris  <rgm@gnu.org>
25517         * lisp/gnus/message.el (gnus-extract-address-components):
25518         Remove bogus declaration that was masking previous problem.
25520 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
25522         * lisp/gnus/message.el (message-insert-formatted-citation-line):
25523         Fix typo.  (Bug#20318)
25525 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
25527         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
25529         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
25530         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
25531         the buffer in yet another frame.
25532         (reftex-toc-visit-location): Make sure toc-window has focus at the end
25533         when `final' is nil.
25534         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
25535         silence warnings.  Use `--' to clarify that it's internal.
25536         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
25537         (reftex-toc-promote): Clarify unused argument.
25538         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
25539         Add `reftex--' prefix.  Fix all users.
25540         (reftex-toc-promote-prepare): Use _ for dummy variable.
25541         (reftex-toc-restore-region): Rename `m.
25543 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
25545         Fix a typo in bibtex.el
25546         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
25547         last change.  (Bug#20429)
25549         Fix redisplay of frame after loading new fonts
25550         * src/xdisp.c (redisplay_internal): When retrying redisplay of
25551         a frame because new fonts were loaded, disable all redisplay
25552         optimizations on that frame by calling SET_FRAME_GARBAGED.
25553         (Bug#20410)
25555 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
25557         * lisp/info.el (Info-menu): Properly provide the `default'
25558         (Bug#20391)
25560         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
25561         Catch errors from documentation (bug#20418).
25562         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
25564 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
25566         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
25567         Remove redundant ":group 'package".
25569 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
25571         Fix a typo in rmail.el
25572         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
25573         last commit.  (Bug#20429)
25575 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
25577         Introduce xref-prompt-for-identifier
25578         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
25579         (xref--read-identifier): Use it
25580         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
25582 2015-04-26  João Távora  <joaotavora@gmail.com>
25584         `tex-insert-quote' after single `'' opens quotes instead of closing
25585         Without this, it's very hard to precede double quotes with the
25586         apostrophe character, i.e. insert the sequence '``
25587         (quote-backquote-backquote), commonly useful in portuguese, for
25588         instance.
25589         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
25590         preceding chars making `tex-insert-quote' be in the "opening" context.
25592 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
25594         Pass `id' to `completing-read' as def instead of initial input
25595         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
25596         `completing-read' as the default value instead of initial input
25597         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
25599 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
25601         Don't freeze with unreadable processes
25602         Don't freeze if an exiting process can't be read from.  (Bug#19860).
25603         This fixes a bug I introduced in
25604         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
25605         "* process.c: Add sanity checks for file descriptors."
25606         Dmitry Gutov did most of the legwork in finding the problem.
25607         * src/process.c (wait_reading_process_output):
25608         Treat non-running processes that can't be read from
25609         the same as other non-running processes.
25611 2015-04-25  Alan Mackenzie  <acm@muc.de>
25613         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
25614         * lisp/subr.el (remove-yank-excluded-properties): Put
25615         `with-silent-modifications' around only the last three lines of code.
25617 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
25619         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
25620         (package--all-keywords): Deleted variable.
25622         * etc/NEWS: Document package-hiding functionality.
25624 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
25626         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
25628         Clarify the doc string of 'replace-regexp-in-string'
25629         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
25631         Improve doc string of 'insert-buffer-substring'
25632         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
25634         MS-Windows followup for the recent gnulib update
25635         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
25636         acl-internal.c.
25638 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
25640         Spelling fixes
25642         Merge from gnulib
25643         This incorporates:
25644         2015-04-24 file-has-acl: new module, split from acl
25645         2015-04-24 manywarnings: add GCC 5.1 warnings
25646         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
25647         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
25648         2015-04-15 acl: On Linux, check for acls without libacl
25649         2015-04-14 tempname: avoid unused parameter warnings (trivial)
25650         * lib/acl-internal.c: New file, from gnulib.
25651         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
25652         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
25653         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
25654         Update from gnulib.
25656         Port --enable-gcc-warnings to GCC 5.1 x86-64
25657         * lib-src/ebrowse.c (dump_sym):
25658         * lib-src/hexl.c (main):
25659         * src/ccl.c (ccl_driver):
25660         * src/character.c (string_escape_byte8):
25661         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
25662         * src/gnutls.c (Fgnutls_boot):
25663         * src/gtkutil.c (xg_check_special_colors):
25664         * src/image.c (x_build_heuristic_mask):
25665         * src/print.c (safe_debug_print, print_object):
25666         * src/term.c (produce_glyphless_glyph):
25667         * src/xdisp.c (get_next_display_element)
25668         (produce_glyphless_glyph):
25669         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
25670         Don't use a signed format to print an unsigned integer, or vice
25671         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
25672         * src/image.c (png_load_body, jpeg_load_body):
25673         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
25675 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
25677         Add new faces to tsdh-light-theme
25678         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
25679         definitions for Info-quoted, ace-jump-face-foreground,
25680         hl-paren-face, show-paren-match, and show-paren-mismatch.
25682 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
25684         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
25686 2015-04-24  Glenn Morris  <rgm@gnu.org>
25688         * build-aux/gitlog-to-emacslog:
25689         Use raw log format rather than wrapped one.
25691 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25693         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
25694         (seq-doseq): Fix out-of-scope binding.
25695         Don't call `seq-length at every iteration.
25696         Reduce `if's from 3 to 2 per iteration.
25697         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
25699 2015-04-24  Glenn Morris  <rgm@gnu.org>
25701         * lisp/textmodes/text-mode.el (text-mode-hook):
25702         Move text-mode-hook-identify to default.
25704         * lisp/mouse.el (minor-mode-menu-from-indicator):
25705         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
25707         * lisp/help-fns.el (describe-function): More type checking.
25708         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
25710         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
25711         (Bug#20325)
25713 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
25715         shr: strip leading whitespace when expanding URLs
25716         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
25718 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
25720         Clarify "co-authored" some more
25722         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
25724         Clarify doc strings of functions that search for properties
25725         * src/textprop.c (Fnext_char_property_change)
25726         (Fprevious_char_property_change)
25727         (Fnext_single_char_property_change)
25728         (Fprevious_single_char_property_change, Fnext_property_change)
25729         (Fnext_single_property_change, Fprevious_property_change)
25730         (Fprevious_single_property_change): Clarify doc strings wrt return
25731         value and the optional LIMIT argument.  (Bug#20411)
25733 2015-04-24  Glenn Morris  <rgm@gnu.org>
25735         * test/automated/message-mode-tests.el (message-mode-propertize):
25736         Handle non-writable HOME; eg on hydra.nixos.org.
25738 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
25740         Avoid starting threads by w32-shell-execute
25741         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
25742         local file names, before invoking ShellExecute.  (Bug#20220)
25744 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
25746         Fix following doc-links in `widget-documentation-link-action'
25747         * lisp/wid-edit.el (widget-documentation-link-action): Make
25748         following doc-links less simplistic (Bug#20398).
25750 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25752         Improve EUDC manual
25753         * doc/misc/eudc.texi (Troubleshooting):
25754         New LDAP troubleshooting subsection.
25756 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
25758         Omit needless "\ " after multibyte then newline
25759         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
25760         (print_object): When print-escape-multibyte is non-nil and a
25761         multibyte character is followed by a newline or formfeed, followed
25762         by a hex digit, don't output a needless "\ " before the hex digit.
25763         * test/automated/print-tests.el (print-hex-backslash): New test.
25765 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
25767         Add a new `inhibit-message' variable
25768         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
25769         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
25770         `inhibit_message' is non-zero.
25771         * etc/NEWS: Add an entry.
25772         * doc/lispref/display.texi: Add an entry for `inhibit-message',
25773         mention it in `message'.
25775 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
25777         Fix last fix in `display-buffer-record-window'.
25778         * lisp/window.el (display-buffer-record-window): Fix last fix.
25780 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
25782         Minor edits in CONTRIBUTE
25783         * CONTRIBUTE: Rearrange instructions about log messages.
25784         Use "Git" capitalized all over.
25785         Use 2 spaces between sentences.
25787 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
25789         * lisp/files.el (basic-save-buffer): Fix argument.
25791         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
25792         In case `(and (null custom-file) init-file-had-error)' do the same
25793         thing we'd do if `(null user-init-file)', which is to either error out
25794         or return nil.  This is in line with `custom-save-all' which would
25795         throw an error in that situation.  (Bug#20355)
25797         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
25798         (package-menu-hide-low-priority): New variable, see its doc.
25799         (package-archive-priorities): Update doc.
25800         (package-desc-priority): New function.
25801         (package-desc-priority-version): Use it.
25802         (package--remove-hidden): New function.
25803         (package-menu--refresh): Use it.
25805         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
25806         (package-menu--hide-obsolete): New variable.
25807         (package--remove-hidden): Use it.
25808         (package-menu-hide-obsolete): New interactive function to toggle
25809         the variable.
25810         (package--quick-help-keys): Document it.
25811         (package-menu-async): Add :version tag.
25812         (package-menu-mode-map): Bind package-menu-hide-obsolete.
25813         (package-desc-status): Indicate non-installed obsolete packages as
25814         avail-obso.
25815         (package-menu-mark-install): Allow installation of avail-obso.
25816         (package-menu--status-predicate): Sort avail-obso with available.
25818 2015-04-22  Alan Mackenzie  <acm@muc.de>
25820         On C-y, stop some text property entries being written into buffer-undo-list
25821         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
25822         `with-silent-modifications'.
25824 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
25826         In display-buffer-record-window record selected window if necessary
25827         * lisp/window.el (display-buffer-record-window): Store selected window
25828         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
25830 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
25832         Fix reftex-citation bug
25833         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
25834         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
25835         integration is enabled and there are no citations in the document
25836         so far.
25838 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
25840         Add or reset based on the presence of MERGE_HEAD
25841         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
25842         `vc-git-resolve-when-done' to `after-save-hook' in either case.
25843         (vc-git-conflicted-files): Add a TODO.
25844         (vc-git-resolve-when-done): Depending on the presence of
25845         MERGE_HEAD, either update the resolved file in the index, or
25846         remove it from there.  (Bug#20292)
25848 2015-04-21  Glenn Morris  <rgm@gnu.org>
25850         * lisp/custom.el (custom-declare-group): No need to purecopy
25851         custom-current-group-alist members following recent change to set
25852         it to nil before dumping.
25854         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
25855         (Bug#20399)
25857 2015-04-21  Daniel Colascione  <dancol@dancol.org>
25859         Unbreak no-op buffer save message
25860         * lisp/files.el (basic-save-buffer): Accept called-interactively as
25861         an argument instead of directly invoking called-interactively-p,
25862         which will always yield nil in that context.
25864 2015-04-21  Alan Mackenzie  <acm@muc.de>
25866         CC Mode: Do nothing in before/after-change-functions for text
25867         property changes
25868         Fixes bug#20266.
25869         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
25870         yank-handled-properties buffer local, and remove 'category from it.
25871         (c-called-from-text-property-change-p): New function.
25872         (c-before-change): Don't do anything if a call of the new function
25873         returns non-nil.
25874         (c-after-change): Don't do much if a call of the new function returns
25875         non-nil.
25876         (c-extend-after-change-region): Put changes to text property 'fontified
25877         inside c-save-buffer-state.
25879 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
25881         Fix byte-compiler warnings about looking-back
25882         * lisp/vc/log-view.el (log-view-end-of-defun-1):
25883         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
25884         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
25885         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
25886         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
25887         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
25888         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
25889         * lisp/org/org.el (org-insert-heading, org-sort-entries):
25890         * lisp/org/org-mouse.el (org-mouse-end-headline)
25891         (org-mouse-context-menu):
25892         * lisp/org/org-clock.el (org-clock-cancel):
25893         * lisp/man.el (Man-default-man-entry):
25894         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
25895         (rmail-ensure-blank-line):
25896         * lisp/mail/footnote.el (Footnote-delete-footnote):
25897         * lisp/mail/emacsbug.el (report-emacs-bug):
25898         * lisp/info.el (Info-follow-reference, Info-fontify-node):
25899         * lisp/info-look.el (info-lookup-guess-custom-symbol):
25900         * lisp/help-fns.el (help-fns--key-bindings):
25901         * lisp/files.el (hack-local-variables):
25902         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
25903         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
25904         (viper-complete-filename-or-exit):
25905         * lisp/emulation/viper-cmd.el (viper-backward-indent):
25906         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
25907         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
25908         * lisp/cus-edit.el (custom-face-edit-value-create):
25909         * lisp/calendar/todo-mode.el (todo-set-item-priority)
25910         (todo-filter-items-1, todo-convert-legacy-files)
25911         (todo-prefix-overlays): Add explicit second arg to looking-back.
25913 2015-04-20  Glenn Morris  <rgm@gnu.org>
25915         Avoid non-nil current-load-list at startup
25916         * src/process.c (init_process_emacs): Move Fprovide statement...
25917         (syms_of_process): ... to here.
25919         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
25921         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
25922         in emacs -Q.
25924 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
25926         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
25927         (Bug#20330)
25929 2015-04-20  Glenn Morris  <rgm@gnu.org>
25931         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
25933         Tweak exec-path in uninstalled case
25934         * src/callproc.c (init_callproc): If running uninstalled, do not
25935         include eventual installation libexec directory in exec-path.
25937 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
25939         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
25940         cache keywords.
25941         (package-menu-filter): Accept a list of keywords.
25942         (package--all-keywords): New variable to cache known keywords.
25943         (package-all-keywords): Populate it if necessary.
25944         (package-refresh-contents): Reset it.
25946         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
25947         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
25948         as special keywords which match agains package archive and status
25949         respectively.
25950         * etc/NEWS: Document it.
25952 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
25954         Describe and index "empty overlays".
25955         * doc/lispref/display.texi (Overlays): Improve indexing.
25956         (Managing Overlays): Describe "empty" overlays.
25957         (Overlay Properties, Finding Overlays): Add cross-reference to
25958         where empty overlays are described.
25960 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
25962         Spelling fixes
25964         Quote 'like this' in top-level files
25965         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
25966         Prefer to single-quote 'like this' (instead of the older style
25967         `like this').
25968         * configure.ac: Fix some space-before-tab problems that 'git commit'
25969         complained about.
25971         Use bool for boolean in textprop.c, undo.c
25972         * src/textprop.c (soft, hard): Now constants instead of macros.
25973         (validate_plist): Rewrite to avoid need for boolean local.
25974         (interval_has_all_properties, interval_has_some_properties)
25975         (interval_has_some_properties_list, add_properties)
25976         (remove_properties, get_char_property_and_overlay)
25977         (Fnext_single_char_property_change)
25978         (Fprevious_single_char_property_change, add_text_properties_1)
25979         (Fremove_text_properties, Fremove_list_of_text_properties)
25980         (copy_text_properties):
25981         * src/tparam.c (tparam1):
25982         * src/undo.c (record_change, record_property_change)
25983         (syms_of_undo):
25984         Use 'true' and 'false' for booleans.
25986 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
25988         * lisp/vc/vc-git.el (vc-git-find-file-hook):
25989         Call `smerge-start-session' even when dealing with a stash
25990         conflict (bug#20292).
25992 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
25994         Add option to eshell/clear to clear scrollback.
25995         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
25996         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
25997         scrollback contents are cleared.
25998         * etc/NEWS: Describe change.
25999         * doc/misc/eshell.texi: Add entry for `clear'.
26001 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
26003         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
26004         where either will do.
26006 2015-04-19  Steve Purcell  <steve@sanityinc.com>
26008         Assume package archive-contents are UTF8-encoded
26009         * lisp/emacs-lisp/package.el (package--read-archive-file):
26010         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
26011         downloaded and cached archive-contents files, so that non-ASCII
26012         characters in package descriptions are displayed correctly in the
26013         `list-packages' menu.  (Bug#20231)
26015 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
26017         Abort when looking at stashed changes
26018         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
26019         stashed changes (bug#20292).
26021 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
26023         Refactor low-level printing for simplicity
26024         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
26025         PRINTPREPARE; doable now that we assume C99.  All callers changed.
26026         (PRINTCHAR): Remove, as it adds more mystery than clarity.
26027         All callers changed.
26028         (strout): Assume that caller computes length.  All callers changed.
26029         (print_c_string): New function.
26030         (write_string, write_string_1): Compute length instead of asking
26031         the caller to compute it.  All callers changed.
26032         (write_string): Simplify by using write_string_1.
26033         (write_string_1): Simplify by using print_c_string.
26034         (Fterpri): Compute default val more clearly.
26035         (Fprin1_to_string, print_object):
26036         Assume C99 to avoid unnecessary nesting.
26037         (print_object): Prefer print_c_string to multiple printchar, or
26038         to calling strout with -1 length.  Coalesce into sprintf when
26039         this is easy.
26041 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
26043         Prefer "Bug#1234" in commit messages (Bug#20325)
26044         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
26045         as this isn't useful for Git.
26046         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
26048 2015-04-18  Glenn Morris  <rgm@gnu.org>
26050         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
26051         (Bug#19506)
26053 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
26055         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
26056         Do not use `chomp' as a function.  (Bug#19505)
26058 2015-04-18  Glenn Morris  <rgm@gnu.org>
26060         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
26062         * doc/emacs/misc.texi (Sorting): Small edit.
26063         (Bug#19896)
26065         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
26067 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
26069         css-mode.el: Support multi-line comment filling
26070         (Bug#20256)
26071         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
26072         comment filling.
26073         (css-adaptive-fill): New function.
26074         (css-mode): Set `adaptive-fill-function'.
26075         (scss-mode): Set `comment-continue'.
26077 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
26079         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
26080         Better error messages.
26082 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
26084         Minor improvements in Bulgarian input methods
26085         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
26086         Replace U+042C with U+045D, as the former character is not used in
26087         the modern Bulgarian language.
26088         (Bug#20350)
26090 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
26092         Improve EUDC manual
26093         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
26094         authentication schemes.  Add index items.  Shorten example server
26095         name.
26097 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
26099         Don't show both feature and function with the same name
26100         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26101         Don't show both feature and function with the same name.
26103         (elisp--xref-identifier-location): Skip variable, if it's also
26104         a function
26105         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26106         Avoid returning both the variable and the function for the same
26107         minor mode.
26109 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
26111         Fix fontification of keywords clobbered by the prompt
26112         * lisp/comint.el (comint-output-filter): Remove the uses of
26113         with-silent-modifications I introduced as part of the last change.
26114         This fixes, e.g., erratically missing highlighting when running
26115         ./configure --help; ./configure in a shell-mode buffer with
26116         compilation-shell-minor-mode turned on.
26118 2015-04-17  Glenn Morris  <rgm@gnu.org>
26120         * admin/authors.el (authors-valid-file-names)
26121         (authors-renamed-files-alist): Additions.
26123 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
26125         * lisp/indent.el (indent-region): Don't deactivate the mark.
26126         (Bug#20357)
26128 2015-04-17  Sam Steingold  <sds@gnu.org>
26130         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
26132 2015-04-16  Leo Liu  <sdl.web@gmail.com>
26134         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
26136 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
26138         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
26139         Don't use `pcomplete' any more.
26141 2015-04-16  Glenn Morris  <rgm@gnu.org>
26143         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
26145 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
26147         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
26148         * configure.ac (LIBJPEG): Leave it empty for MinGW.
26150 2015-04-16  Glenn Morris  <rgm@gnu.org>
26152         * lisp/replace.el (query-replace-from-to-separator):
26153         Delay initialization to avoid rogue setting after startup.
26155 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
26157         Pre-4.6 GCC succeeds with unknown option
26158         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
26159         (Bug#20338)
26161 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
26163         '[:graph:]' now excludes whitespace, not just ' '
26164         * doc/lispref/searching.texi (Char Classes):
26165         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
26166         sans whitespace (not sans space).
26167         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
26168         not just space.
26169         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
26171 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26173         * lisp/subr.el (substitute-key-definition-key, special-form-p)
26174         (macrop): Drop deprecated second arg to indirect-function.
26175         (looking-back): Make the second arg non-optional.
26177         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
26178         command is actually sent to the shell.
26180 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
26182         Port jpeg configuration to Solaris 10 with Sun C
26183         * configure.ac: Check for jpeglib 6b by trying to link it, instead
26184         of relying on cpp magic that has problems in practice.  Check for
26185         both jpeglib.h and jerror.h features.  Remove special case for
26186         mingw32, which should no longer be needed (and if it were needed,
26187         should now be addressable by hotwiring emacs_cv_jpeglib).
26188         (Bug#20332)
26190 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26192         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
26193         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
26194         Move to elisp-mode.el.
26195         (lisp-mode-variables): (Re)move elisp-specific settings.
26196         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
26197         from lisp-mode-variables.
26198         (elisp--font-lock-flush-elisp-buffers): New function, moved from
26199         lisp-mode.el.
26201         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
26202         Avoid pathological slowdown at top-level in large file.
26204 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
26206         Standardize names of ChangeLog history files
26207         Suggested by Glenn Morris in:
26208         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
26209         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
26210         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
26211         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
26212         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
26213         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
26214         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
26215         Remove.
26217         Split top-level entries into pre- and post-April 7
26218         This more clearly distingiushes pre-April-7 ChangeLog entries (which
26219         are for top-level files only) from post-April-7 entries (which are
26220         about files at all levels.  Problem reported by Glenn Morris in:
26221         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
26222         * ChangeLog.1: Move post-April-7 entries from here ...
26223         * ChangeLog.2: ... to this new file.
26224         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
26226 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26228         Fix recent cus-start changes that added customize-rogues
26229         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
26230         vars early.
26231         * lisp/loadup.el ("cus-start"): Move to the end to reduce
26232         customize-rogue.
26234 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
26236         Define cl-concatenate as an alias to seq-concatenate
26237         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
26238           code by making cl-concatenate an alias to seq-concatenate.
26240 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26242         * src/lread.c (intern_1): Make sure we'd find the symbol we add
26243         (Bug#20334)
26244         * src/xfaces.c (resolve_face_name): Don't use `intern' with
26245         Lisp_Strings.
26247 2015-04-15  Glenn Morris  <rgm@gnu.org>
26249         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
26251 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26253         Clean up gnus-uu saving code slightly
26254         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
26255         save-restriction/widen calls make more sense.
26257 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
26259         Make [:graph:] act like [:print:] sans space
26260         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
26261         [:graph:] so that it matches everything that [:print:] does,
26262         except for space.
26263         * doc/lispref/searching.texi (Char Classes):
26264         * etc/NEWS:
26265         * lisp/emacs-lisp/rx.el (rx):
26266         Document [:graph:] to be [:print:] sans ' '.
26267         * src/character.c, src/character.h (graphicp): New function.
26268         * src/regex.c (ISGRAPH) [emacs]: Use it.
26269         (BIT_GRAPH): New macro.
26270         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
26271         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
26272         Return BIT_GRAPH for RECC_GRAPH.
26273         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
26274         and ISPRINT if BIT_PRINT.
26276 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26278         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
26279         Don't use call-next-method in a cl-defmethod.
26281         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
26282         (eieio--class-p): Remove, provided by cl-defstruct.
26284 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
26286         Add seq-intersection and seq-difference to the seq library
26287         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
26288         New functions.
26289         * test/automated/seq-tests.el: Add tests for seq-intersection and
26290         seq-difference.
26291         * doc/lispref/sequences.texi: Add documentation for seq-intersection
26292         and seq-difference.
26294 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26296         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
26297         to avoid leaking internals.
26299 2015-04-14  Sam Steingold  <sds@gnu.org>
26301         package--ensure-init-file: widen requires save-restriction
26303 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
26305         Improve the commit-msg Git hook for unibyte environments
26306         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
26307         in unibyte environments.  (Suggested by Paul Eggert
26308         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
26309         [:print:], based on UTF-8 sequences of the unprintable characters.
26311         Describe problems with cursor caused by Windows Magnifier
26312         * etc/PROBLEMS: Describe the problem with cursor shape on
26313         MS-Windows due to Windows Magnifier.
26314         (Bug#20271)
26316         Make [:print:] support non-ASCII characters correctly
26317         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
26318         (BIT_PRINT): New bit mask.
26319         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
26320         * src/character.c (printablep): New function.
26321         * src/character.h (printablep): Add prototype.
26322         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
26323         of 'print', 'alnum', and 'alphabetic'.
26324         * doc/lispref/searching.texi (Char Classes): Document the new
26325         behavior of [:print:].
26326         * etc/NEWS: Mention the new behavior of [:print:].
26328         Assign correct general-category and names to surrogates
26329         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
26330         surrogates.  This avoids assigning them the default
26331         general-category of 'Cn', i.e. unassigned codepoints.
26332         (unidata-get-name): Give surrogates synthetic names.
26334 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
26336         Assume C89 offsetof in xterm.c, xlwmenu.c
26337         * lwlib/xlwmenu.c (offset):
26338         * src/xterm.c (cvt_string_to_pixel_args):
26339         Use offsetof, not XtOffset.
26341 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
26343         Assume C89 offsetof in widget.c
26344         * src/widget.c (XtOffset): Remove; no longer needed.
26345         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
26347         Fix think-o in previous patch
26348         * src/window.c (count_windows, get_leaf_windows):
26349         Don't optimize count_windows incorrectly.
26351 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
26353         Avoid some int overflows in window.c
26354         * src/print.c (print_object):
26355         * src/window.c (sequence_number):
26356         * src/window.h (struct window.sequence_number):
26357         Don't assume window sequence number fits in int.
26358         * src/window.c (window_select_count):
26359         * src/window.h (struct window.use_time, window_select_count):
26360         Don't assume window use time fits in int.
26361         * src/window.c (Fsplit_window_internal):
26362         Don't assume user-supplied integer, or sum, fits in int.
26363         (Fset_window_configuration, count_windows, get_leaf_windows)
26364         (save_window_save, Fcurrent_window_configuration):
26365         Use ptrdiff_t for object counts.
26366         (Fset_window_configuration): Omit unused local 'n'.
26367         (count_windows): Simplify by writing in terms of get_leaf_windows.
26368         (get_leaf_windows): Don't store through FLAT if it's null.
26369         (extract_dimension): New static function.
26370         (set_window_margins, set_window_fringes, set_window_scroll_bars):
26371         Use it to avoid undefined behavior when converting user-supplied
26372         integer to 'int'.
26374 2015-04-13  Glenn Morris  <rgm@gnu.org>
26376         Minor doc copyedits
26377         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
26378         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
26380 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
26382         [Gnus] Catch the invalid-operation that idna.el will issue
26383         * lisp/gnus/gnus-art.el (gnus-use-idna):
26384         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
26385         * lisp/gnus/message.el (message-use-idna):
26386         Catch the invalid-operation that idna.el will issue.
26388 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
26390         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
26392 2015-04-13  Sam Steingold  <sds@gnu.org>
26394         package--ensure-init-file: widen before looking for
26395         "(package-initialize)"
26397 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
26399         Change diff-switches default to `-u' (Bug#20290)
26400         * doc/emacs/files.texi (Comparing Files): Document the new default
26401         value of `diff-switches'.
26402         * doc/emacs/trouble.texi (Sending Patches): Document the preference
26403         for unified diff format.  Escape the plus in the suggested `-F' regexp
26404         value.
26405         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
26407 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26409         (gnus-group--setup-tool-bar-update): Fix last change
26410         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
26411         cursor-sensor-functions should be a list of functions.
26413 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
26415         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
26416         Use gmm-called-interactively-p.
26418 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26420         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
26421         (Bug#20321)
26422         * lisp/cus-start.el (read-buffer-function): Don't advertise
26423         iswitchb-read-buffer any more.
26424         (iswitchb): Don't tweak this obsolete group any more.
26426 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
26428         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
26430         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
26431         Adding a string after a constructor's argument list will use
26432         that string as the constructor function docstring.  If this string
26433         is absent but the struct itself was given a docstring, use that as
26434         the constructor's docstring.
26435         Fixes bug#17284.
26437 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26439         Deprecate `intangible' and `point-entered' properties
26440         * lisp/emacs-lisp/cursor-sensor.el: New file.
26441         * lisp/simple.el (pre-redisplay-functions): New hook.
26442         (redisplay--pre-redisplay-functions): New function.
26443         (pre-redisplay-function): Use it.
26444         (minibuffer-avoid-prompt): Mark obsolete.
26445         (redisplay--update-region-highlight): Adapt it to work as a function on
26446         pre-redisplay-functions.
26447         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
26448         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
26449         than point-entered to make the prompt intangible.
26450         * lisp/forms.el: Move `provide' calls to the end.
26451         (forms-mode): Don't use `run-hooks' on a local var.
26452         (forms--make-format, forms--make-format-elt-using-text-properties):
26453         Use cursor-intangible rather than `intangible'.
26454         (forms-mode): Enable cursor-intangible-mode.
26455         * lisp/isearch.el (isearch-mode): Use defvar-local.
26456         (cursor-sensor-inhibit): Declare.
26457         (isearch-mode): Set cursor-sensor-inhibit.
26458         (isearch-done): Set it back.
26459         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
26460         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
26461         any more.
26462         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
26463         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
26464         Add Edebug spec.
26465         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
26466         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
26467         inhibit-point-motion-hooks any more.
26468         (ses--cell-at-pos, ses--curcell): New functions, extracted from
26469         ses-set-curcell.
26470         (ses-set-curcell): Use them.
26471         (ses-print-cell, ses-setup): Use cursor-intangible instead of
26472         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
26473         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
26474         Use ses--cell-at-pos.
26475         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
26476         extracted from ses-command-hook.  Make them work with multiple windows
26477         displaying the same buffer.
26478         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
26479         Enable cursor-intangible-mode.
26480         (ses-command-hook): Remove cell highlight and mode-line update code.
26481         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
26482         Update for new name of text-property holding the cell name.
26483         (ses-rename-cell): Don't mess with mode-line-process.
26484         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
26485         cursor-sensor-functions property instead of point-entered.
26486         (erc-insert-timestamp-right, erc-format-timestamp):
26487         Use cursor-intangible rather than `intangible'.
26488         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
26489         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
26490         cursor-sensor-mode if needed.
26491         (erc-echo-timestamp): Adapt to calling convention of
26492         cursor-sensor-functions.
26493         (erc-insert-timestamp-right): Remove unused vars `current-window' and
26494         `indent'.
26495         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
26496         (gnus-update-group-mark-positions): Remove unused `topic' var.
26497         (gnus-group-insert-group-line): Remove unused var `header'.
26498         (gnus-group--setup-tool-bar-update): New function.
26499         (gnus-group-insert-group-line): Use it.
26500         (gnus-group-update-eval-form): Declare local
26501         dynamically-bound variables.
26502         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
26503         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
26504         (gnus-group-prepare-topics, gnus-topic-update-topic)
26505         (gnus-topic-change-level, gnus-topic-catchup-articles)
26506         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
26507         Use inhibit-read-only.
26508         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
26509         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
26510         * lisp/textmodes/reftex-index.el (reftex-display-index):
26511         Use cursor-intangible-mode if available.
26512         (reftex-index-post-command-hook): Check cursor-intangible.
26513         * lisp/textmodes/reftex-toc.el (reftex-toc):
26514         Use cursor-intangible-mode if available.
26515         (reftex-toc-recenter, reftex-toc-post-command-hook):
26516         Check cursor-intangible.
26517         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
26518         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
26519         (sgml-tags-invisible): Use with-silent-modifications and
26520         inhibit-read-only.  Enable cursor-sensor-mode.
26521         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
26522         calling convention of cursor-sensor-functions.
26523         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
26524         (table-point-entered-cell-hook, table-point-left-cell-hook):
26525         Don't autoload.
26526         (table-cell-entered-state): Remove var.
26527         (table--put-cell-point-entered/left-property)
26528         (table--remove-cell-properties):
26529         Use cursor-sensor-functions rather than point-entered/left.
26530         (table--point-entered/left-cell-function): Merge
26531         table--point-entered-cell-function and table--point-left-cell-function
26532         and adjust to calling convention of cursor-sensor-functions.
26534         Update ldef-boots.el
26536         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
26538         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
26540         Collapse successive char deletions in the undo log
26541         * src/cmds.c (remove_excessive_undo_boundaries): New function,
26542         extracted from Fself_insert_command.
26543         (Fdelete_char, Fself_insert_command): Use it.
26544         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
26545         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
26547         xterm and OSC 52: Add NEWS entry, and tweak the code
26548         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
26549         to top-level.
26550         (terminal-init-xterm-activate-set-selection): Set a terminal property.
26551         (xterm--set-selection): Use it instead of checking the value of
26552         `terminal-initted'.  Don't use string-bytes.
26554 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
26556         xterm.el: Implement OSC-52 functionality for setting the X selection
26557         * lisp/term/xterm.el (xterm-max-cut-length): New var.
26558         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
26559         New funs.
26560         (terminal-init-xterm, xterm--version-handler): Use them.
26562 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26564         Remove left over code from when we used an obsolete/loaddefs.el file
26565         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
26566         when we used an obsolete/loaddefs.el file.
26568         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
26569         (semanticdb-without-unloaded-file-searches): Use declare.
26570         (semantic-fw-add-edebug-spec): Remove.
26572         * lisp/completion.el (completion-lisp-mode-hook):
26573         Use completion-separator-chars rather than local key binding.
26575         * src/*.c: Set deactivate_mark buffer-locally
26576         (Bug#20260)
26577         * src/insdel.c (prepare_to_modify_buffer_1):
26578         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
26579         buffer-locally.
26581 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26583         python.el: Keep symmetry on sexp navigation with parens
26584         (Bug#19954)
26585         * lisp/progmodes/python.el
26586         (python-nav--forward-sexp): Add argument skip-parens-p.
26587         (python-nav-forward-sexp, python-nav-backward-sexp)
26588         (python-nav-forward-sexp-safe)
26589         (python-nav-backward-sexp-safe): Use it.
26590         * test/automated/python-tests.el
26591         (python-nav-forward-sexp-1): Fix test.
26593 2015-04-12  João Távora  <joaotavora@gmail.com>
26595         Don't use `setq-local' in Gnus code
26596         This might break upstream builds with older Emacsen
26597         * lisp/gnus/message.el (message-mode): Use `set' and
26598         `make-local-variable' instead of `setq-local'.
26600 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
26602         Update Makefile.in's .PHONY dependencies
26603         * Makefile.in (change-history-commit, master-branch-is-current)
26604         (no-ChangeLog): Now phony.
26606         Remove configure's --with-mmdf option
26607         * configure.ac (MAIL_USE_MMDF): Remove.
26608         * etc/NEWS: Document this.
26609         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
26610         (Bug#20308)
26612         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
26613         That way, 'make install' won't think it's a man page.
26614         Reported by Ashish SHUKLA in:
26615         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
26617         Improve 'make change-history' prereq tests
26618         * Makefile.in (gen_origin): Fix to match what's in the master branch.
26619         (no-ChangeLog, master-branch-is-current): New rules.
26620         (change-history): Depend on them, to avoid similar future problems.
26621         Escape the local-variables string to pacify Emacs when editing
26622         Makefile.in.
26624 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26626         * test/automated/package-test.el (with-package-test):
26627         Kill Packages buffer.
26629         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
26630         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
26631         "Upgrade" last, and use capitalized instead of all-caps.
26633         * lisp/emacs-lisp/package.el: Completely silence async operations.
26634         (package--make-autoloads-and-stuff): Silence autoloads.
26635         (package--save-selected-packages): New function, silences
26636         `customize-save-variable'.
26637         (package--user-selected-p, package-install-from-buffer)
26638         (package-delete, package-install): Use it.
26639         (package-install-from-archive)
26640         (package-menu--perform-transaction): Silence.
26641         (package-menu-execute): Feedback when operation starts.
26643         Use delay-mode-hooks when visiting the init-file
26644         * lisp/emacs-lisp/package.el (package--ensure-init-file):
26645         delay-mode-hooks.
26646         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
26648         * lisp/files.el: Only message when saving if save-silently is nil.
26649         (save-silently): New variable.
26650         (files--message): New function.
26651         (find-file-noselect, save-buffer, basic-save-buffer)
26652         (basic-save-buffer-2, save-some-buffers, not-modified)
26653         (append-to-file): Use them.
26655 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
26657         Support debug declarations in pcase macros
26658         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
26659         (pcase-UPAT): Use it.  Remove "`".
26660         (pcase--edebug-match-macro): New function.
26661         (pcase-defmacro): Support debug declarations.
26662         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
26663         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
26664         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
26665         Add debug declaration.
26667         pcase.el: Edebug support for `app' and vector patterns
26668         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
26669         (pcase-UPAT): Use it.  Support `app' patterns.
26670         (pcase-QPAT): Support vector patterns.
26672         edebug.el: Disambiguate vector specifications
26673         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
26674         `(vector ...)' as a vector specification, not as a sublist.
26676         (gnus-summary-refer-thread): Don't clobber unread articles
26677         This fixes a bug where `A T' causes "random" articles to become marked
26678         as read.
26679         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
26680         gnus-newsgroup-unreads remains sorted.
26682         mouse-sel.el: Fix mouse-sel-get-selection-function
26683         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
26684         Use gui--last-selected-text-primary instead of no longer existing
26685         gui-last-selected-text.
26687         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
26689         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
26691 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26693         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
26695         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
26696         right buffer.
26698         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
26699         (byte-compile--interactive): New var.
26700         (byte-compile--message): New function.
26701         (byte-compile-log-1, byte-force-recompile)
26702         (byte-recompile-directory, byte-recompile-file)
26703         (byte-compile-file, compile-defun)
26704         (byte-compile-file-form-defmumble, byte-compile)
26705         (byte-compile-file-form-defalias, display-call-tree): Use it.
26707         * lisp/files.el: Don't message when nothing happened.
26708         (save-some-buffers, basic-save-buffer): Before messaging to say
26709         "nothing was saved" check if (called-interactively-p 'any).
26711 2015-04-12  João Távora  <joaotavora@gmail.com>
26713         Summary: Improve sexp-based movement in message-mode
26714         Works by giving citations and smileys a different syntax.  This helps
26715         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
26716         sexp-based movement.
26717         * lisp/gnus/message.el (message--syntax-propertize): New function.
26718         (message-mode): Set syntax-related vars.
26719         (message-smileys): New variable.
26720         * test/automated/message-mode-tests.el: New file
26722 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
26724         Use bool for boolean in window.c
26725         * src/window.c: Omit unnecessary static function decls.
26726         (adjust_window_count, select_window, Fselect_window)
26727         (window_body_width, Fwindow_body_height, Fwindow_body_width)
26728         (set_window_hscroll, check_window_containing, Fwindow_at)
26729         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
26730         (unshow_buffer, replace_window, recombine_windows)
26731         (add_window_to_list, candidate_window_p, next_window)
26732         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
26733         (Fget_buffer_window, Fdelete_other_windows_internal)
26734         (replace_buffer_in_windows_safely, set_window_buffer)
26735         (Fset_window_buffer, Fforce_window_update)
26736         (temp_output_buffer_show, make_parent_window)
26737         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
26738         (resize_frame_windows, Fsplit_window_internal)
26739         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
26740         (Fresize_mini_window_internal, mark_window_cursors_off)
26741         (window_scroll, window_scroll_pixel_based)
26742         (window_scroll_line_based, scroll_command, Fscroll_other_window)
26743         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
26744         (Fmove_to_window_line, Fset_window_configuration)
26745         (delete_all_child_windows, apply_window_adjustment)
26746         (set_window_fringes, set_window_scroll_bars)
26747         (Fset_window_vscroll, foreach_window, foreach_window_1)
26748         (compare_window_configurations, Fcompare_window_configurations):
26749         Prefer 'bool', 'true', and 'false' for booleans.
26750         * src/window.h (WINDOW_MODE_LINE_LINES)
26751         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
26753 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
26755         Speed up byte-compilation and autoload generation by avoiding mode-hooks
26756         This prevents emacs-lisp-mode-hook from being run everytime an
26757         autoload file is generated, which can account for a fraction of
26758         package installation time depending on the hooks the user has
26759         configured.
26760         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
26761         * lisp/emacs-lisp/autoload.el (autoload-find-file)
26762         (autoload-find-generated-file): Use delay-mode-hooks.
26764         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
26765         (package-menu-refresh): Respect async and do new package checking.
26766         (list-packages): Use `package-menu-refresh' instead of repeating code.
26768         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
26769         (package--quick-help-keys): New variable.
26770         (package--prettify-quick-help-key): New function.
26771         (package-menu-quick-help): Use it.
26773         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
26774         (package--build-compatibility-table): Require finder.
26776         * test/automated/package-test.el: Fix new test.
26778         * lisp/emacs-lisp/package.el: Silence async operations.
26779         (package--silence): New variable.
26780         (package--message): New function.
26781         (package-import-keyring, package-refresh-contents)
26782         (package-compute-transaction, package-install, package-delete)
26783         (package-menu--perform-transaction, package-menu-execute): Use it.
26785         * test/automated/package-test.el: Test async functionality.
26786         (package-test-update-archives-async): New test.
26788 2015-04-11  Daiki Ueno  <ueno@gnu.org>
26790         Utilize `make-process' in epg.el
26791         * lisp/epg.el (epg-error-output): Abolish.
26792         (epg-context): New slot `error-buffer'.
26793         (epg--start): Use `make-process' and `make-pipe-process'.
26794         (epg--process-filter): Remove code separating stderr from stdout.
26795         (epg-wait-for-completion): Simplify `error-output' handling.
26796         (epg-reset): Dispose error buffer.
26798 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
26800         * .gitignore: Ignore doc temps and outputs.
26802         Port commit-msg to MSYS Bash+Gawk
26803         See Eli Zaretskii in:
26804         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
26805         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
26806         (cent_sign, print_at_sign, at_sign): Revert previous change.
26807         (print_at_sign): Prepend "BEGIN".
26808         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
26810         Port commit-msg to broken MS-Windows shell
26811         * build-aux/git-hooks/commit-msg (cent_sign):
26812         Just use UTF-8 here rather than ASCII + printf, as the latter fails
26813         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
26814         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
26816 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
26818         Support GnuTLS v3.4 and later on MS-Windows
26819         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
26820         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
26821         GnuTLS DLL to load according to value of libgnutls-version.
26822         (Bug#20294)
26824 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
26826         Minor quoting etc. fixes to misc manuals
26827         Fix some minor quoting and spacing issues.  Distinguish more
26828         clearly among grave accent and apostrophe (which are ASCII) and
26829         single quote (which is not).  Prefer the standard terms
26830         "apostrophe" and "grave accent" to alternative names that can be
26831         confusing.  Use apostrophes to single-quote ASCII text.
26832         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
26833         rather than approximating it in ASCII with grave accent.
26835 2015-04-11  Daiki Ueno  <ueno@gnu.org>
26837         Respect more keyword args in `make-process'
26838         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
26839         keywords as documented.
26841 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
26843         Extract ChangeLog entries when committing a directory
26844         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
26845         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
26846         Add a FIXME comment.
26847         (log-edit-changelog-entries): Extract from
26848         `log-edit-changelog-entries', handle FILE being a directory
26849         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
26851 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
26853         Fix problems found by --enable-gcc-warnings
26854         * src/process.c (create_process, Fmake_pipe_process)
26855         (Fmake_network_process): Omit unused locals.
26857         Fix commit-msg to handle scissors lines
26858         * build-aux/git-hooks/commit-msg:
26859         Ignore every line after a scissors line, such as a line generated
26860         by 'git commit -v'.  Problem reported by Johan Bockgård in:
26861         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
26863         port commit-msg to Gawk 3.0.4 (1999)
26864         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
26865         (print_at_sign, at_sign): New vars.  Use them to avoid problems
26866         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
26867         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
26869         Have commit-msg report commit failure
26870         * build-aux/git-hooks/commit-msg: If the commit is aborted,
26871         say so.  Simplify by doing this at the end.  Problem reported
26872         by Eli Zaretskii in:
26873         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
26875 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
26877         Clean up LDAP Configuration section of EUDC manual
26878         * doc/misc/eudc.texi: Combine indices.
26879         (LDAP Configuration): Use command markup.  Add index entries.
26880         Change formatting.  Wrap long lines.  Add noindent markup.
26882 2015-04-10  Daiki Ueno  <ueno@gnu.org>
26884         Add facility to collect stderr of async subprocess
26885         * src/w32.h (register_aux_fd): New function declaration.
26886         * src/w32.c (register_aux_fd): New function.
26887         * src/process.h (struct Lisp_Process): New member stderrproc.
26888         * src/process.c (PIPECONN_P): New macro.
26889         (PIPECONN1_P): New macro.
26890         (Fdelete_process, Fprocess_status, Fset_process_buffer)
26891         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
26892         (Fcontinue_process): Handle pipe process specially.
26893         (create_process): Respect p->stderrproc.
26894         (Fmake_pipe_process): New function.
26895         (Fmake_process): Add new keyword argument :stderr.
26896         (wait_reading_process_output): Specially handle a pipe process when
26897         it gets an EOF.
26898         (syms_of_process): Register Qpipe and Smake_pipe_process.
26899         * doc/lispref/processes.texi (Asynchronous Processes): Document
26900         `make-pipe-process' and `:stderr' keyword of `make-process'.
26901         * lisp/subr.el (start-process): Suggest to use `make-process' handle
26902         standard error separately.
26903         * test/automated/process-tests.el (process-test-stderr-buffer)
26904         (process-test-stderr-filter): New tests.
26905         * etc/NEWS: Mention new process type `pipe' and its usage with the
26906         `:stderr' keyword of `make-process'.
26908 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
26910         Minor quoting etc. fixes to lispref manual
26911         * doc/lispref/tips.texi (Documentation Tips):
26912         Distinguish more clearly among grave accent, apostrophe,
26913         and single quote.
26914         * doc/lispref/README, doc/lispref/buffers.texi:
26915         * doc/lispref/commands.texi, doc/lispref/control.texi:
26916         * doc/lispref/customize.texi, doc/lispref/display.texi:
26917         * doc/lispref/elisp.texi, doc/lispref/files.texi:
26918         * doc/lispref/frames.texi, doc/lispref/hash.texi:
26919         * doc/lispref/help.texi, doc/lispref/internals.texi:
26920         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
26921         * doc/lispref/markers.texi, doc/lispref/modes.texi:
26922         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
26923         * doc/lispref/os.texi, doc/lispref/positions.texi:
26924         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
26925         * doc/lispref/text.texi, doc/lispref/tips.texi:
26926         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
26927         Use American-style double quoting in ordinary text,
26928         and quote 'like this' when single-quoting in ASCII text.
26929         Also, fix some minor spacing issues.
26931 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
26933         Handle symlinked test directory in tramp-tests.el
26934         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
26935         (tramp--test-check-files): Use `file-truename' for directories.
26937 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
26939         Fix 'recenter' when visual-line-mode is turned on
26940         * src/window.c (Frecenter): Use the same code for GUI and TTY
26941         frames alike; use vmotion only for "initial" frames.  This is
26942         because vmotion doesn't support visual-line-mode.  Rewrite the
26943         'iarg >= 0' case to use move_it_* functions instead of using
26944         vmotion, for the same reason.  Fix the clipping of the argument
26945         value to support scroll-margin in all cases and avoid unwarranted
26946         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
26947         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
26948         which see.
26950 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
26952         * lisp/abbrev.el (define-abbrev-table): Refine last change.
26954         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
26955         use of c[ad]+r", so as to keep the "cl-" prefix on all
26956         cl-lib definitions.
26958         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
26959         Use inhibit-point-motion-hooks.
26961         * lisp/cedet/semantic: Remove some dead code.
26962         * lisp/cedet/semantic/util-modes.el
26963         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
26964         any more.
26965         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
26966         not supported any more.
26967         (semantic-safe): Use `declare'.
26968         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
26969         (semantic-tag-intangible-p): Remove unused functions.
26970         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
26971         Remove unused function.
26973         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
26974         (gnus-article-hide-text, gnus-article-unhide-text)
26975         (gnus-article-unhide-text-type): Remove special handling of
26976         `intangible' since that property is not used any more.
26977         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
26979 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
26981         Use the VC root in `log-edit-listfun'
26982         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
26983         `log-edit-listfun'.
26985 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
26987         Fix description of Unix time, mention new function.
26988         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
26989         Unix time.
26990         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
26991         (Basic Operations on Units): Mention `calc-convert-exact-units'.
26993 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26995         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
26997 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
26999         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
27000         Don't add newline after the last entry.
27002 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
27004         css-mode.el: Add "not" pseudo-class
27005         (Bug#20267)
27006         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
27007         list of CSS pseudo-classes.
27009 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
27011         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
27013 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
27015         Stop messing with the EMACS env var
27016         * doc/emacs/misc.texi (Interactive Shell): Remove description of
27017         EMACS env var.
27019 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
27021         Adapt 'make change-history' to coding cookie
27022         * Makefile.in (change-history): Adjust to change of format of
27023         ChangeLog file, which now has a coding cookie before an indented
27024         copyright notice.
27026 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
27028         Adapt 'make change-history' to coding cookie
27029         * Makefile.in (change-history): Adjust to change of format of
27030         ChangeLog file, which now has a coding cookie before an indented
27031         copyright notice.
27033         gitlog-to-changelog coding cookie and mv -i
27034         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
27035         for copyright notice prototype, so that we get a proper "coding:"
27036         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
27037         existing ChangeLog.  Problems reported by Eli Zaretskii in:
27038         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
27040         Merge from gnulib
27041         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
27042         2015-04-09 gitlog-to-changelog: port to MS-Windows
27044 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
27046         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
27047         (Bug#20212)
27049 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
27051         Stop messing with the EMACS env var
27052         (Bug#20202)
27053         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
27054         * lisp/comint.el (comint-exec-1):
27055         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
27056         * lisp/progmodes/compile.el (compilation-start): Same and bring
27057         INSIDE_EMACS's format in line with other users.
27059         css-mode.el (css-smie-rules): Fix indentation after complex selectors
27060         (Bug#20282)
27061         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
27062         inner structure of selectors.
27064 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27066         python.el: Indent docstring lines to base-indent
27067         (Bug#19595)
27068         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
27069         an initial patch.
27070         * lisp/progmodes/python.el
27071         (python-indent-context): Add :inside-docstring context.
27072         (python-indent--calculate-indentation): Handle :inside-docstring.
27073         (python-indent-region): Re-indent docstrings.
27074         * test/automated/python-tests.el (python-indent-region-5)
27075         (python-indent-inside-string-2): Fix tests.
27077         python.el: Increase native completion robustness
27078         (Bug#19755)
27079         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
27080         this and providing useful ideas.
27081         * lisp/progmodes/python.el
27082         (python-shell-completion-native-output-timeout): Increase value.
27083         (python-shell-completion-native-try-output-timeout): New var.
27084         (python-shell-completion-native-try): Use it.
27085         (python-shell-completion-native-setup): New readline setup avoids
27086         polluting current context, ensures output when no-completions are
27087         available and includes output end marker.
27088         (python-shell-completion-native-get-completions): Trigger with one
27089         tab only.  Call accept-process-output until output end is found or
27090         python-shell-completion-native-output-timeout is exceeded.
27092 2015-04-08  Samer Masterson  <samer@samertm.com>
27094         * lisp/eshell: Make backslash a no-op in front of normal chars
27095         (Bug#8531)
27096         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
27097         (eshell-parse-backslash): Return escaped character after backslash
27098         if it is special.  Otherwise, if the backslash is not in a quoted
27099         string, ignore the backslash and return the character after; if
27100         the backslash is in a quoted string, return the backslash and the
27101         character after.
27102         * test/automated/eshell.el (eshell-test/escape-nonspecial)
27103         (eshell-test/escape-nonspecial-unicode)
27104         (eshell-test/escape-nonspecial-quoted)
27105         (eshell-test/escape-special-quoted): Add tests for new
27106         `eshell-parse-backslash' behavior.
27108 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
27110         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
27111         after the file name.
27112         (Bug#20276)
27114 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
27116         Minor quoting etc. fixes to Emacs manual
27117         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
27118         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
27119         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
27120         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
27121         * doc/emacs/indent.texi, doc/emacs/macos.texi:
27122         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
27123         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
27124         * doc/emacs/search.texi, doc/emacs/trouble.texi:
27125         * doc/emacs/vc1-xtra.texi:
27126         Use American-style double quoting in ordinary text,
27127         and quote 'like this' when single-quoting in ASCII text.
27128         Also, fix some minor spacing issues.
27130         Minor quoting etc. fixes to elisp intro
27131         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
27132         American-style double quoting in ordinary text.  In ASCII text,
27133         consistently quote 'like this' instead of `like this', unless
27134         Emacs requires the latter.
27136 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
27138         * CONTRIBUTE: Mention log-edit-insert-changelog.
27140         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
27142 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
27144         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
27146 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
27148         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
27149         Fix inheritance of initargs.  (Bug#20270)
27151 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
27153         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
27154         while dowloading information.
27156         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
27157         (package--ensure-init-file): Check file contents before visiting.
27158         (package-initialize): Call it.
27159         (package-install-from-buffer, package-install): Don't call it.
27161 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
27163         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
27164         (Bug#17517)
27166 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
27168         * lisp/net/tramp-cache.el (tramp-flush-file-property):
27169         Fix nasty scoping bug.
27171 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
27173         Add notice to visual commands section
27174         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
27175         such as git call less with its -F option which omits pagination if
27176         the contents is less than one page long.  This interferes with
27177         eshell's visual (sub-)commands.
27179 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
27181         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
27182         environment variable expansion in file names.  (Bug#19839)
27184 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
27186         Prefer double-quote to accent-grave in man pages
27188 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27190         (Bug#20257)
27191         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
27193 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
27195         Update etc/PROBLEMS.
27196         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
27197         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
27198         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
27199         respectively); other minor updates and tweaks.  (Bug#20011)
27201 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
27203         Add doc strings for some Isearch state vars
27204         * lisp/misearch.el (multi-isearch-buffer-list)
27205         (multi-isearch-file-list): Add doc strings.
27206         (Bug#20232)
27208 2015-04-07  Alan Mackenzie  <acm@muc.de>
27210         Always mark "<" and ">" in #include directives with text properties.
27211         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
27212         "anchored matcher" with an invocation of
27213         c-make-font-lock-search-function to allow fontification when there's
27214         no trailing space on an "#include <..>" line.
27216 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
27218         Generate a ChangeLog file from commit logs
27219         * .gitignore: Add 'ChangeLog'.
27220         * build-aux/gitlog-to-changelog: New file, from Gnulib.
27221         * build-aux/gitlog-to-emacslog: New file.
27222         * CONTRIBUTE: Document the revised workflow.
27223         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
27224         instead of just special cases.
27225         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
27226         (ChangeLog, unchanged-history-files, change-history)
27227         (change-history-commit): New rules.
27228         * admin/admin.el (make-manuals-dist--1):
27229         Don't worry about doc/ChangeLog.
27230         * admin/authors.el: Add a FIXME.
27231         * admin/make-tarball.txt:
27232         * lisp/calendar/icalendar.el:
27233         * lisp/gnus/deuglify.el:
27234         * lisp/obsolete/gulp.el:
27235         * lwlib/README:
27236         Adjust to renamed ChangeLog history files.
27237         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
27238         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
27239         Remove obsolete discussion of merging ChangeLog files.
27240         New section "Maintaining ChangeLog history".
27241         * build-aux/git-hooks/pre-commit:
27242         Reject attempts to commit files named 'ChangeLog'.
27243         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27244         * make-dist: Make and distribute top-level ChangeLog if there's a
27245         .git directory.  Distribute the new ChangeLog history files
27246         instead of scattered ChangeLog files.  Distribute the new files
27247         gitlog-to-changelog and gitlog-to-emacslog.
27248         (Bug#19113)
27250         Rename ChangeLogs for gitlog-to-changelog
27251         This patch was implemented via the following shell commands:
27252         find * -name ChangeLog |
27253         sed 's,.*,git mv & &.1,
27254         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
27255         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
27256         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
27257         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
27258         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
27259         sh
27260         git commit -am"[this commit message]"
27262 This file records repository revisions from
27263 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
27264 commit 4feb9621980f9534e920a8438e5776e98eefb752 (inclusive).
27265 See ChangeLog.1 for earlier changes.
27267 ;; Local Variables:
27268 ;; coding: utf-8
27269 ;; End:
27271   Copyright (C) 2015-2016 Free Software Foundation, Inc.
27273   This file is part of GNU Emacs.
27275   GNU Emacs is free software: you can redistribute it and/or modify
27276   it under the terms of the GNU General Public License as published by
27277   the Free Software Foundation, either version 3 of the License, or
27278   (at your option) any later version.
27280   GNU Emacs is distributed in the hope that it will be useful,
27281   but WITHOUT ANY WARRANTY; without even the implied warranty of
27282   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27283   GNU General Public License for more details.
27285   You should have received a copy of the GNU General Public License
27286   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.