]> code.delx.au - gnu-emacs/blob - ChangeLog.2
; Some ChangeLog fixes. It remains a complete mess.
[gnu-emacs] / ChangeLog.2
1 2016-01-09 Andrew Hyatt <ahyatt@gmail.com>
2
3 Adding example replies to bug-triage.
4
5 * admin/notes/bug-triage: Added example replies. Also, as requested,
6 making the process notes into more of a checklist.
7
8 2016-01-08 Andrew Hyatt <ahyatt@gmail.com>
9
10 Rename the notes/admin/triage file to bug-triage.
11
12 * CONTRIBUTE: Change reference to the triage file name.
13 * admin/notes/triage: Rename file to admin/notes/bug-triage.
14
15 2016-01-07 Glenn Morris <rgm@gnu.org>
16
17 Allow creation of loaddefs files without timestamps.
18
19 * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
20 (autoload-generate-file-autoloads, update-directory-autoloads):
21 If autoload-timestamps is nil, write "t" instead of file timestamp.
22 (autoload-find-destination, update-directory-autoloads):
23 If timestamp is "t", use the modtime of the output file instead.
24
25 2016-01-06 Glenn Morris <rgm@gnu.org>
26
27 Doc tweaks.
28
29 * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
30 * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
31 (calendar-iso-from-absolute):
32 * lisp/calendar/cal-tex.el (cal-tex-comment):
33 * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
34
35 2016-01-06 Glenn Morris <rgm@gnu.org>
36
37 Build tweaks related to tags files.
38
39 * lib-src/Makefile.in (tagsfiles): New variable.
40 (TAGS): Also depend on the source files. Use our own etags program.
41 * lisp/Makefile.in (ETAGS): Add EXEEXT.
42 (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
43 Remove.
44 (tagsfiles): New, replacing lisptagsfiles1 etc.
45 Remove irrelevant source files here rather than in the TAGS rule.
46 (${ETAGS}): New rule.
47 (TAGS): Also depend on the etags executable.
48 * lwlib/Makefile.in (EXEEXT): New, set by configure.
49 (ETAGS): Add EXEEXT.
50 (${ETAGS}): New rule.
51 (ctagsfiles): Use "wildcard".
52 (TAGS): Also depend on the etags executable.
53 * nt/Makefile.in (ETAGS, tagsfiles): New variables.
54 (${ETAGS}): New rule.
55 (TAGS): Fix dependencies.
56 * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
57 (ETAGS): New variable, replacing $TAGS. Use our own etags program.
58 Remove "-t" argument.
59 (${ETAGS}): New rule.
60 (tagsfiles): New variable.
61 (TAGS): New rule, with proper dependencies.
62 * src/Makefile.in (ETAGS): Add EXEEXT. Add a build rule.
63 (ctagsfiles1, ctagsfiles2): Use "wildcard".
64 (ctagsfiles3): Remove.
65 (TAGS): Depend on etags.
66 (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
67 directories decide if updates are needed.
68
69 2016-01-06 Glenn Morris <rgm@gnu.org>
70
71 * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
72
73 2016-01-06 Glenn Morris <rgm@gnu.org>
74
75 * test/lisp/emacs-lisp/package-tests.el
76
77 (package-test-macro-compilation): Fixup branch merge.
78
79 2016-01-05 Eli Zaretskii <eliz@gnu.org>
80
81 Fix fallout from merging emacs-25 branch in test/
82
83 * .gitignore: Update for the new place of biditest.txt.
84 * test/automated/: Directory removed. All files moved to their
85 proper places.
86 * test/etags/: Directory removed. All files moved to their proper
87 places.
88 * test/automated/url-parse-tests.el: File removed; it was an exact
89 copy of the same file in test/lisp/url/.
90 * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
91
92 2016-01-04 Paul Eggert <eggert@cs.ucla.edu>
93
94 Spelling fixes.
95
96 2016-01-04 Daniel Colascione <dancol@dancol.org>
97
98 Let users disable unsafe signal handling code
99
100 * src/keyboard.c (syms_of_keyboard): New user variables
101 `attempt-stack-overflow-recovery' and
102 `attempt-orderly-shutdown-on-fatal-signal'.
103 * src/sysdep.c (stack_overflow): Check
104 `attempt-stack-overflow-recovery'.
105 * src/emacs.c (terminate_due_to_signal): Check
106 `attempt-orderly-shutdown-on-fatal-signal'.
107
108 2016-01-03 Michael Albinus <michael.albinus@gmx.de>
109
110 * configure.ac: Add error message for gfile on Nextstep.
111
112 2016-01-03 John Wiegley <johnw@newartisans.com>
113
114 Merge branch 'emacs-25-merge'
115
116 2016-01-02 Vincent Belaïche <vincentb1@users.sourceforge.net>
117
118 Align textually on fix done for emacs-25 branch for bug#21054
119
120 * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
121 and useless `(if t ...)' in order to align textually on fix done for
122 emacs-25 branch for bug#21054.
123
124 2016-01-02 K. Handa <handa@gnu.org>
125
126 support rendering of wider range of combinging characters by ftfont backend
127
128 * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
129 supports rendering of combining characters, call
130 font-shape-gstring.
131
132 * src/font.c (Ffont_get): Handle `combining-capability' property.
133 (syms_of_font): New symbol ":combining-capability'.
134
135 * src/font.h (struct font_driver): New member combining_capability.
136
137 * src/ftfont.c: Include "category.h".
138 (ftfont_driver): Initialize combining_capability to
139 ftfont_combining_capability.
140 (ftfont_shape_by_flt): If OTF is null, try to find a suitable
141 FLT in advance.
142 (ftfont_combining_capability): New function.
143
144 2016-01-01 Andrew Hyatt <ahyatt@gmail.com>
145
146 Add notes on bug triage procedure
147
148 * CONTRIBUTE: In section on the issue tracker, point to new triage file.
149 * admin/notes/triage: New file explaining triage procedure.
150
151 2015-12-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
152
153 Correct ses-rename-cell cursor-intangible text prop updating.
154
155 There were two problems:
156
157 - First ses-rename-cell has to work when called non interactively
158 (with non-nil CELL argument), so in this case the start pos of
159 put-text-property cannot be plainly (point), you need a
160 ses-goto-print call before
161
162 - Second, the range itself was computed erronously, only the first
163 char was affected instead of the full cell width. This was not
164 noticeable prior to changes (Deprecate `intangible' and
165 `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
166
167 * lisp/ses.el (ses-rename-cell): Correct computation of position range
168 to which the 'cursor-intangible text property has to be set to cell
169 new name.
170
171 2015-12-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
172
173 Don't fake empty cells value by "" when printing with a lambda.
174
175 When using a lambda expression printer function the user should be
176 free to format differently a really empty cell, ie. containing nil,
177 from a cell containing an empty string "".
178
179 * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
180 in the case of a lambda expression printer function.
181
182 * ses.texi (Printer functions): Add example and description about
183 lambda expression printer function handling all the possible values,
184 including unexpected ones.
185
186 2015-12-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
187
188 Quick temporary hack to fix curcell refreshing.
189
190 The problem was caused by change: 2015-04-13 Deprecate `intangible'
191 and `point-entered' properties. The problem is that this change has
192 removed the (setq ses--curcell t) setting in the ses-command-hook
193 function.
194
195 * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
196 a condition to call function `ses-set-curcell'. Comment this as a quick
197 temporary hack to make it work, as I don't know yet whether a definite
198 correction would be to make the ses-set-curcell at every ses-check-curcell,
199 or to revert to the previous approach, ie marking ses--curcell as out-of-date
200 at every potentially cursor motion command.
201
202 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
203
204 Restrictive URL checking tweaks
205
206 * lisp/net/eww.el (eww): Check whether the domain is
207 restrictive instead of the string
208 (http://македонија.icom.museum is restrictive even if each
209 part is from a different script).
210
211 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
212
213 New function `puny-highly-restrictive-domain-p'
214
215 * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
216 (puny-highly-restrictive-domain-p): New function.
217
218 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
219
220 eww build fix (require puny)
221
222 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
223
224 Transform non-restrictive domains to punycode for display
225
226 * lisp/net/eww.el (eww): Check whether the domain is Highly
227 Restrictive in the Unicode IDNA sense.
228
229 2015-12-30 John Wiegley <johnw@newartisans.com>
230
231 Merge emacs-25 into master (using imerge)
232
233 2015-12-29 Eli Zaretskii <eliz@gnu.org>
234
235 Fix typos in CC Mode manual
236
237 * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
238 typos. (Bug#22267)
239
240 2015-12-29 Eli Zaretskii <eliz@gnu.org>
241
242 Avoid assertion violations in compact_font_cache_entry
243
244 * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
245 avoid assertion violation in ASIZE. (Bug#22263)
246
247 2015-12-29 Eli Zaretskii <eliz@gnu.org>
248
249 Fix filling text with bidirectional characters in shr.el
250
251 * lisp/net/shr.el (shr-insert-document): Bind
252 bidi-display-reordering to nil while filling lines. This is
253 required for when a line includes characters whose bidi
254 directionality is opposite to the base paragraph direction,
255 because columns are counted in the logical order. (Bug#22250)
256
257 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
258
259 Further Unicode restrictive fixups
260
261 * puny.el (puny-highly-restrictive-p): Include the extra
262 identifier characters from table 3.
263
264 2015-12-29 Martin Rudalics <rudalics@gmx.at>
265
266 * src/xfns.c (x_create_tip_frame): Process alpha parameter.
267
268 2015-12-29 Michael Albinus <michael.albinus@gmx.de>
269
270 Sync with Tramp 2.2.13
271
272 * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
273
274 * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
275 Use `tramp-compat-funcall'.
276
277 * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
278 Make `split-string' call compatible with older Emacsen.
279
280 * lisp/net/trampver.el: Change version to "2.2.13.25.1".
281
282 2015-12-29 Lambda Coder <sjLambda@gmail.com>
283
284 * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
285
286 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
287
288 Mention that tls.el is secure by default, and will fail
289
290 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
291
292 Make tls.el use trustfiles by default
293
294 * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
295 (open-tls-stream): Insert the trustfile by looking at
296 `gnutls-trustfiles'.
297
298 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
299
300 Refactor out gnutls-trustfiles
301
302 * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
303
304 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
305
306 Remove --insecure from gnutls-cli invocation
307
308 * tls.el (tls-program): Default to using secure TLS
309 connections (bug#19284).
310
311 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
312
313 Add a new function to say whether a string is restrictive
314
315 * puny.el (puny-highly-restrictive-p): New function.
316
317 2015-12-28 Paul Eggert <eggert@cs.ucla.edu>
318
319 Spelling fix
320
321 2015-12-28 Paul Eggert <eggert@cs.ucla.edu>
322
323 Port report-emacs-bug to deterministic builds
324
325 * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
326 recent "built on" change to deterministic builds where
327 emacs-build-system will be nil. See:
328 http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
329
330 2015-12-28 Jose A. Ortega Ruiz <jao@gnu.org> (tiny change)
331
332 Fix URL auth error message
333
334 * lisp/url/url-http.el (url-http-handle-authentication): Make the error
335 message more correct (bug#20069).
336
337 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
338
339 Mention the new puny.el library
340
341 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
342
343 IDNA-related fixes for the URL library
344
345 * lisp/url/url-http.el (url-http-create-request): IDNA-encode
346 the Host: header.
347
348 * lisp/url/url-util.el (url-encode-url): Don't hex-encode
349 domain names, but leave them as UTF-8, so that they can be
350 IDNA-encoded later when contacting the host.
351
352 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
353
354 IDNA-encode all domain names in `open-network-stream'
355
356 * network-stream.el (open-network-stream)
357 (network-stream-open-plain, network-stream-open-starttls):
358 IDNA-encode all domain names, if needed.
359
360 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
361
362 Fix puny-encoding all-non-ASCII domains
363
364 * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
365
366 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
367
368 * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
369
370 2015-12-28 Tom Tromey <tom@tromey.com>
371
372 set :safe on css-indent-offset
373
374 * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
375
376 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
377
378 * eww.el (eww-mode): Remove superfluous bidi reset.
379
380 2015-12-28 James Stout <james.wolf.stout@gmail.com> (tiny change)
381
382 Make chunked encoding trailer detection more compliant
383
384 * lisp/url/url-http.el
385 (url-http-chunked-encoding-after-change-function): Make
386 trailer detection more compliant (bug#16345).
387
388 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
389
390 Reconnect erc even on server errors
391
392 * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
393 reconnect even if a server error has occurred (bug#18527).
394
395 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
396
397 Fix punycode short circuit logic
398
399 * puny.el (puny-encode-domain): Fix short-circuit logic.
400
401 2015-12-28 Martin Rudalics <rudalics@gmx.at>
402
403 Fix Bug#10873 in `report-emacs-bug'
404
405 * lisp/mail/emacsbug.el (report-emacs-bug): If
406 `report-emacs-bug-no-explanations' is nil, make sure we can show
407 mail and warnings buffer on this frame (Bug#10873).
408
409 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
410
411 IDNA speed up
412
413 * puny.el (puny-encode-domain): Make the common non-IDNA case faster
414
415 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
416
417 Add IDNA domain encode/decode functions
418
419 * puny.el (puny-decode-domain): New function.
420 (puny-encode-domain): Ditto.
421 (puny-decode-digit): Fix digit decoding error.
422
423 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
424
425 Rename idna.el to puny.el
426
427 * puny.el: Renamed from idna.el to avoid name collisions with
428 the external idna.el library.
429
430 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
431
432 Always reset the bidi direction
433
434 * eww.el (eww-display-html): Always reset the bidi direction
435 to `left-to-right' (bug#22257).
436
437 2015-12-28 Alan Mackenzie <acm@muc.de>
438
439 Allow line comments ending with escaped NL to be continued to the next line.
440
441 Use this in C, C++, and Objective C Modes. Fixes bug#22246
442
443 * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
444 (forw-comment, back-comment): On encountering an end of comment character,
445 test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
446
447 * doc/lispref/syntax.texi (Control Parsing): Describe
448 `comment-end-can-be-escaped'.
449
450 * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
451
452 * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
453
454 2015-12-28 Katsumi Yamaoka <yamaoka@jpl.org>
455
456 lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
457
458 * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
459 Don't use split-string with 4th arg for old Emacsen compatibility.
460
461 2015-12-27 Dmitry Gutov <dgutov@yandex.ru>
462
463 Rename project-library-roots to project-external-roots
464
465 * lisp/progmodes/project.el (project-library-roots): Rename to
466 project-external-roots.
467 (project-library-roots-function): Rename to
468 project-vc-external-roots-function. Only use it in the VC
469 backend, for now. Update project-external-roots accordingly.
470 (project-vc-library-roots): Remove.
471 (project-or-libraries-find-regexp):
472 Rename to project-or-external-find-regexp.
473
474 * lisp/progmodes/elisp-mode.el (elisp-library-roots):
475 Rename to elisp-load-path-roots.
476
477 * lisp/progmodes/etags.el (etags-library-roots): Remove. Use
478 an anonymous function for the default value of
479 project-vc-external-roots-function.
480
481 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
482
483 * idna.el (idna-decode-string-internal): Implement decoding.
484
485 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
486
487 Further IDNA tweaks
488
489 (idna-encode-string): Make idna-encode-string safe for
490 non-ASCII use.
491
492 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
493
494 Clean up the code slightly
495
496 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
497
498 Added basic idna encoding support
499
500 * lisp/net/idna.el: New file.
501
502 2015-12-27 Vivek Dasmohapatra <vivek@etla.org>
503
504 Disconnection fixes for erc
505
506 * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
507 reconnect if the user has disconnected explicitly (bug#4589).
508
509 2015-12-27 Thomas Riccardi <riccardi.thomas@gmail.com> (tiny change)
510
511 Further erc asynch fixes
512
513 * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
514 erc-server-connect to return even if the connection is not
515 ready. Then erc-open and erc-server-reconnect do the
516 same. (bug#5650).
517
518 2015-12-27 Vivek Dasmohapatra <vivek@etla.org>
519
520 Make erc connect asynchronously
521
522 * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
523 reconnect asynchronously.
524
525 * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
526
527 2015-12-27 Deniz Dogan <deniz@dogan.se>
528
529 Clear erc user list upon disconnection
530
531 * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
532 lists upon disconnection. This prevents invalid channel
533 user lists when reconnecting (bug#10947).
534
535 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
536
537 Don't bug out in erc after waking from sleep
538
539 * erc-backend.el (erc-server-send-ping): If the server has
540 closed connection, this may already have been detected and
541 `erc-server-last-received-time' has been set to nil (bug#13608).
542
543 2015-12-27 David Edmondson <dme@dme.org>
544
545 Proxy error in erc with multiple clients
546
547 * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
548 generated when multiple IRC clients talk to a single IRC proxy
549 (bug#19034).
550
551 2015-12-27 Dima Kogan <dima@secretsauce.net>
552
553 Ensure that we don't have several timers in erc
554
555 * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
556 for existing timers in the alist before adding new ones. If a
557 timer already exists, it is cancelled and
558 overwritten. (bug#19292).
559
560 2015-12-27 Jens Lechtenboerger <jens.lechtenboerger@fsfe.org>
561
562 * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
563 (bug#18718).
564
565 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
566
567 * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
568 at the start of the buffer, not at the end (bug#20496).
569
570 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
571
572 * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
573
574 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
575
576 Don't join erc channels doubly
577
578 * erc-join.el (erc-autojoin-channels): Don't join channels
579 more than once (if you have several nicks) (bug#20695).
580
581 2015-12-27 Eli Zaretskii <eliz@gnu.org>
582
583 Avoid leaving "ghost" of mouse pointer on MS-Windows
584
585 * src/w32term.c (frame_set_mouse_pixel_position):
586 * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
587 disable "mouse trails" when moving the mouse pointer. (Bug#22247)
588 * src/w32term.c (frame_set_mouse_pixel_position): Include
589 w32common.h.
590
591 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
592
593 * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
594
595 2015-12-27 Jens Lechtenboerger <jens.lechtenboerger@fsfe.org>
596
597 Identify unsafe combinations of Bcc and encryption
598
599 * lisp/gnus/gnus-util.el (gnus-subsetp): New function
600 * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
601 * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
602
603 2015-12-27 Krzysztof Jurewicz <krzysztof.jurewicz@gmail.com> (tiny change)
604
605 Fix auth source lookups from erc with port numbers
606
607 * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
608 numbers (bug#20541).
609
610 2015-12-27 Fran Litterio <flitterio@gmail.com>
611
612 Run erc-kill-channel-hook always on exit
613
614 * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
615 when erc-kill-queries-on-quit is set (bug#21187).
616
617 2015-12-26 Paul Eggert <eggert@cs.ucla.edu>
618
619 Spelling fix
620
621 * test/automated/url-parse-tests.el:
622 (url-generic-parse-url/same-document-reference):
623 Rename from url-generic-parse-url/same-decument-reference.
624
625 2015-12-26 Paul Eggert <eggert@cs.ucla.edu>
626
627 Reword initial *scratch* for brevity, appearance
628
629 * lisp/startup.el (initial-scratch-message):
630 Reword to avoid apostrophes, and to make it shorter.
631 See the thread starting in:
632 http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
633
634 2015-12-26 Leo Liu <sdl.web@gmail.com>
635
636 Add ert-deftest to lisp-mode.el
637
638 * lisp-mode.el (lisp-imenu-generic-expression,
639 lisp-el-font-lock-keywords-1): Add ert-deftest.
640
641 2015-12-26 Lars Ingebrigtsen <larsi@gnus.org>
642
643 Mark imap changes as not needing doc changes
644
645 * imap.el (imap-ssl-open): Remove
646
647 2015-12-26 Lars Ingebrigtsen <larsi@gnus.org>
648
649 Use built-in encryption in imap.el
650
651 * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
652 (imap-starttls-open): Use open-network-stream instead of starttls.el.
653 (imap-tls-open): Use open-network-stream instead of tls.el.
654
655 2015-12-26 Eli Zaretskii <eliz@gnu.org>
656
657 Don't try using /bin/sh in artist.el on MS-Windows
658
659 * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
660 New function.
661 (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
662 (Bug#20167)
663
664 2015-12-26 Wolfgang Jenkner <wjenkner@inode.at>
665
666 Always define gmalloc etc. in src/gmalloc.c
667
668 This is a work-around to prevent the compiler from using semantic
669 knowledge about malloc for optimization purposes. E.g., gcc 5.2
670 with -O2 replaces most of calloc's definition by a call to calloc;
671 see Bug#22085.
672 * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
673 (aligned_alloc, free): Do not undef. Instead, define these as
674 functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
675
676 2015-12-26 Eli Zaretskii <eliz@gnu.org>
677
678 Fix documentation of browse-url browser-related functions
679
680 * lisp/net/browse-url.el (browse-url)
681 (browse-url-default-browser, browse-url-default-windows-browser)
682 (browse-url-default-macosx-browser, browse-url-chromium)
683 (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
684 and NEW-WINDOW arguments in these functions. (Bug#19421)
685
686 2015-12-26 Paul Eggert <eggert@cs.ucla.edu>
687
688 Propagate Bug#14412 fix to backtrace_eval_unrewind
689
690 * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
691 becomes accurate again. This shouldn’t affect behavior.
692 (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
693
694 2015-12-26 Eli Zaretskii <eliz@gnu.org>
695
696 Don't produce non-ASCII characters in *scratch*
697
698 * lisp/startup.el (initial-scratch-message): Quote apostrophes to
699 avoid producing non-ASCII characters in the *scratch* buffer's
700 commentary.
701
702 2015-12-26 Eli Zaretskii <eliz@gnu.org>
703
704 Document changes in 'compare-windows'
705
706 * lisp/vc/compare-w.el (compare-windows-removed)
707 (compare-windows-added): Doc fix.
708
709 * doc/emacs/files.texi (Comparing Files): Document the changes in
710 window selection by 'compare-windows'.
711
712 2015-12-26 Eli Zaretskii <eliz@gnu.org>
713
714 Document 'vc-annotate-background-mode'
715
716 * doc/emacs/maintaining.texi (Old Revisions): Document
717 'vc-annotate-background-mode'.
718
719 2015-12-26 Eli Zaretskii <eliz@gnu.org>
720
721 Document 'vc-region-history'
722
723 * doc/emacs/maintaining.texi (VC Change Log): Document
724 'vc-region-history'.
725
726 2015-12-26 Eli Zaretskii <eliz@gnu.org>
727
728 Improve documentation of 'vc-push'
729
730 * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
731 improve the documentation of 'vc-push'.
732
733 * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
734
735 2015-12-26 Alain Schneble <a.s@realize.ch>
736
737 Include the tests for the URL parsing fixes
738
739 2015-12-26 Eli Zaretskii <eliz@gnu.org>
740
741 Document 'url-user-agent'.
742
743 * lisp/url/url-http.el (url-user-agent): Move from here...
744 * lisp/url/url-vars.el (url-user-agent): ...to here. This is to
745 keep all the URL defcustoms in one place, and also have it defined
746 whenever the URL library is loaded.
747
748 * doc/misc/url.texi (Customization): Document 'url-user-agent'.
749
750 2015-12-26 Eli Zaretskii <eliz@gnu.org>
751
752 Document protocols supported by URL library via Tramp
753
754 * doc/misc/url.texi (Tramp): New node, describes the URL schemes
755 supported via Tramp.
756 (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
757 Tramp.
758
759 2015-12-26 Eli Zaretskii <eliz@gnu.org>
760
761 Document changes in Shell-script mode
762
763 * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
764 the 'sh-shell' file-local variable.
765 (top level): Add an auto-load form to avoid byte-compiler warning
766 about 'comint-send-string'.
767
768 2015-12-26 Eli Zaretskii <eliz@gnu.org>
769
770 Fix documentation of 'ses-define-local-printer'
771
772 * doc/misc/ses.texi (Printer functions): Fix whitespace between
773 sentences and punctuation. Add an index entry for
774 'ses-define-local-printer'.
775
776 2015-12-26 Shakthi Kannan <shakthimaan@gmail.com>
777
778 Document 'ert-summarize-tests-batch-and-exit'
779
780 * doc/misc/ert.texi (Running Tests in Batch Mode): Document
781 'ert-summarize-tests-batch-and-exit'.
782
783 2015-12-26 Eli Zaretskii <eliz@gnu.org>
784
785 Avoid assertion violation in unbind_to
786
787 * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
788 if we get here with an object that is not a symbol. (Bug#14412)
789
790 2015-12-25 Andreas Schwab <schwab@linux-m68k.org>
791
792 Don't treat /foo/bar:mumble as ange-ftp address
793 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
794 only in the first component. (bug#5362)
795
796 2015-12-25 Eli Zaretskii <eliz@gnu.org>
797
798 Make sure *scratch* etc. use forward slashes in its default-directory
799
800 * lisp/startup.el (normal-top-level): On MS-Windows, convert
801 backslashes to forward slashes while decoding default-directory
802 of the initially-created buffers.
803
804 2015-12-25 Eli Zaretskii <eliz@gnu.org>
805
806 Restore info about the build host in bug reports
807
808 * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
809 which Emacs was built. This is important information for
810 investigating bug reports reported by users who don't build their
811 Emacs.
812
813 2015-12-25 Eli Zaretskii <eliz@gnu.org>
814
815 Fix bootstrap broken by changes related to OS X file-name encoding
816
817 * lisp/international/ucs-normalize.el (eval-when-compile): Make
818 sure char-code-property-alist includes elements that allow access
819 to 'decomposition' and 'canonical-combining-class' Unicode
820 properties, as compiling ucs-normalize.el requires that.
821 * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
822 only of charprop.el was already loaded.
823
824 * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
825 New order-only dependency.
826
827 2015-12-25 Leo Liu <sdl.web@gmail.com>
828
829 * ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
830
831 2015-12-25 Michael Albinus <michael.albinus@gmx.de>
832
833 Make tramp-test29-vc-registered more robust
834
835 * test/automated/tramp-tests.el (tramp-test29-vc-registered):
836 Move `bzr' case down. Skip test when `vc-create-repo' fails.
837 Remove instrumentation.
838
839 2015-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
840
841 * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
842
843 2015-12-23 Katsumi Yamaoka <yamaoka@jpl.org>
844
845 Fix `gnus-union' so as to behave like `cl-union'
846
847 * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
848 Make gnus-union use `equal' to compare items in lists.
849
850 * lisp/gnus/gnus-util.el (gnus-union):
851 Make it behave like cl-union partially.
852
853 2015-12-23 Paul Eggert <eggert@cs.ucla.edu>
854
855 Fix dired.c typo with ptrdiff_t vs Lisp_Object
856
857 * src/dired.c (file_name_completion): Don't assume Lisp_Object is
858 an integer type, fixing a problem introduced in the recent fix for
859 Bug#22169.
860
861 2015-12-23 Eli Zaretskii <eliz@gnu.org>
862
863 Document default process sentinel more prominently
864
865 * doc/lispref/processes.texi (Asynchronous Processes): Mention the
866 defaults for process filter and sentinel. Provide cross-references.
867 (Process Information): Provide cross-references to where filters
868 and sentinels are described.
869 (Filter Functions): Add an index entry for "default filter".
870 (Sentinels): Add a few status messages not documented previously.
871 Resolve the "killed" confusion. Document and describe the default
872 sentinel. (Bug#22220)
873
874 2015-12-23 Eli Zaretskii <eliz@gnu.org>
875
876 Fix file-name completion on OS X
877
878 * src/dired.c (file_name_completion): Reject false matches due to
879 file-name-coding-systems that decompose characters when encoding
880 file names, by comparing decoded file names as well. (Bug#22169)
881 (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
882
883 * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
884 non-nil 'decomposed-characters' property.
885
886 2015-12-23 Anders Lindgren <andlind@gmail.com>
887
888 File-name completion of non-ASCII characters on OS X (bug#22169)
889
890 The coding system `utf-8-nfd', locally defined in ns-win.el,
891 didn't provide a :pre-write-conversion method, causing file name
892 completion of non-ASCII characters to fail. Solved by using the
893 `utf-8-hfs' coding system provided by `ucs-normalize'.
894
895 * lisp/loadup.el: Load international/ucs-normalize (when building
896 for ns).
897
898 * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
899 `utf-8-hfs' and removed the old implementation. Set `utf-8-hfs'
900 as the file name coding system.
901
902 * src/nsfns.c (ns-convert-utf8-nfd-to-nfc): Removed.
903
904 2015-12-22 Tom Tromey <tom@tromey.com>
905
906 Fix bug #18588 by making bug-reference-bug-regexp more lenient
907
908 * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
909 "bug NNNN". (Bug #18588)
910
911 2015-12-22 Tom Tromey <tom@tromey.com>
912
913 add some cl-* aliases to lisp-mode imenu
914
915 * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
916 cl-defgeneric, and cl-defmethod.
917
918 2015-12-22 Tom Tromey <tom@tromey.com>
919
920 Make a variable buffer-local
921
922 * lisp/generic-x.el (generic-rul-mode-setup-function): Make
923 font-lock-syntax-table buffer-local. (Bug #21627)
924
925 2015-12-22 Eli Zaretskii <eliz@gnu.org>
926
927 Fix decoding of text in URLs retrieved by EWW
928
929 * lisp/net/eww.el (eww-render): Pass 'charset' to
930 'eww-display-raw'. Use the value of 'last-coding-system-used', if
931 non-nil, to set 'buffer-file-coding-system' of the buffer where we
932 show the URL.
933 (eww-display-html, eww-display-raw): Decode the text correctly,
934 using the charset found in the headers, and defaulting to UTF-8.
935 If the user told us to use a specific encoding, override the
936 charset from the headers. (Bug#22222)
937
938 2015-12-22 Alan Mackenzie <acm@muc.de>
939
940 Fix a coding error in c-forward-<>-arglist-recur. Fixes bug#22156
941
942 * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
943 variable `tmp'.
944 After a failed search for a matching ">", restore point before continuing.
945
946 2015-12-22 Michael Albinus <michael.albinus@gmx.de>
947
948 Instrument Tramp tests
949
950 * test/automated/tramp-tests.el (tramp-test29-vc-registered)
951 (tramp--test-utf8): Instrument tests.
952
953 2015-12-22 Martin Rudalics <rudalics@gmx.at>
954
955 Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
956
957 * lisp/simple.el (display-message-or-buffer): Call
958 `display-buffer' with ACTION instead of NOT-THIS-WINDOW
959 (Bug#22221).
960
961 2015-12-21 Juri Linkov <juri@linkov.net>
962
963 * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
964
965 (save-places-to-alist, save-place-dired-hook):
966 Check for dired-subdir-alist. (Bug#19851)
967
968 2015-12-21 Paul Eggert <eggert@cs.ucla.edu>
969
970 Add FIXME comment re stack overflow and modules
971
972 2015-12-20 Paul Eggert <eggert@cs.ucla.edu>
973
974 Revert some recent emacs-module commentary
975
976 Most of the recently-added commentary was incorrect, due to the
977 possibility of stack overflow.
978
979 2015-12-20 Paul Eggert <eggert@cs.ucla.edu>
980
981 Spelling fix: prefer "cooperate" to "co-operate"
982
983 2015-12-20 Paul Eggert <eggert@cs.ucla.edu>
984
985 Port undo fixes to -fno-common
986
987 Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
988 * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
989 (buffer_before_last_command_or_undo):
990 Declare in keyboard.h, and define in keyboard.c,
991 instead of assuming the traditional Unix relaxed ref-def linkage.
992
993 2015-12-20 Philipp Stephani <phst@google.com>
994
995 Improve commentary for emacs-module.c
996
997 * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
998 * src/emacs-module.c (module_non_local_exit_get): Document that we
999 cannot use the current implementation.
1000 (module_is_not_nil, module_eq): Document assumptions about EQ and
1001 NILP.
1002
1003 2015-12-20 Michael Albinus <michael.albinus@gmx.de>
1004
1005 Suppress test on Mac OS X
1006
1007 * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
1008 (tramp--test-utf8): Use it.
1009
1010 2015-12-20 Alan Mackenzie <acm@muc.de>
1011
1012 Merge branch 'scratch/follow' into emacs-25
1013
1014 This allows Isearch, etc., to work well when Follow Mode is active.
1015
1016 2015-12-19 Michael Albinus <michael.albinus@gmx.de>
1017
1018 * tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
1019
1020 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1021
1022 Fix last commit
1023
1024 * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
1025 with numeric argument.
1026
1027 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1028
1029 Document new features of Rmail
1030
1031 * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
1032 Document new behavior of 'd' and 'C-d' with numeric argument.
1033 (Rmail Display): Document the rendering of HTML MIME parts.
1034
1035 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1036
1037 Improve documentation of new cl-lib functions
1038
1039 * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
1040 Fix wording.
1041
1042 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1043
1044 Document the new feature of 'minibuffer-with-setup-hook'
1045
1046 * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
1047 added to `minibuffer-setup-hook'.
1048
1049 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1050
1051 Document new features of Font Lock
1052
1053 * doc/lispref/modes.texi (Other Font Lock Variables): Document
1054 'font-lock-flush-function' and 'font-lock-ensure-function'.
1055 (Font Lock Basics): Document the basic fontification functions
1056 referenced in "Other Font Lock Variables".
1057
1058 * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
1059
1060 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1061
1062 Document new features of Rectangle mode
1063
1064 * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
1065 rectangle-mark-mode.
1066
1067 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1068
1069 Manual followup to last change
1070
1071 * doc/lispref/display.texi (Displaying Messages): Sync with the
1072 doc string. (Bug#22210)
1073
1074 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1075
1076 Clarify doc string of 'display-message-or-buffer'
1077
1078 * lisp/simple.el (display-message-or-buffer): Doc fix. Suggested
1079 by Sebastian Wiesner <swiesner@lunaryorn.com>. (Bug#22210)
1080
1081 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1082
1083 * doc/emacs/emacs.texi (Top): Update top-level menus.
1084
1085 * doc/lispref/elisp.texi (Top): Update top-level menus.
1086
1087 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1088
1089 Document how to avoid file-local variables that aren't
1090
1091 * doc/emacs/custom.texi (Specifying File Variables): Describe how
1092 to prevent Emacs from interpreting unrelated text as file-local
1093 variables. (Bug#22166)
1094
1095 2015-12-19 Dave Thomas <dave@pragprog.org> (tiny change)
1096
1097 Fix a typo in eterm-color's termcap entry
1098
1099 * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
1100 entry. (Bug#22184)
1101
1102 2015-12-19 Eli Zaretskii <eliz@gnu.org>
1103
1104 Allow 'browse-url-emacs' visit non-existent URLs
1105
1106 * lisp/url/url-handlers.el (url-insert-file-contents): Don't
1107 signal an error if VISIT is non-nil, to more faithfully emulate
1108 the behavior of 'insert-file-contents'. (Bug#22160)
1109
1110 2015-12-18 Paul Eggert <eggert@cs.ucla.edu>
1111
1112 Remove SunOS 4.x cruft
1113
1114 Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
1115 * lib-src/pop.c [sun]: Remove no-longer-needed include.
1116 * lwlib/xlwmenu.c (SUNSO41): Remove.
1117
1118 2015-12-18 Paul Eggert <eggert@cs.ucla.edu>
1119
1120 Merge from gnulib
1121
1122 This mostly commentary fixes.
1123 * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
1124 * lib/gnulib.mk: Regenerate with new gnulib-tool.
1125
1126 2015-12-18 Michael Albinus <michael.albinus@gmx.de>
1127
1128 Minor fixes in Tramp
1129
1130 * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
1131 Reorder ls arguments.
1132
1133 * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
1134
1135 2015-12-18 Michael Albinus <michael.albinus@gmx.de>
1136
1137 Make tramp a built-in package
1138
1139 * lisp/finder.el (finder-compile-keywords): Update
1140 `package--builtins' also when Version: keyword is available.
1141
1142 * lisp/net/trampver.el: Add Version: keyword.
1143 (tramp-version): Change it to "2.2.13.25.1", in order to be
1144 compatible with `version-to-list'.
1145
1146 2015-12-18 Lele Gaifax <lele@metapensiero.it>
1147
1148 * etc/tutorials/TUTORIAL.it: Update and fix typos. (Bug#22187)
1149
1150 2015-12-18 Alan Mackenzie <acm@muc.de>
1151
1152 Rename `recenter-group' to `recenter-window-group'
1153
1154 * doc/lispref/windows.texi (Textual Scrolling)
1155 * lisp/window.el (top level, recenter-group)
1156 * lisp/follow.el (follow-mode)
1157 * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
1158 `recenter-window-group' and `recenter-group-function' to
1159 `recenter-window-group-function'.
1160
1161 2015-12-18 Eli Zaretskii <eliz@gnu.org>
1162
1163 Fix vertical-motion in tabulated-list mode
1164
1165 * src/indent.c (Fvertical_motion): When moving from line beginning
1166 to point under line truncation, assume overshoot by one line only
1167 if point actually lies beyond the window's right margin.
1168 (Bug#22194)
1169
1170 2015-12-18 Martin Rudalics <rudalics@gmx.at>
1171
1172 Don't have help functions call x-display-pixel-width/-height on ttys
1173
1174 * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
1175 Don't call x-display-pixel-width/-height on ttys.
1176
1177 2015-12-17 Dmitry Gutov <dgutov@yandex.ru>
1178
1179 Use 'hg id' in vc-hg-previous-revision
1180
1181 * lisp/vc/vc-hg.el (vc-hg-previous-revision):
1182 Use 'hg id' to retrieve it (bug#22032).
1183
1184 2015-12-17 Alan Mackenzie <acm@muc.de>
1185
1186 * lisp/follow.el (follow-sit-for): Remove (it's redundant).
1187
1188 2015-12-17 Eli Zaretskii <eliz@gnu.org>
1189
1190 Fix a typo in the Emacs manual
1191
1192 * doc/emacs/trouble.texi (Sending Patches): Fix a typo. Reported
1193 by Lele Gaifax <lele@metapensiero.it>. (Bug#22193)
1194
1195 2015-12-17 Eli Zaretskii <eliz@gnu.org>
1196
1197 Fix parsing netrc entries with ports
1198
1199 * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
1200 make a list out of 't'. (Bug#22188)
1201
1202 * test/automated/auth-source-tests.el
1203 (auth-source-test-netrc-parse-entry): New test.
1204
1205 2015-12-17 Paul Eggert <eggert@cs.ucla.edu>
1206
1207 Fix typo in Doug Lea malloc configure log
1208
1209 * configure.ac (emacs_cv_var_doug_lea_malloc):
1210 Fix typo that confused the log output of 'configure'.
1211
1212 2015-12-16 Nicolas Petton <nicolas@petton.fr>
1213
1214 * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
1215
1216 2015-12-16 Alan Mackenzie <acm@muc.de>
1217
1218 * etc/NEWS: Move entry on pcase to correct section
1219
1220 (Accidentally omitted from previous commit)
1221
1222 2015-12-16 Alan Mackenzie <acm@muc.de>
1223
1224 Add documentation for changes to Show Paren mode.
1225
1226 * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
1227
1228 * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
1229 options, including the new show-paren-when-point-inside-paren and
1230 show-paren-when-point-in-periphery.
1231
1232 * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
1233 Move an entry on pcase to the Lisp Changes section.
1234
1235 2015-12-16 Eli Zaretskii <eliz@gnu.org>
1236
1237 Document Eldoc changes
1238
1239 * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
1240
1241 2015-12-16 Eli Zaretskii <eliz@gnu.org>
1242
1243 Fix invocation of Python and Guile interpreters from gdb-mi
1244
1245 * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
1246 commands for interactive Python and Guile interpreters.
1247 (gdb-send): Recognize various ways of exiting from Python and
1248 Guile interpreters and returning to GDB. For details, see
1249 http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
1250 and http://stackoverflow.com/questions/31514741.
1251
1252 2015-12-16 Paul Eggert <eggert@cs.ucla.edu>
1253
1254 Remove attempt to use C11 threads
1255
1256 C11 threads are not needed for Emacs now, and their use is causing
1257 hassles on FreeBSD 10.x. Problem reported by Ashish SHUKLA in:
1258 http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
1259 * configure.ac: Do not check for C11 threads. Remove unnecessary
1260 fiddling with CPPFLAGS when configuring pthreads.
1261 * src/emacs-module.c (main_thread, check_main_thread)
1262 (module_init): Do not worry about C11 threads.
1263
1264 2015-12-15 Michael Albinus <michael.albinus@gmx.de>
1265
1266 Set utf8 encoding with stty in Tramp
1267
1268 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1269 Move up uname check. Handle Mac OS X eol encoding. Set utf8
1270 encoding with stty.
1271
1272 2015-12-15 Alan Mackenzie <acm@muc.de>
1273
1274 Tidy up documentation associated with window groups.
1275
1276 * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
1277 Groups". Correct example function to `window-group-start'.
1278 (Window Start and End, Textual scrolling): Point to the new anchor. State
1279 that (most of) the args in window group functions have the same meaning as for
1280 the corresponding window primitives.
1281
1282 * doc/lispref/positions.texi (Screen Lines). Same as above.
1283
1284 2015-12-15 Michael Albinus <michael.albinus@gmx.de>
1285
1286 Complete last commit
1287
1288 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1289 Move uname check up. Handle Mac OS X eol encoding.
1290
1291 2015-12-15 Michael Albinus <michael.albinus@gmx.de>
1292
1293 Handle Mac OS X eol encoding in Tramp
1294
1295 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1296 Handle Mac OS X eol encoding.
1297
1298 2015-12-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1299
1300 Fix variable name typo in compute_tip_xy
1301
1302 * src/w32fns.c (compute_tip_xy):
1303 * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
1304 when `right' is integer.
1305
1306 2015-12-14 foudfou <foudil.newbie+git@gmail.com> (tiny change)
1307
1308 * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
1309
1310 2015-12-14 Tassilo Horn <tsdh@gnu.org>
1311
1312 Revert "Fix rx matcher overflow without limiting"
1313
1314 This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
1315
1316 2015-12-14 Alan Mackenzie <acm@muc.de>
1317
1318 Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
1319
1320 * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
1321 isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
1322
1323 2015-12-14 Tassilo Horn <tsdh@gnu.org>
1324
1325 Fix rx matcher overflow without limiting
1326
1327 * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
1328 change to the regexp without imposing a limit on the length of the
1329 options.
1330
1331 2015-12-14 Alan Mackenzie <acm@muc.de>
1332
1333 Enhance ispell-skip-region-alist by generating part of it at runtime.
1334
1335 * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
1336 (ispell--make-filename-or-URL-re): New functions which generate a regexp.
1337 (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
1338 (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
1339 Include the result of ispell--make-filename-or-URL-re in regexps.
1340
1341 2015-12-14 Glenn Morris <rgm@gnu.org>
1342
1343 * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
1344
1345 2015-12-14 Alan Mackenzie <acm@muc.de>
1346
1347 Replace GROUP argument in six window primitives by new functions.
1348
1349 * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
1350 * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
1351 from description of six window functions. Add in description of new functions
1352 window-group-start, window-group-end, set-window-group-start,
1353 pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
1354 together with the six variables indirecting to the pertinent group
1355 functions.
1356
1357 * src/window.c
1358 * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
1359 applies to these two files, which added the GROUP argument to six window
1360 primitives.
1361
1362 * lisp/follow.el (follow-mode): Use updated variable names for the indirected
1363 functions.
1364
1365 * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
1366 (isearch-back-into-window, isearch-lazy-highlight-new-loop)
1367 (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
1368 to window primitives (e.g. window-start) with a GROUP argument by calls to
1369 new functions (e.g. window-group-start).
1370
1371 * lisp/ispell.el (ispell-command-loop): Replace call to
1372 pos-visible-in-window-p with pos-visible-in-window-group-p.
1373
1374 * lisp/window.el (window-group-start, window-group-end)
1375 (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
1376 (selected-window-group, move-to-window-group-line): New functions.
1377 (window-group-start-function, window-group-end-function)
1378 (set-window-group-start-function, recenter-group-function)
1379 (pos-visible-in-window-group-p-function, selected-window-group-function)
1380 (move-to-window-group-line-function): New variables.
1381
1382 2015-12-14 Vitorio Miguel <vdrbandeiras@gmail.com> (tiny change)
1383
1384 * etc/tutorials/TUTORIAL.pt_BR: Fix a typo. (Bug#22165)
1385
1386 2015-12-13 Eli Zaretskii <eliz@gnu.org>
1387
1388 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
1389
1390 2015-12-13 Tassilo Horn <tsdh@gnu.org>
1391
1392 Improve regex to not trigger stack overflow
1393
1394 * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
1395 order not to trigger a stack overflow in regex matcher with unbalanced
1396 brackets (bug#22146).
1397
1398 2015-12-13 Eli Zaretskii <eliz@gnu.org>
1399
1400 Fix visiting files with raw-text
1401
1402 * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
1403 when some stuff was actually read. (Bug#22162)
1404
1405 2015-12-13 Tassilo Horn <tsdh@gnu.org>
1406
1407 Fix regex matching keyval labels
1408
1409 * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
1410 matching keyval labels.
1411
1412 2015-12-13 Michael Albinus <michael.albinus@gmx.de>
1413
1414 * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
1415
1416 ... in case of Tramp. (Bug#20821)
1417
1418 2015-12-12 Paul Eggert <eggert@cs.ucla.edu>
1419
1420 Fix performance regression with gcc -O0
1421
1422 This fixes the smaller performance hit that I noted in:
1423 https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
1424 * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
1425 * src/puresize.h (puresize_h_PURE_P)
1426 (puresize_h_CHECK_IMPURE):
1427 New macros, with the old contents of the functions.
1428 * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
1429 * src/puresize.h (PURE_P, CHECK_IMPURE):
1430 Use the new macros. Also macros, if DEFINE_KEY_OPS_AS_MACROS.
1431 * src/conf_post.h (ATTRIBUTE_UNUSED):
1432 * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
1433
1434 2015-12-12 Artur Malabarba <bruce.connor.am@gmail.com>
1435
1436 * lisp/emacs-lisp/package.el (package-unpack): Security check
1437
1438 Check that we received the package we were offered.
1439
1440 2015-12-12 Artur Malabarba <bruce.connor.am@gmail.com>
1441
1442 * lisp/emacs-lisp/package.el (package--compile): Don't activate
1443
1444 `package-unpack' takes care of all activations now (other than
1445 `package-initialize). `package--compile' now only compiles.
1446
1447 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1448
1449 Document the new bindings of <UP> and <DOWN> in the minibuffer
1450
1451 * doc/emacs/mini.texi (Minibuffer History): Describe the new
1452 bindings of <UP> and <DOWN> in the minibuffer.
1453
1454 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1455
1456 Document new features of Ido
1457
1458 * doc/misc/ido.texi (Misc): Document 'C-S-b'.
1459
1460 2015-12-12 Martin Rudalics <rudalics@gmx.at>
1461
1462 Fix frame height calculations with added menu bar on Windows (Bug#22105)
1463
1464 * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
1465 when simultaneously specifying multiple parameters for
1466 `modify-frame-parameters' that all may change the frame's size.
1467 * src/w32fns.c (x_set_menu_bar_lines): Don't set
1468 windows_or_buffers_changed here.
1469 (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
1470 with third argument false.
1471 * src/w32menu.c (set_frame_menubar): Set
1472 windows_or_buffers_changed here.
1473 * src/w32term.c (x_set_window_size): Determine third argument of
1474 AdjustWindowRect from whether the frame has a menu bar and not
1475 from whether it wants one.
1476
1477 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1478
1479 Document the change in interactive shell mode
1480
1481 * doc/emacs/misc.texi (Interactive Shell): Document that the
1482 '*shell*' buffer by default displays in a new window.
1483
1484 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1485
1486 Document new features of package.el
1487
1488 * doc/emacs/package.texi (Package Menu): Document the 'external'
1489 status and the new menu commands.
1490 (Package Installation): Document archive priorities.
1491
1492 * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
1493 (package-menu-hide-low-priority): Doc fix.
1494
1495 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1496
1497 Update and document new features of xterm support
1498
1499 * doc/emacs/frames.texi (Text-Only Mouse): Document that
1500 track-mouse is supported by newer xterm versions.
1501
1502 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1503
1504 Document new features of Prettify Mode
1505
1506 * doc/emacs/programs.texi (Misc for Programs): Document
1507 'prettify-symbols-compose-predicate' and
1508 'prettify-symbols-unprettify-at-point'.
1509
1510 * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
1511 (prettify-symbols-default-compose-p)
1512 (prettify-symbols-compose-predicate)
1513 (prettify-symbols--compose-symbol): Doc fixes.
1514
1515 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1516
1517 Document multi-mode indentation facilities
1518
1519 * doc/lispref/text.texi (Mode-Specific Indent): Document
1520 'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
1521
1522 * lisp/progmodes/prog-mode.el (prog-indentation-context)
1523 (prog-widen): Doc fixes.
1524
1525 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1526
1527 Document 'vc-refresh-state'
1528
1529 * doc/emacs/maintaining.texi (Version Control): Document
1530 'vc-refresh-state'.
1531
1532 * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
1533
1534 2015-12-12 Eli Zaretskii <eliz@gnu.org>
1535
1536 Fix echo for "C-u"
1537
1538 * src/keyboard.c (command_loop_1): Undo last change. It caused
1539 duplicate echo of C-u. (Bug#22107)
1540
1541 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1542
1543 Avoid errors when creating files under SVN in new directory
1544
1545 * lisp/vc/vc-svn.el (vc-svn-registered): Use
1546 file-accessible-directory-p, to avoid cd'ing to a non-existing
1547 directory, which signals an error on some systems. (Bug#21984)
1548 (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
1549 Use declare-function to avoid byte-compiler warnings.
1550
1551 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1552
1553 Improve Lua support in etags
1554
1555 * lib-src/etags.c (Lua_functions): Skip spaces before looking for
1556 "function".
1557
1558 * etc/NEWS: Mention improved Lua support by 'etags'.
1559
1560 * test/etags/lua-src/test.lua (test): Add tests for indented
1561 function definitions.
1562 * test/etags/ETAGS.good_1:
1563 * test/etags/ETAGS.good_2:
1564 * test/etags/ETAGS.good_3:
1565 * test/etags/ETAGS.good_4:
1566 * test/etags/ETAGS.good_5:
1567 * test/etags/ETAGS.good_6:
1568 * test/etags/CTAGS.good: Adapt to the modified Lua tests.
1569
1570 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1571
1572 Fix 'this-command-keys' wrt prefix argument
1573
1574 * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
1575 was part of this-command-keys, but not of this-single-command-keys.
1576 (Bug#22107)
1577
1578 * lisp/simple.el (internal-echo-keystrokes-prefix): Add
1579 commentary about the function's return value.
1580
1581 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1582
1583 * lisp/files.el (load-library): Doc fix. (Bug#22140)
1584
1585 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1586
1587 Improve and document Ruby support in 'etags'
1588
1589 * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
1590 (Ruby_functions): Support "module" and overloaded operators.
1591 (Ruby_help): Mention "module".
1592
1593 * test/etags/ruby-src/test.rb:
1594 * test/etags/ruby-src/test1.ruby: New files.
1595 * test/etags/Makefile (RBSRC): New tests.
1596 (SRCS): Add ${RBSRC}.
1597 * test/etags/ETAGS.good_1:
1598 * test/etags/ETAGS.good_2:
1599 * test/etags/ETAGS.good_3:
1600 * test/etags/ETAGS.good_4:
1601 * test/etags/ETAGS.good_5:
1602 * test/etags/ETAGS.good_6:
1603 * test/etags/CTAGS.good: Adapt to the new Ruby tests.
1604
1605 * doc/man/etags.1: Mention Ruby support.
1606 * etc/NEWS: Mention Ruby support.
1607
1608 2015-12-11 Xi Lu <lx@shellcodes.org>
1609
1610 Initial support for Ruby in 'etags'
1611
1612 * lib-src/etags.c <Ruby_suffixes>: New variable.
1613 (lang_names): Add an entry for Ruby.
1614 (Ruby_functions): New function. (Bug#22116)
1615
1616 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1617
1618 Clarify documentation of 'modify-frame-parameters'
1619
1620 * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
1621 PARMs" mean for 'modify-frame-parameters'.
1622
1623 * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
1624 PARMs" mean for this function. (Bug#22104)
1625
1626 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1627
1628 Fix setting buffer unibyte when reading from a device
1629
1630 * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
1631 to make a (possibly non-empty) buffer unibyte. (Bug#22096)
1632
1633 2015-12-11 Eli Zaretskii <eliz@gnu.org>
1634
1635 Clarify documentation of 'values'
1636
1637 * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
1638 updated by any evaluation commands in 'lisp-interaction-mode'.
1639 (Bug#22056)
1640
1641 2015-12-11 Anders Lindgren <andlind@gmail.com>
1642
1643 Fixed subversion vc error when opening file in new directory (bug#21984).
1644
1645 * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
1646
1647 2015-12-09 Eli Zaretskii <eliz@gnu.org>
1648
1649 Yet another fix for when point ends up in invisible text
1650
1651 * src/xdisp.c (redisplay_window): When someone forced
1652 window-start, and honoring that failed to show the cursor, try
1653 moving out of invisible text, before falling back to the middle of
1654 the window. (Bug#22098)
1655
1656 2015-12-09 Michael Albinus <michael.albinus@gmx.de>
1657
1658 Fix error in Tramp perl script for cygwin
1659
1660 * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
1661 error if file doesn't exist.
1662
1663 2015-12-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1664
1665 Remove font workaround for limited outdated versions
1666
1667 * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
1668 workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
1669
1670 2015-12-09 Anders Lindgren <andlind@gmail.com>
1671
1672 Don't add "." to load path (bug#21104)
1673
1674 When configured with --enable-locallisppath=no, which is the
1675 default for OS X, the load-path incorrectly was populated with ".".
1676
1677 * src/lread.c (init_lread): Don't call `decode_env_path' when
1678 PATH_SITELOADSEARCH is empty.
1679
1680 2015-12-08 Artur Malabarba <bruce.connor.am@gmail.com>
1681
1682 * lisp/emacs-lisp/package.el (package--with-response-buffer):
1683
1684 Search for the blank-line in the right buffer.
1685
1686 2015-12-08 Glenn Morris <rgm@gnu.org>
1687
1688 * test/automated/simple-test.el (undo-auto-boundary-timer): Update
1689 for recent change.
1690
1691 2015-12-08 Glenn Morris <rgm@gnu.org>
1692
1693 Fix some display-warning usage.
1694
1695 * lisp/files.el (hack-local-variables, hack-dir-local-variables):
1696 * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
1697 * lisp/calendar/holidays.el (calendar-holiday-list):
1698 * lisp/mail/rmailout.el (rmail-output-read-file-name):
1699 Fix display-warning usage.
1700
1701 2015-12-07 Glenn Morris <rgm@gnu.org>
1702
1703 * lisp/calendar/cal-html.el: Require diary-lib.
1704
1705 (cal-html-list-diary-entries): Handle no diary. (Bug#21994)
1706
1707 2015-12-07 Thomas Fitzsimmons <fitzsim@fitzsim.org>
1708
1709 Add Obsolete-since header to eudcb-ph.el
1710
1711 * eudcb-ph.el: Add Obsolete-since header.
1712
1713 2015-12-07 Paul Eggert <eggert@cs.ucla.edu>
1714
1715 Spelling fixes
1716
1717 * doc/misc/calc.texi (Predefined Units): Use the bland modern
1718 scientific style for spelling the units “ampere” and
1719 “angstrom” rather than the older style “Ampere” and
1720 “Ångstrom”. The latter spelling was wrong anyway (it should
1721 have been “Ångström”).
1722 * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
1723 Fix misspelling of ‘atom’ in code.
1724
1725 2015-12-07 Eli Zaretskii <eliz@gnu.org>
1726
1727 Improve documentation of kill commands
1728
1729 * lisp/simple.el (region-extract-function, delete-backward-char)
1730 (delete-forward-char, kill-region, copy-region-as-kill)
1731 (kill-ring-save): Better document the optional argument REGION in
1732 the doc strings. Mention in the doc strings that text put in the
1733 kill-ring can be filtered by 'filter-buffer-substring'.
1734
1735 * doc/lispref/text.texi (Kill Functions): Mention that functions
1736 described in this subsection can filter text they put in the
1737 kill-ring. Add a cross-reference to "Buffer Contents" and an
1738 index entry. Document the optional argument 'region' and its
1739 effect.
1740 (Bug#21315)
1741
1742 2015-12-07 Alan Mackenzie <acm@muc.de>
1743
1744 Further progress making Isearch, Ispell, Replace work with Follow Mode.
1745
1746 * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
1747 no longer exists. Add follow-post-command-hook to three special purpose
1748 hooks at setup, and remove them at tear down.
1749
1750 * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
1751 isearch-lazy-highlight-new-loop.
1752 (isearch-lazy-highlight-new-loop): Restore this function to what it previously
1753 was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
1754 it.
1755 (isearch-lazy-highlight-maybe-new-loop): function removed.
1756
1757 * lisp/replace.el: (replace-update-post-hook): New hook variable.
1758 (perform-replace): Add second (nil) argument to looking-back. Invoke
1759 replace-update-post-hook before calling replace-highlight.
1760
1761 * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
1762 (ispell-command-loop): invoke ispell-update-post-hook. Add GROUP argument to
1763 call of pos-visible-in-window-p.
1764 (ispell-display-buffer): Place *Choices* window at the top of the last window
1765 in a window group.
1766
1767 2015-12-07 Alan Mackenzie <acm@muc.de>
1768
1769 Amend doc of `mapconcat': it can take sequences, not merely strings.
1770
1771 * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
1772 to say that SEPARATOR and the results from FUNCTION may be any character
1773 sequences, not just strings. Add an @xref to "Sequences Arrays Vectors".
1774
1775 2015-12-07 Michael Albinus <michael.albinus@gmx.de>
1776
1777 Fix an utf8 problem for Tramp on BSD
1778
1779 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1780 Make lax check for utf8.
1781 (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
1782
1783 2015-12-06 Thomas Fitzsimmons <fitzsim@fitzsim.org>
1784
1785 Make eudcb-ph.el obsolete
1786
1787 * doc/misc/eudc.texi: Bump version to 1.40.0.
1788 Remove PH/QI sections and mentions.
1789 * lisp/obsolete/eudcb-ph.el: Make obsolete.
1790 * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
1791 (eudc-ph-bbdb-conversion-alist): Make obsolete.
1792 * etc/NEWS: Mention this. (Bug#21191)
1793
1794 2015-12-06 Paul Eggert <eggert@cs.ucla.edu>
1795
1796 Remove overenthusiastic eassert
1797
1798 * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
1799 previous change. It breaks on MS-Windows --with-wide-int.
1800 Problem reported by Eli Zaretskii in:
1801 http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
1802
1803 2015-12-06 Paul Eggert <eggert@cs.ucla.edu>
1804
1805 Pacify gcc -Wparentheses
1806
1807 * src/xdisp.c (row_containing_pos): Reparenthesize.
1808
1809 2015-12-06 Paul Eggert <eggert@cs.ucla.edu>
1810
1811 Port mod-test to 32-bit Emacs --without-wide-int
1812
1813 * modules/mod-test/test.el (mod-test-sum-test):
1814 Bring back the 2**29 tests, but port them to 32-bit Emacs
1815 --without-wide-int.
1816
1817 2015-12-06 Michael Albinus <michael.albinus@gmx.de>
1818
1819 Fix minor Tramp problems found on BSD
1820
1821 * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
1822 trailing slash. Quote apostrophes.
1823 (tramp-sh-handle-file-truename): Do not append trailing slash in
1824 the "ls" case.
1825 (tramp-get-ls-command-with-w-option): New defun.
1826 (tramp-do-file-attributes-with-ls)
1827 (tramp-do-directory-files-and-attributes-with-stat): Use it.
1828
1829 * test/automated/tramp-tests.el
1830 (tramp-test31-special-characters-with-perl)
1831 (tramp-test31-special-characters-with-ls)
1832 (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
1833 Suppress also readlink.
1834
1835 2015-12-06 Eli Zaretskii <eliz@gnu.org>
1836
1837 Fix cursor display when invisible text is at line beginning
1838
1839 * src/xdisp.c (redisplay_window): When scrolling fails to show
1840 point, prefer using the desired matrix if possible for finding the
1841 fallback glyph row for displaying the cursor. (Bug#22098)
1842 (row_containing_pos): Exit the loop as soon as we hit the first
1843 disabled glyph row. Otherwise we risk accessing garbled data and
1844 departing to the no-no land.
1845
1846 2015-12-06 Paul Eggert <eggert@cs.ucla.edu>
1847
1848 Improve module interface when WIDE_EMACS_INT
1849
1850 * src/emacs-module.c (plain_values): New constant.
1851 (module_nil): Now a constant.
1852 (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
1853 (syms_of_module): Use if, not #ifdef, so that both sides are
1854 checked at compile-time, and so that GCC doesn’t complain
1855 about an unused var in the typical case. Also, depend on
1856 plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
1857 that WIDE_EMACS_INT implies !USE_LSB_TAG.
1858 (value_to_lisp_bits, lisp_to_value_bits): New functions.
1859 Sign-extend integers rather than zero-extending them, as small
1860 negative integers are more likely.
1861 (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
1862 functions.
1863 (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
1864 (mark_modules): Remove. All uses removed.
1865 (lisp_to_value): Don’t assume Fcons returns a pointer aligned
1866 to GCALIGNMENT.
1867 (syms_of_module): Check that module_nil converts to Qnil.
1868 * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
1869 we prefer signed to unsigned when either will do.
1870 (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
1871 a bit better for emacs-module.c.
1872
1873 2015-12-06 Paul Eggert <eggert@cs.ucla.edu>
1874
1875 Port mod-test to x86-64 GNU/Linux running 32-bit
1876
1877 * modules/mod-test/test.el (mod-test-sum-test):
1878 Don’t attempt to match descriptions to operating systems.
1879 It didn’t work on Fedora x86-64 running a 32-bit executable,
1880 and it’s not worth the trouble anyway.
1881 Port to 32-bit platforms by removing an assumption about
1882 fixnum widths.
1883
1884 2015-12-06 Michael Albinus <michael.albinus@gmx.de>
1885
1886 Fix auto-revert-tests.el when filenotify isn't used
1887
1888 * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
1889 Make it working also when filenotify isn't used.
1890
1891 2015-12-05 Juri Linkov <juri@linkov.net>
1892
1893 * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
1894
1895 Let-bind isearch-regexp-function to nil. (Bug#22097)
1896
1897 2015-12-05 Artur Malabarba <bruce.connor.am@gmail.com>
1898
1899 * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
1900
1901 (package--with-response-buffer): NOERROR and ERROR-FORM only
1902 handle connection errors.
1903 (bad-signature): New error type.
1904 (package--check-signature-content): Use it.
1905 (package--check-signature): Properly distinguish connection errors
1906 from bad-signature errors. Do the check for
1907 `package-check-signature' `allow-unsigned' here instead of forcing
1908 the callbacks to do it. Add a new argument, UNWIND.
1909 (package--download-one-archive, package-install-from-archive):
1910 Update usage of `package--check-signature'.
1911
1912 2015-12-05 Ulf Jasper <ulf.jasper@web.de>
1913
1914 Fix Bug#22092.
1915
1916 * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
1917 Clean up inconsistent line endings. (Bug#22092)
1918 (icalendar--clean-up-line-endings): New.
1919 * test/automated/icalendar-tests.el (icalendar-real-world): Add test
1920 for Bug#22092.
1921
1922 2015-12-05 Eli Zaretskii <eliz@gnu.org>
1923
1924 Document 'bookmark-set-no-overwrite'
1925
1926 * doc/emacs/regs.texi (Bookmarks): Document the new command
1927 'bookmark-set-no-overwrite' and its keybinding.
1928
1929 2015-12-05 Eli Zaretskii <eliz@gnu.org>
1930
1931 Document new binding of 'mouse-buffer-menu'
1932
1933 * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
1934 now also on C-F10.
1935
1936 2015-12-05 Eli Zaretskii <eliz@gnu.org>
1937
1938 Initial documentation of dynamic modules
1939
1940 * doc/lispref/loading.texi (Dynamic Modules): New section with
1941 initial documentation for dynamic modules.
1942 * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
1943 detailed menu
1944
1945 * etc/NEWS: Fix typos in dynamic modules' entry.
1946
1947 2015-12-05 Artur Malabarba <bruce.connor.am@gmail.com>
1948
1949 Remove copyright statements from trivial test files
1950
1951 2015-12-05 Eli Zaretskii <eliz@gnu.org>
1952
1953 Add "Preliminaries" section to etc/DEBUG
1954
1955 * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
1956 Most of the content was suggested by Phillip Lord
1957 <phillip.lord@russet.org.uk>. Remove the section about debugging
1958 with the Visual Studio, as building Emacs with the Microsoft
1959 compilers is no longer supported. Minor fixes in some other
1960 sections.
1961
1962 2015-12-05 Alex Dunn <dunn.alex@gmail.com> (tiny change)
1963
1964 Improve parsing of version strings
1965
1966 * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
1967 (version-to-list): More helpful error messages.
1968 (version-to-list): ".5" is valid (update docstring). Make
1969 "22.8X3" invalid, as the doc string says.
1970
1971 * test/automated/subr-tests.el (ert-test-version-parsing): New
1972 tests for version string processing.
1973
1974 2015-12-05 Eli Zaretskii <eliz@gnu.org>
1975
1976 Fix documentation of 'undo' changes
1977
1978 * doc/lispref/text.texi (Undo): Minor wording changes. Use US
1979 English conventions for spelling and whitespace between sentences.
1980
1981 * etc/NEWS: Fix wording and spelling of undo-related entries.
1982 Mark them as documented.
1983
1984 2015-12-04 Glenn Morris <rgm@gnu.org>
1985
1986 * lisp/net/net-utils.el: Small improvements.
1987
1988 (net-utils--executable-find-sbin): New function.
1989 (ifconfig-program): Check sbin directories.
1990 Fallback to "ip". (Bug#22091)
1991 (ifconfig-program-options): Check the actual program in use.
1992 (arp-program): Check sbin directories.
1993
1994 2015-12-04 Arash Esbati <esbati@gmx.de> (tiny change)
1995
1996 Fix wrong-type-argument integer-or-marker-p nil error
1997
1998 * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
1999 Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
2000
2001 2015-12-04 Alan Mackenzie <acm@muc.de>
2002
2003 Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
2004
2005 Merge necessitated by a rebase operation.
2006
2007 2015-12-04 Alan Mackenzie <acm@muc.de>
2008
2009 lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
2010
2011 2015-12-04 Alan Mackenzie <acm@muc.de>
2012
2013 First commit to scratch/follow. Make Isearch work with Follow Mode, etc.
2014
2015 doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
2016 Windows" and new @defun selected-window-group.
2017 (Window Start and End): Describe new &optional parameter GROUP and
2018 ...-group-function for window-start, window-end, set-window-start, and
2019 pos-visible-in-window-p.
2020 (Textual Scrolling) Describe the same for recenter.
2021 doc/lispref/positions.texi (Screen Lines): Describe the same for
2022 move-to-window-line.
2023
2024 src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
2025 (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
2026 new optional parameter "group". At the beginning of each, check whether the
2027 corresponding ...-group-function is set to a function, and if so execute this
2028 function in place of the normal processing.
2029 (syms_of_window): Define symbols for the six new variables below.
2030 (window-start-group-function, window-end-group-function)
2031 (set-window-start-group-function, recenter-group-function)
2032 (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
2033 New permanent local buffer local variables.
2034 src/keyboard.c (Fposn_at_point): Add extra parameter in call to
2035 Fpos_visible_in_window_p.
2036
2037 lisp/window.el (selected-window-group-function): New permanent local buffer
2038 local variable.
2039 (selected-window-group): New function.
2040
2041 lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
2042 enable, kill them at mode disable. Add/remove follow-after-change to/from
2043 after-change-functions.
2044 (follow-start-end-invalid): New variable.
2045 (follow-redisplay): Manipulate follow-start-end-invalid.
2046 (follow-after-change, follow-window-start, follow-window-end)
2047 (follow-set-window-start, follow-pos-visible-in-window-p)
2048 (follow-move-to-window-line, follow-sit-for): New functions.
2049
2050 lisp/isearch.el (isearch-call-message): New macro.
2051 (isearch-update, with-isearch-suspended, isearch-del-char)
2052 (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
2053 (with-isearch-suspended): Rearrange code such that isearch-call-message is
2054 invoked before point is moved.
2055 (isearch-message): Add comment about where point must be at function call.
2056 (isearch-search): Remove call to isearch-message.
2057 (isearch-lazy-highlight-window-group): New variable.
2058 (isearch-lazy-highlight-new-loop): Unconditionally start idle timer. Move
2059 the battery of tests to ...
2060 (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
2061 Note: (sit-for 0) is still called.
2062 (isearch-lazy-highlight-update): Check membership of
2063 isearch-lazy-highlight-window-group. Don't set the `window' overlay
2064 property.
2065 (isearch-update, isearch-done, isearch-string-out-of-window)
2066 (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
2067 (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
2068 (isearch-lazy-highlight-update): Call the six amended primitives (see
2069 src/window.c above) with the new `group' argument set to t, to cooperate
2070 with Follow Mode.
2071
2072 2015-12-04 Stefan Monnier <monnier@iro.umontreal.ca>
2073
2074 * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
2075
2076 * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
2077 (ert--explain-format-atom, ert--explain-equal-rec)
2078 (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
2079 (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
2080
2081 2015-12-04 Artur Malabarba <bruce.connor.am@gmail.com>
2082
2083 * lisp/character-fold.el: Remove special case-folding support
2084
2085 (character-fold-to-regexp): Remove special code for
2086 case-folding. Char-fold search still respects the
2087 `case-fold-search' variable (i.e., f matches F). This only
2088 removes the code that was added to ensure that f also matched
2089 all chars that F matched. For instance, after this commit, f
2090 no longer matches 𝔽.
2091
2092 This was necessary because the logic created a regexp with
2093 2^(length of the string) redundant paths. So, when a very
2094 long string "almost" matched, Emacs took a very long time to
2095 figure out that it didn't. This became particularly relevant
2096 because isearch's lazy-highlight does a search bounded by (1-
2097 match-end) (which, in most circumstances, is a search that
2098 almost matches). A recipe for this can be found in bug#22090.
2099
2100 2015-12-04 Stefan Monnier <monnier@iro.umontreal.ca>
2101
2102 * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
2103 Fixes (bug#21701)
2104
2105 2015-12-04 Daiki Ueno <ueno@gnu.org>
2106
2107 lisp/gnus/qp.el: Don't replace "from " at bol
2108
2109 * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
2110 to nil when looking for "^From ". Problem reported by Simon Josefsson.
2111
2112 2015-12-03 Phillip Lord <phillip.lord@russet.org.uk>
2113
2114 Externalize some symbols in undo-auto
2115
2116 * doc/lispref/text.texi: Update symbols.
2117 * lisp/simple.el (undo-auto--amalgamate,
2118 undo-auto--current-boundary-timer): Make symbols public.
2119 * src/cmds.c (Fself_insert_command,Fdelete_char): Call
2120 updated symbol.
2121
2122 2015-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2123
2124 * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
2125
2126 2015-12-03 Michael Albinus <michael.albinus@gmx.de>
2127
2128 Some error message improvements in tramp-sh.el
2129
2130 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
2131 Suppress error messages for "mesg" and "biff" calls.
2132 (tramp-get-remote-path): Ignore errors when expanding
2133 `tramp-own-remote-path'. Raise a warning instead.
2134
2135 2015-12-03 Eli Zaretskii <eliz@gnu.org>
2136
2137 Document 'nacl' value for 'system-type'
2138
2139 * doc/lispref/os.texi (System Environment): Document the 'nacl'
2140 value of 'system-type'.
2141
2142 2015-12-03 Eli Zaretskii <eliz@gnu.org>
2143
2144 Document 'window-max-chars-per-line'
2145
2146 * doc/lispref/windows.texi (Window Sizes): Document
2147 'window-max-chars-per-line'.
2148
2149 2015-12-03 Artur Malabarba <bruce.connor.am@gmail.com>
2150
2151 Fix some file headers for the purpose of `package--builtins'
2152
2153 * lisp/emacs-lisp/cl-preloaded.el
2154 * lisp/emacs-lisp/eieio-compat.el
2155 * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
2156
2157 * lisp/ielm.el: Fix summary line.
2158
2159 2015-12-03 Artur Malabarba <bruce.connor.am@gmail.com>
2160
2161 * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
2162
2163 Reload any previously loaded package files before compiling
2164 the package (also reload the same files after compiling).
2165 This ensures that we have the most recent definitions during
2166 compilation, and avoids generating bad elc files when a macro
2167 changes and it is used in a different file from the one it's
2168 defined in.
2169
2170 2015-12-03 Artur Malabarba <bruce.connor.am@gmail.com>
2171
2172 * lisp/emacs-lisp/package.el: Refactor package activation code
2173
2174 (package-activate): Move code that activates dependencies into
2175 package-activate-1.
2176 (package--load-files-for-activation): New function.
2177 (package-activate-1): Add code for (optionally) activating
2178 dependencies, and move file-loading code into
2179 `package--load-files-for-activation'.
2180
2181 2015-12-03 Eli Zaretskii <eliz@gnu.org>
2182
2183 Document new font-related functionality
2184
2185 * doc/lispref/display.texi (Low-Level Font): Document
2186 'default-font-width', 'default-font-height', 'window-font-width',
2187 and 'window-font-height'.
2188
2189 * etc/NEWS: Move entries for 'default-font-width',
2190 'default-font-height', 'window-font-width', and 'window-font-height'
2191 to their place and mark them documented.
2192
2193 2015-12-03 Eli Zaretskii <eliz@gnu.org>
2194
2195 Fix documentation and implementation of 'directory-name-p'
2196
2197 * lisp/files.el (directory-name-p): Modify to recognize
2198 backslashes on MS-Windows and MS-DOS. Adjust the doc string
2199 accordingly. Use '=', not char-equal, for comparison, as
2200 letter-case cannot possibly be an issue here.
2201
2202 * doc/lispref/files.texi (Directory Names): Move the documentation
2203 of directory-name-p here from "Relative File Names". Update the
2204 description per the changes in implementation.
2205
2206 * etc/NEWS: Move the entry for 'directory-name-p' to its proper
2207 place and mark it documented.
2208
2209 2015-12-02 Eli Zaretskii <eliz@gnu.org>
2210
2211 Minor copyedit in Emacs manual
2212
2213 * doc/emacs/search.texi (Lax Search): Make wording about character
2214 folding by default less definitive. (Bug#22043)
2215
2216 2015-12-02 Eli Zaretskii <eliz@gnu.org>
2217
2218 More emacs-module.c fixes for wide ints
2219
2220 * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
2221 unsigned data types to manipulate pointers, to avoid sign
2222 extension coming after us with a vengeance.
2223
2224 * modules/mod-test/test.el (mod-test-sum-test): Add tests for
2225 Emacs with wide ints that verify integer values near the critical
2226 value that requires us to switch to a cons cell.
2227
2228 2015-12-02 Stephen Leake <stephen_leake@stephe-leake.org>
2229
2230 Fix bug#22069 in cl-generic.el
2231
2232 * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
2233 not run thru `format'.
2234
2235 2015-12-01 Dmitry Gutov <dgutov@yandex.ru>
2236
2237 APPEND etags--xref-backend to xref-backend-functions
2238
2239 * lisp/progmodes/xref.el (xref-backend-functions):
2240 Use APPEND when adding the default element
2241 (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
2242
2243 2015-12-01 Eli Zaretskii <eliz@gnu.org>
2244
2245 More accurate documentation of lax whitespace matching
2246
2247 * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
2248 (word-search-backward, word-search-forward)
2249 (word-search-backward-lax, word-search-forward-lax): Mention in
2250 doc strings that toggling lax whitespace matching has no effect on
2251 these commands.
2252
2253 * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
2254 lax whitespace matching has no effect on these commands.
2255
2256 2015-12-01 Eli Zaretskii <eliz@gnu.org>
2257
2258 Fix emacs-module.c for wide ints
2259
2260 * src/emacs-module.c (lisp_to_value): Compare the produced value
2261 with the original Lisp object, not with the one potentially
2262 converted into a Lisp_Cons. Fixes assertion violations when
2263 working with integers larger than fit into a 32-bit value.
2264
2265 * modules/mod-test/test.el (mod-test-sum-test): Add tests for
2266 large integers, to test --with-wide-int.
2267
2268 2015-12-01 Eli Zaretskii <eliz@gnu.org>
2269
2270 Document 'directory-files-recursively'
2271
2272 * lisp/files.el (directory-files-recursively): Doc fix. Rename
2273 the argument MATCH to REGEXP, to be more explicit about its form.
2274
2275 * doc/lispref/files.texi (Contents of Directories): Improve the
2276 documentation of 'directory-files-recursively'. Add
2277 cross-references.
2278
2279 * etc/NEWS: Move the entry for 'directory-files-recursively' to
2280 its place and mark it documented.
2281
2282 2015-12-01 Eli Zaretskii <eliz@gnu.org>
2283
2284 Document 'inhibit-read-only' property
2285
2286 * doc/lispref/text.texi (Special Properties): Describe the new
2287 'inhibit-read-only' text property. Add cross-reference to where
2288 read-only buffers are described.
2289 * doc/lispref/buffers.texi (Read Only Buffers): Mention that
2290 'inhibit-read-only' property exempts text from being read-only.
2291 Add cross-reference to "Special Properties".
2292
2293 * etc/NEWS: Move the entry about 'inhibit-read-only' property to
2294 its place and mark it documented.
2295
2296 2015-12-01 Artur Malabarba <bruce.connor.am@gmail.com>
2297
2298 * lisp/emacs-lisp/package.el: Update header comments
2299
2300 2015-12-01 Artur Malabarba <bruce.connor.am@gmail.com>
2301
2302 * lisp/character-fold.el: Add back multi-char matching
2303
2304 (character-fold-to-regexp): Uncomment recently commented code
2305 and make the algorithm "dummer" by not checking every possible
2306 combination. This will miss some possible matches, but it
2307 greatly reduces regexp size.
2308
2309 * test/automated/character-fold-tests.el
2310 (character-fold--test-fold-to-regexp): Comment out test of
2311 functionality no longer supported.
2312
2313 2015-12-01 Xue Fuqiao <xfq.free@gmail.com>
2314
2315 * doc/emacs/ack.texi (Acknowledgments): Update.
2316
2317 2015-12-01 Michael Albinus <michael.albinus@gmx.de>
2318
2319 Check `file-remote-p' over absolute files names in files.el
2320
2321 * lisp/files.el (directory-files-recursively)
2322 (get-free-disk-space): Check `file-remote-p' over absolute files names.
2323
2324 2015-12-01 Andreas Schwab <schwab@linux-m68k.org>
2325
2326 * src/lread.c (syms_of_lread): Doc fix.
2327
2328 2015-11-30 Dmitry Gutov <dgutov@yandex.ru>
2329
2330 Don't mistake certain JS method calls for keywords
2331
2332 * lisp/progmodes/js.el (js--ctrl-statement-indentation):
2333 Braceless keyword can't come after a period (bug#22063).
2334
2335 2015-11-30 David Reitter <david.reitter@gmail.com>
2336
2337 Read frame_title_format from buffer-local variable for NS port
2338
2339 * nsfns.m (x_implicitly_set_name): Read frame-title-format and
2340 icon-title-format variables from buffer in appropriate window.
2341 (Bug#22048)
2342
2343 2015-11-30 Juri Linkov <juri@linkov.net>
2344
2345 * lisp/replace.el (occur-engine): Count matches in empty lines.
2346
2347 (Bug#22062)
2348
2349 2015-11-30 Aurélien Aptel <aurelien.aptel@gmail.com>
2350
2351 * src/emacs-module.h: Fix finalizer typedef for C++11
2352
2353 C++11 standard doesn't allow exception-specification in typedef.
2354 The workaround is to declare a dummy function prototype and use
2355 decltype on it.
2356
2357 2015-11-30 Eli Zaretskii <eliz@gnu.org>
2358
2359 Fix last change
2360
2361 * src/emacs-module.c (lisp_to_value, value_to_lisp)
2362 [WIDE_EMACS_INT]: Avoid compiler warnings.
2363
2364 2015-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2365
2366 Rely on conservative stack scanning to find "emacs_value"s
2367
2368 * src/emacs-module.c (struct emacs_value_tag)
2369 (struct emacs_value_frame, struct emacs_value_storage): Remove.
2370 (value_frame_size): Remove constant.
2371 (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
2372 (lisp_to_value): Remove first arg.
2373 (module_nil): New constant.
2374 Use it instead of NULL when returning an emacs_value.
2375 (module_make_function): Adjust to new calling convention of
2376 Qinternal_module_call.
2377 (DEFUN): Receive args in an array rather than a list.
2378 Use SAFE_ALLOCA rather than xnmalloc. Skip the lisp_to_value loop when
2379 we don't have WIDE_EMACS_INT. Adjust to new type of non_local_exit info.
2380 (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
2381 Adjust to new type of non_local_exit info.
2382 (ltv_mark) [WIDE_EMACS_INT]: New constant.
2383 (value_to_lisp, lisp_to_value): Rewrite.
2384 (initialize_frame, initialize_storage, finalize_storage): Remove functions.
2385 (allocate_emacs_value): Remove function.
2386 (mark_modules): Gut it.
2387 (initialize_environment): Don't initialize storage any more.
2388 Keep the actual env object on Vmodule_environments.
2389 (finalize_environment): Don't finalize storage any more.
2390 (syms_of_module): Initialize ltv_mark and module_nil.
2391
2392 * src/emacs-module.h (emacs_value): Make it more clear that this type
2393 is really opaque, including the fact that NULL may not be valid.
2394
2395 * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
2396 Don't assume that NULL is a valid emacs_value.
2397
2398 2015-11-30 Eli Zaretskii <eliz@gnu.org>
2399
2400 Yet another doc improvement for search commands
2401
2402 * doc/emacs/search.texi (Word Search, Symbol Search)
2403 (Regexp Search): Document commands that don't support lax
2404 whitespace matching or character folding.
2405 (Nonincremental Search): Mention the search commands that can be
2406 invoked from the menu bar.
2407
2408 * lisp/isearch.el (isearch-define-mode-toggle-word)
2409 (isearch-define-mode-toggle-symbol)
2410 (isearch-define-mode-toggle-character-fold): Note in the doc
2411 string that turning these on exits the regexp mode.
2412 (isearch-forward-regexp, isearch-forward-word)
2413 (isearch-forward-symbol, isearch-backward-regexp)
2414 (word-search-backward, word-search-forward)
2415 (word-search-backward-lax, word-search-forward-lax): State in the
2416 doc string which commands don't support character folding and/or
2417 lax-whitespace matching.
2418
2419 2015-11-30 Martin Rudalics <rudalics@gmx.at>
2420
2421 Run `window-size-change-functions' also when reading from minibuffer
2422
2423 * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
2424 also when reading from minibuffer.
2425
2426 2015-11-30 Ulf Jasper <ulf.jasper@web.de>
2427
2428 Fix scrambling of html-rendered item buffers
2429
2430 * net/newst-treeview.el (newsticker--treeview-render-text): Fix
2431 scrambling of contents by wrapping call to html-renderer in
2432 save-selected-window.
2433
2434 2015-11-30 Paul Eggert <eggert@cs.ucla.edu>
2435
2436 Fix font typo in previous doc fix.
2437
2438 2015-11-30 Paul Eggert <eggert@cs.ucla.edu>
2439
2440 A bit more security doc, esp. file local vars
2441
2442 * doc/emacs/emacs.texi (Top):
2443 * doc/emacs/misc.texi (Miscellaneous Commands):
2444 Refer to new Host Security section.
2445 (Host Security): New section.
2446 * doc/lispref/os.texi (Security Considerations):
2447 Mention file local variables.
2448
2449 2015-11-30 Artur Malabarba <bruce.connor.am@gmail.com>
2450
2451 * lisp/character-fold.el: Comment out branching code
2452
2453 (character-fold-to-regexp): Comment out code that uses multi-char
2454 table. The branching caused by this induces absurdly long regexps,
2455 up to 10k chars for as little as 25 input characters.
2456
2457 2015-11-30 Paul Eggert <eggert@cs.ucla.edu>
2458
2459 Spelling and grammar fixes
2460
2461 2015-11-29 Dmitry Gutov <dgutov@yandex.ru>
2462
2463 Make lisp-completion-at-point a wrapper instead of an alias
2464
2465 * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
2466 Turn into an obsolete wrapper around elisp-completion-at-point
2467 (bug#20455).
2468
2469 2015-11-29 Artur Malabarba <bruce.connor.am@gmail.com>
2470
2471 * lisp/isearch.el (isearch-search-fun-default): Nicer error
2472
2473 message when the search fails.
2474
2475 2015-11-29 Dmitry Gutov <dgutov@yandex.ru>
2476
2477 Update menu-bar-goto-uses-etags-p for the current xref API
2478
2479 * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
2480 xref-backend-functions, instead of now-nonexistent
2481 xref-find-function.
2482
2483 2015-11-29 Artur Malabarba <bruce.connor.am@gmail.com>
2484
2485 * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
2486
2487 2015-11-29 Artur Malabarba <bruce.connor.am@gmail.com>
2488
2489 * lisp/menu-bar.el: Use folding in searches
2490
2491 (nonincremental-search-forward): Use `isearch-search-fun-default'
2492 to determine the search function.
2493 (nonincremental-search-backward)
2494 (nonincremental-repeat-search-forward)
2495 (nonincremental-repeat-search-backward): Use it.
2496
2497 2015-11-29 Artur Malabarba <bruce.connor.am@gmail.com>
2498
2499 * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
2500
2501 2015-11-29 Artur Malabarba <bruce.connor.am@gmail.com>
2502
2503 * lisp/character-fold.el (character-fold-to-regexp): Be careful
2504
2505 not to return huge regexps.
2506
2507 2015-11-29 Eli Zaretskii <eliz@gnu.org>
2508
2509 Improve documentation of string-collate-* functions
2510
2511 * doc/lispref/strings.texi (Text Comparison): Improve wording and
2512 indexing of 'string-collate-equalp' and 'string-collate-lessp'.
2513
2514 * etc/NEWS: Move the entry of 'string-collate-equalp' and
2515 'string-collate-lessp' to "Lisp Changes" section and mark it as
2516 documented.
2517
2518 2015-11-29 Eli Zaretskii <eliz@gnu.org>
2519
2520 Document truncate-string-ellipsis
2521
2522 * doc/lispref/display.texi (Size of Displayed Text): Document
2523 'truncate-string-ellipsis'.
2524
2525 * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
2526 (truncate-string-to-width): Mention in the doc string that the
2527 default for ELLIPSIS comes from 'truncate-string-ellipsis'.
2528
2529 * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
2530 Changes" section.
2531
2532 2015-11-29 Eli Zaretskii <eliz@gnu.org>
2533
2534 Fix confusion wrt character folding in the Emacs manual
2535
2536 * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
2537 Document that invoking search-forward/backward and
2538 re-search-forward/backward supports only case folding, but not the
2539 rest of the lax-search features. Reported by Mike Kupfer
2540 <m.kupfer@acm.org>.
2541
2542 2015-11-29 Ken Brown <kbrown@cornell.edu>
2543
2544 Update mod-test-sum-test
2545
2546 * modules/mod-test/test.el (mod-test-sum-test): Update to
2547 accommodate the lack of dladdr on Cygwin.
2548
2549 2015-11-29 Alan Mackenzie <acm@muc.de>
2550
2551 Byte compiler: Catch missing argument to `funcall'. Fixes bug#22051.
2552
2553 * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
2554 to `funcall', (i) Output an error message; (ii) Generate code to signal a
2555 `wrong-number-of-arguments' error.
2556
2557 2015-11-29 Martin Rudalics <rudalics@gmx.at>
2558
2559 * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
2560
2561 2015-11-28 Artur Malabarba <bruce.connor.am@gmail.com>
2562
2563 * lisp/character-fold.el (character-fold-to-regexp)
2564
2565 Warn about using long strings.
2566
2567 * test/automated/character-fold-tests.el
2568 (character-fold--test-lax-whitespace)
2569 (character-fold--test-consistency): Reduce string size for tests.
2570
2571 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2572
2573 Document renaming of x-select-enable-* variables
2574
2575 * doc/emacs/killing.texi (Clipboard): Rename
2576 x-select-enable-clipboard to select-enable-clipboard and
2577 x-select-enable-primary to select-enable-primary. Update index
2578 entries.
2579
2580 * etc/NEWS: Mark entry as documented.
2581
2582 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2583
2584 Document the shorthand hints displayed by M-x
2585
2586 * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
2587 suggest-key-bindings. Document the shorthand hints for commands
2588 that have no key bindings. Document that M-x completion ignores
2589 obsolete commands.
2590
2591 * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
2592 documented.
2593
2594 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2595
2596 Update docs of character folding
2597
2598 * doc/emacs/search.texi (Lax Search): Update the description of
2599 character folding for the latest changes.
2600
2601 2015-11-28 Artur Malabarba <bruce.connor.am@gmail.com>
2602
2603 * lisp/character-fold.el: Also play nice with case-folding
2604
2605 (character-fold-to-regexp): Take `case-fold-search' into account.
2606
2607 2015-11-28 Artur Malabarba <bruce.connor.am@gmail.com>
2608
2609 * lisp/character-fold.el: Add support for multi-char matches
2610
2611 (character-fold-table): Now has an extra-slot. This is a second
2612 char-table that holds multi-character matches. See docstring for
2613 details.
2614 (character-fold-to-regexp): Can build branching regexps when a
2615 character's entry the extra slot of `character-fold-table' matches the
2616 characters that succeed it.
2617
2618 2015-11-28 Artur Malabarba <bruce.connor.am@gmail.com>
2619
2620 * lisp/character-fold.el: Code simplifications
2621
2622 (character-fold-table): Reduce the scope of a variable.
2623 (character-fold-to-regexp): Change logic to work directly on the
2624 input string. It's a little easier to understand, probably
2625 faster, and sets us up for implementing multi-char matches.
2626
2627 * test/automated/character-fold-tests.el
2628 (character-fold--test-fold-to-regexp): New test.
2629
2630 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2631
2632 Document changes in "C-h l"
2633
2634 * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
2635
2636 * etc/NEWS: mark "C-h l" changes as documented.
2637
2638 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2639
2640 Finalize documentation of 'custom-prompt-customize-unsaved-options'
2641
2642 * doc/emacs/custom.texi (Saving Customizations): Index the new
2643 function 'custom-prompt-customize-unsaved-options'.
2644
2645 * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
2646 is useful.
2647
2648 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2649
2650 Document 'comment-line'
2651
2652 * doc/emacs/programs.texi (Comment Commands): Document
2653 'comment-line'.
2654
2655 * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
2656
2657 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2658
2659 Document new checkdoc features
2660
2661 * doc/lispref/tips.texi (Tips, Library Headers): Document the
2662 keyword-checking features of checkdoc and the commands
2663 'checkdoc-file' and 'checkdoc-current-buffer'.
2664
2665 * etc/NEWS: Move the checkdoc-related entries to their own
2666 section.
2667
2668 2015-11-28 Philipp Stephani <p.stephani2@gmail.com>
2669
2670 Simplify the prologue of emacs-module.c functions
2671
2672 * emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
2673 (module_make_global_ref)
2674 (module_free_global_ref, module_make_function, module_funcall)
2675 (module_intern, module_type_of, module_extract_integer)
2676 (module_make_integer, module_extract_float, module_make_float)
2677 (module_copy_string_contents, module_make_string)
2678 (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
2679 (module_get_user_finalizer, module_set_user_finalizer)
2680 (module_vec_set, module_vec_get, module_vec_size): Use new helper
2681 macro MODULE_FUNCTION_BEGIN.
2682
2683 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2684
2685 Don't reject module calls with no arguments
2686
2687 * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
2688
2689 2015-11-28 Philipp Stephani <p.stephani2@gmail.com>
2690
2691 Make module-call be visible from Lisp
2692
2693 * src/emacs-module.c (module_make_function): Use internal--module-call.
2694 (Finternal_module_call): Renamed from Fmodule_call. Add safety
2695 checks.
2696 (syms_of_module): DEFSYM save-value-p and save-pointer-p. Do
2697 defsubr internal--module-call.
2698
2699 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2700
2701 Add etags tests for the recent Lua-related bugfix
2702
2703 * test/etags/lua-src/test.lua: New file, tests the issues raised
2704 by bug#21934.
2705 * test/etags/Makefile (LUASRC): Add test.lua.
2706 * test/etags/ETAGS.good_1:
2707 * test/etags/ETAGS.good_2:
2708 * test/etags/ETAGS.good_3:
2709 * test/etags/ETAGS.good_4:
2710 * test/etags/ETAGS.good_5:
2711 * test/etags/ETAGS.good_6:
2712 * test/etags/CTAGS.good: Adapt to the new Lua test. Also, an old
2713 regression fix, resolved around 25 May 2015, required changes to
2714 the "good" ETAGS files.
2715
2716 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2717
2718 Fix Lua tags when a function name includes '.' or ':'
2719
2720 * lib-src/etags.c (Lua_functions): Add a tag for the last element
2721 of a function name after a dot or a colon. (Bug#21934)
2722
2723 2015-11-28 Eli Zaretskii <eliz@gnu.org>
2724
2725 Improve documentation of search and replace commands
2726
2727 * doc/emacs/search.texi (Replacement and Lax Matches): Document
2728 which commands are affected by 'replace-character-fold'.
2729 (Lax Search): Add a cross reference to "Replacement and Lax
2730 Matches". Improve wording. Fix lost extra whitespace.
2731 (Search Customizations): Improve wording. (Bug#22036)
2732 See also comments in
2733 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
2734
2735 * lisp/replace.el (query-replace, query-replace-regexp)
2736 (query-replace-regexp-eval, replace-string, replace-regexp):
2737 Mention 'replace-character-fold' in the doc strings.
2738
2739 2015-11-28 Paul Eggert <eggert@cs.ucla.edu>
2740
2741 Fix minor problems found by static checking
2742
2743 * src/undo.c (prepare_record): Add proper prototype for C.
2744
2745 2015-11-27 Stefan Monnier <monnier@iro.umontreal.ca>
2746
2747 * src/emacs-module.c (struct env_storage): Delete
2748
2749 (struct emacs_runtime_private): Keep an emacs_env instead.
2750 (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
2751 (initialize_environment): Split the arg in two. Adjust all callers.
2752 Only store the private part in Vmodule_environments.
2753 (finalize_environment): Change the arg to only be the private env.
2754 Adjust all callers.
2755
2756 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2757
2758 Improve documentation of 'replace-character-fold'
2759
2760 * lisp/replace.el (replace-character-fold): Clarify which commands
2761 are affected by this variable.
2762
2763 2015-11-27 Dmitry Gutov <dgutov@yandex.ru>
2764
2765 Autoload etags when using its xref backend
2766
2767 * lisp/progmodes/xref.el (xref--etags-backend):
2768 Rename to etags--xref-backend. Move to etags.el. Autoload.
2769 (Bug#22026)
2770
2771 2015-11-27 Artur Malabarba <bruce.connor.am@gmail.com>
2772
2773 * lisp/character-fold.el: Allow complex chars to match their decomposition
2774
2775 (character-fold-table): When a character's decomposition does not
2776 involve a formatting tag (i.e., if it has an "exact" description via
2777 other characters), then this character is allowed to match the
2778 decomposition.
2779
2780 2015-11-27 Artur Malabarba <bruce.connor.am@gmail.com>
2781
2782 * lisp/character-fold.el: More descriptive variable names
2783
2784 (character-fold-table): Rename a lot of the lexical variables to
2785 make the code easier to read.
2786
2787 2015-11-27 Artur Malabarba <bruce.connor.am@gmail.com>
2788
2789 * lisp/isearch.el: Ensure we still support `isearch-new-word'
2790
2791 (isearch-new-regexp-function): Define variable.
2792 (isearch-new-word): Define as an obsolete alias. (Bug#22018)
2793
2794 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2795
2796 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
2797
2798 2015-11-27 Lee Bochicchio <lboc.home@gmail.com>
2799
2800 * test/lisp/abbrev-tests.el: Define more tests
2801
2802 (abbrev-table-name-test, kill-all-abbrevs-test)
2803 (clear-abbrev-table-test): New tests.
2804
2805 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2806
2807 Add module tests for wrong-type-argument
2808
2809 * modules/mod-test/test.el (mod-test-sum-test): Add tests for
2810 wrong-type-argument.
2811
2812 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2813
2814 Improve handling of signals and 'throw' in modules
2815
2816 * src/emacs-module.c: Add commentary explaining how to write
2817 functions in this file.
2818 (module_make_global_ref, module_free_global_ref)
2819 (module_non_local_exit_signal, module_non_local_exit_throw)
2820 (module_make_function, module_funcall, module_intern)
2821 (module_type_of, module_is_not_nil, module_eq)
2822 (module_extract_integer, module_make_integer)
2823 (module_extract_float, module_make_float)
2824 (module_copy_string_contents, module_make_string)
2825 (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
2826 (module_get_user_finalizer, module_set_user_finalizer)
2827 (module_vec_set, module_vec_get, module_vec_size)
2828 (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
2829 Do nothing and return with failure indication immediately, if some
2830 previous module call signaled an error or wants to throw. See
2831 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
2832 for the relevant discussions.
2833
2834 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2835
2836 Add ':version' tag to 'checkdoc-package-keywords-flag'
2837
2838 * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
2839 Add a ':version' tag.
2840
2841 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2842
2843 Improve documentation of 'eval-buffer' and 'eval-region'
2844
2845 * src/lread.c (Feval_buffer, Feval_region): Doc fixes. (Bug#22023)
2846
2847 * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
2848 "accessible portion of buffer".
2849
2850 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2851
2852 Unbreak the Cygwin w32 build
2853
2854 * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
2855 build as well. Reported by Andy Moreton <andrewjmoreton@gmail.com>.
2856
2857 2015-11-27 Eli Zaretskii <eliz@gnu.org>
2858
2859 Improve commentary in character-fold.el
2860
2861 * lisp/character-fold.el (character-fold-to-regexp): Move detailed
2862 description from commit log message to comments. (Bug#22019)
2863
2864 2015-11-26 Alan Mackenzie <acm@muc.de>
2865
2866 Byte Compiler: generate code to adjust stack count after call to `signal'.
2867
2868 Corrects change from earlier today.
2869
2870 * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
2871 `byte-compile--for-effect' as argument to `byte-compile-form'.
2872
2873 2015-11-26 Eli Zaretskii <eliz@gnu.org>
2874
2875 Improve commentary of prepare_to_modify_buffer_1
2876
2877 * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
2878 that this function runs Lisp. Suggested by Richard Stallman
2879 <rms@gnu.org>.
2880
2881 2015-11-26 Phillip Lord <phillip.lord@russet.org.uk>
2882
2883 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
2884
2885 2015-11-26 Phillip Lord <phillip.lord@russet.org.uk>
2886
2887 Fix regression after merge.
2888
2889 * undo.c (prepare_record): Remove call to run_undoable_change.
2890
2891 2015-11-26 Phillip Lord <phillip.lord@russet.org.uk>
2892
2893 After delete, record point location in undo.
2894
2895 Addresses Bug #21968.
2896
2897 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
2898 better support intercalating calls.
2899 * src/keyboard.c,src/keyboard.h (command_loop_1): Store value of
2900 point and current buffer before each command.
2901 * src/undo.c (record_point): Now only record the point.
2902 * src/undo.c (prepare_record): Functionality removed form
2903 record_point.
2904 * src/undo.c (record_delete): Check if point needs recording.
2905 * src/undo.c (undo-boundary): Record value of point before each
2906 boundary.
2907 * test/automated/simple-test.el: New tests.
2908
2909 Conflicts:
2910 src/undo.c
2911
2912 2015-11-26 Eli Zaretskii <eliz@gnu.org>
2913
2914 Fix compiler warnings in w32.c
2915
2916 * src/w32.c (sys_socket): In case of error, use -1 as return
2917 value, not INVALID_SOCKET, which causes compiler warnings.
2918 (maybe_load_unicows_dll): Cast the return value of GetProcAddress
2919 to the appropriate function signature, to avoid compiler errors.
2920 Reported by Andy Moreton <andrewjmoreton@gmail.com>. (Bug#21953)
2921
2922 2015-11-26 Dmitry Gutov <dgutov@yandex.ru>
2923
2924 Check if the file exists on disk before producing the revert diff
2925
2926 * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
2927 exists on disk (bug#20558).
2928
2929 2015-11-26 Alan Mackenzie <acm@muc.de>
2930
2931 Byte compiler: on setq with an odd number of arguments, generate a `signal'
2932
2933 * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
2934 it has an odd number of arguments, to allow bytecomp to handle the error.
2935
2936 * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
2937 odd number of arguments, generate a `signal' instead of the normal code.
2938
2939 2015-11-25 Dmitry Gutov <dgutov@yandex.ru>
2940
2941 Use find-tag-default for xref-backend-identifier-at-point
2942
2943 * lisp/progmodes/etags.el (find-tag-tag)
2944 (tags-completion-at-point-function): Extract common code as
2945 find-tag--default.
2946 (xref-backend-identifier-at-point): Define in terms of the new
2947 function.
2948
2949 2015-11-25 Paul Eggert <eggert@cs.ucla.edu>
2950
2951 * src/undo.c (record_property_change): Remove now-unused local.
2952
2953 2015-11-25 Phillip Lord <phillip.lord@russet.org.uk>
2954
2955 run_undoable_changes now called from insdel.
2956
2957 The original calls from inside undo.c are not always at a safe position
2958 to call lisp, as they originate in varied positions within insdel.c.
2959 Calling them directly from prepare_to_modify_buffer_1 ensures that they
2960 are always run at the same point.
2961
2962 * undo.c (run_undoable_changes,syms_of_undo): Remove function
2963 and symbol used.
2964 * insdel.c (run_undoable_changes): Add function and symbol.
2965
2966 2015-11-25 Eli Zaretskii <eliz@gnu.org>
2967
2968 Improve and update documentation of search commands
2969
2970 * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
2971 all references changed. Move the description of lax-whitespace
2972 here. Add description of the new character folding features and
2973 additional customizable options.
2974 (Isearch Yank): Move before "Error in Search".
2975 (Basic Isearch): Improve wording. Add index entries. Add short
2976 description of how to abandon search, making this subsection a
2977 complete introduction to search basics.
2978 (Repeat Isearch): Add index entries. Describe additional
2979 customizable options. Describe mouse clicks.
2980 (Isearch Yank): Add index entries. Describe mouse-2 click in echo
2981 area. Describe more customizable options.
2982 (Error in Isearch): Add index entries.
2983 (Special Isearch): Move actual description of some isearch
2984 commands to other sections, leaving here just the summary of the
2985 commands. Add command that toggles character folding. Describe
2986 commands, like "C-h C-h", that were previously omitted for some
2987 reason.
2988 (Not Exiting Isearch): Describe search-exit-option. Add index
2989 entries.
2990 (Word Search): Describe eww-search-word and eww-search-prefix.
2991 (Symbol Search): Add index entries.
2992 (Regexp Search): Describe regexp-search-ring-max.
2993 (Replacement and Lax Matches): Renamed from "Replacement and
2994 Case"; all references changed. Describe lax-whitespace matching
2995 in replace commands and related options. Describe character
2996 folding in replace commands and related options.
2997 (Query Replace): Describe query-replace-from-to-separator and the
2998 new history features. Add index entries for highlighted text.
2999 Describe query-replace-skip-read-only. Describe more keys
3000 accepted by query-replace.
3001 (Other Repeating Search): More index entries for Occur. Describe
3002 list-matching-lines-default-context-lines.
3003 (Search Customizations): New section, documents customizable
3004 options that were not documented until now.
3005 * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
3006 "Character Folding".
3007
3008 * etc/NEWS: Move search- and replace-related entries to a single
3009 parent section.
3010
3011 * lisp/replace.el (query-replace-show-replacement): Doc fix.
3012 * lisp/isearch.el (search-nonincremental-instead)
3013 (isearch-hide-immediately): Doc fixes.
3014
3015 2015-11-25 Katsumi Yamaoka <yamaoka@jpl.org>
3016
3017 Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
3018
3019 * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove. See:
3020 <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
3021 <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
3022
3023 2015-11-25 Paul Eggert <eggert@cs.ucla.edu>
3024
3025 Fix module_format_fun_env when dynlib_addr fails
3026
3027 * src/emacs-module.c (module_format_fun_env):
3028 exprintf doesn’t support %p, so use %x. Reported by Eli Zaretskii in:
3029 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
3030
3031 2015-11-25 Paul Eggert <eggert@cs.ucla.edu>
3032
3033 Disambiguate variable help a bit better
3034
3035 * lisp/help-fns.el (describe-variable): Quote the
3036 variable’s value if it is a symbol other than t or nil.
3037 See: T.V Raman in:
3038 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
3039
3040 2015-11-24 Dmitry Gutov <dgutov@yandex.ru>
3041
3042 Pass SVN commit message through log-edit-extract-headers
3043
3044 * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
3045 log-edit-extract-headers (bug#18954).
3046
3047 2015-11-24 Alan Mackenzie <acm@muc.de>
3048
3049 CC Mode: Eliminate compiler warning messages.
3050
3051 * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
3052 `font-lock-syntactic-keywords' (which CC Mode doesn't use).
3053 * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
3054 (c-awk-set-syntax-table-properties): Clarify comments about
3055 `font-lock-syntactic-keywords'.
3056
3057 * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
3058 of this before the real (interpreted) one, to satisfy the byte compiler.
3059
3060 2015-11-24 Simen Heggestøyl <simenheg@gmail.com>
3061
3062 Extend the test suite for json.el
3063
3064 * lisp/json.el (json-plist-p): Clarify docstring.
3065
3066 * test/automated/json-tests.el (json-tests--with-temp-buffer): New
3067 macro.
3068 (test-json-join, test-json-alist-p)
3069 (test-json-plist-p, test-json-advance, test-json-peek)
3070 (test-json-pop, test-json-skip-whitespace)
3071 (test-json-read-keyword, test-json-encode-keyword)
3072 (test-json-read-number, test-json-encode-number)
3073 (test-json-read-escaped-char, test-json-read-string)
3074 (test-json-encode-string, test-json-encode-key)
3075 (test-json-new-object, test-json-add-to-object)
3076 (test-json-read-object, test-json-encode-list)
3077 (test-json-read-array, test-json-encode-array)
3078 (test-json-read, test-json-read-from-string)
3079 (test-json-encode): New tests.
3080 (json-read-simple-alist): Merged into `test-json-read-object'.
3081 (json-encode-string-with-special-chars): Merged into
3082 `test-json-encode-string'.
3083 (json-read-string-with-special-chars): Split into
3084 `test-json-encode-string' and `test-json-read-from-string'.
3085
3086 2015-11-24 Anders Lindgren <andlind@gmail.com>
3087
3088 Fixed bug#18283: Enable applescript in NextStep.
3089
3090 * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
3091
3092 2015-11-24 Eli Zaretskii <eliz@gnu.org>
3093
3094 Allow completion on dynamic module files in load-library
3095
3096 * lisp/files.el (load-library): Bind completion-ignored-extensions
3097 to nil, to allow completion on dynamic modules typed as file
3098 names. Reported by Andy Moreton <andrewjmoreton@gmail.com>.
3099
3100 2015-11-24 Alan Mackenzie <acm@muc.de>
3101
3102 CC Mode: eliminate almost all byte compilation warnings
3103
3104 * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
3105 (cc-require): Remove the crude hack that saved and restored
3106 byte-compile-noruntime-functions.
3107 (cc-conditional-require, cc-conditional-require-after-load): New macros.
3108
3109 * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
3110 cc-fix.el using the new macros in cc-bytecomp.el.
3111
3112 * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
3113 (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
3114 forms to remove the superflous quotes.
3115
3116 2015-11-24 Eli Zaretskii <eliz@gnu.org>
3117
3118 Add one more mod-test test
3119
3120 * modules/mod-test/test.el (mod-test-sum-test): Test the error
3121 signaled when the function is invoked with a wrong number of
3122 arguments.
3123
3124 2015-11-24 Philipp Stephani <phst@google.com>
3125
3126 * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
3127
3128 2015-11-24 Eli Zaretskii <eliz@gnu.org>
3129
3130 Implement dynlib_addr for MS-Windows
3131
3132 * src/dynlib.c [WINDOWSNT]: Include w32common.h.
3133 <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
3134 (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
3135 (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
3136 if undefined.
3137 (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
3138 zero.
3139 (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
3140 the full file name of the module for a given address.
3141
3142 2015-11-24 Alan Mackenzie <acm@muc.de>
3143
3144 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
3145
3146 2015-11-24 Alan Mackenzie <acm@muc.de>
3147
3148 Squashed commit of the following:
3149
3150 commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
3151 Author: Alan Mackenzie <acm@muc.de>
3152 Date: Tue Nov 24 16:50:09 2015 +0000
3153
3154 Byte compile: minor amendments.
3155
3156 * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
3157 add a comment to explain the binding of variables around a subsidiary
3158 compilation.
3159 (byte-compile-new-defuns): Amend the doc string.
3160
3161 commit c537bfed1dda1593d218956ff00c6105a3ff0316
3162 Author: Alan Mackenzie <acm@muc.de>
3163 Date: Sat Nov 21 18:43:57 2015 +0000
3164
3165 Byte compiler: fix spurious warnings "might not be defined at runtime".
3166
3167 Also initialize byte-compile-noruntime-functions between runs.
3168
3169 * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
3170 (byte-compile-initial-macro-environment): For eval-when-compile: bind
3171 byte-compile-unresolved-functions and byte-compile-new-defuns around
3172 byte-compile-top-level, to prevent spurious entries being made.
3173 (byte-compile-warn-about-unresolved-functions): Check whether function is
3174 in byte-compile-new-defuns before emitting a warning about it.
3175 (byte-compile-from-buffer): Initialize new variable and
3176 byte-compile-noruntime-functions to nil.
3177 (byte-compile-file-form-require): record all new functions defined by a
3178 `require' in byte-compile-new-defuns.
3179 (byte-compile-file-form-defmumble): record the new alias in
3180 byte-compile-new-defuns.
3181
3182 2015-11-24 Eli Zaretskii <eliz@gnu.org>
3183
3184 Fix crash at startup related to GC of font entities
3185
3186 * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
3187 (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
3188 (GC_XFONT_OBJECT): New macros, for use in garbage collector.
3189 * src/alloc.c (compact_font_cache_entry, compact_font_caches):
3190 Don't ifdef away font cache compaction on NT_GUI, as the problems
3191 which led to that seem to have been solved.
3192 (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
3193 GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
3194 cousins. (Bug#21999)
3195
3196 2015-11-24 Alan Mackenzie <acm@muc.de>
3197
3198 Byte compile: Output an error, not a warning, for odd number of args to setq
3199
3200 * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
3201
3202 2015-11-24 Ken Raeburn <raeburn@raeburn.org>
3203
3204 Fix kbd_buffer iteration loop in readable_events
3205
3206 * src/keyboard.c (readable_events): Wrap the event pointer back to the
3207 start of the kbd_buffer array inside the top of the loop instead of
3208 right before checking the loop condition, since kbd_fetch_ptr and
3209 kbd_store_ptr point past the end of the array to mean that element 0
3210 is next. (bug#21935)
3211
3212 2015-11-24 Paul Eggert <eggert@cs.ucla.edu>
3213
3214 Improve text-quoting-style doc again
3215
3216 * doc/lispref/help.texi (Keys in Documentation):
3217 Omit overkill discussion of ‘setq’. Mention Emacs versions
3218 where ‘grave’ style was standard.
3219
3220 2015-11-23 Paul Eggert <eggert@cs.ucla.edu>
3221
3222 Improve text-quoting-style doc
3223
3224 2015-11-23 Paul Eggert <eggert@cs.ucla.edu>
3225
3226 Simplify module_make_function
3227
3228 * src/emacs-module.c (module_make_function):
3229 Simplify by calling build_unibyte_string.
3230
3231 2015-11-23 Paul Eggert <eggert@cs.ucla.edu>
3232
3233 Port better to FreeBSD’s dlfunc vs dlsym
3234
3235 This avoids warnings when converting between void * and
3236 function pointers, which strict C11 does not allow.
3237 * configure.ac (dlfunc): Check for existence.
3238 * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
3239 (dynlib_func): New function.
3240 * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
3241 * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
3242 dynlib_sym, for function pointers.
3243
3244 2015-11-23 Paul Eggert <eggert@cs.ucla.edu>
3245
3246 Simplify use of emacs_finalizer_function type
3247
3248 * src/emacs-module.h (emacs_finalizer_function):
3249 Now EMACS_NOEXCEPT. All users simplified to omit EMACS_NOEXCEPT.
3250 (struct emacs_env_25): Use emacs_finalizer_function where applicable.
3251
3252 2015-11-23 Paul Eggert <eggert@cs.ucla.edu>
3253
3254 module_format_fun_env fixes
3255
3256 * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
3257 * src/emacs-module.c (module_format_fun_env):
3258 Convert path and sym to UTF-8.
3259 Don’t use VLAs, as the C11 standard says they’re optional,
3260 and anyway they can cause core dumps with large allocations.
3261 Use exprintf rather than snprintf, as exprintf handles arbitrarily
3262 long strings. Simplify the code a bit.
3263
3264 2015-11-23 Dmitry Gutov <dgutov@yandex.ru>
3265
3266 Don't use package-user-dir in elisp-library-roots if it's not bound
3267
3268 * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
3269 use package-user-dir if it's not bound (bug#19759).
3270
3271 2015-11-23 Anders Lindgren <andlind@gmail.com>
3272
3273 New visible-bell for NextStep (OS X El Capitan compatible).
3274
3275 Instead of inverting a rectangle in the middle of the frame, use
3276 the standard NextStep image "caution", represented using an
3277 warning sign with an exclamation mark. (Bug#21662)
3278
3279 Implemented based on a suggestion drafted by Mustafa Kocaturk.
3280
3281 * src/nsterm.m (EmacsBell): New class for managing the caution
3282 image. Support multiple active bells, the image is removed once
3283 all bells have timed out.
3284 (ns_timeout): Removed, no longer used.
3285 (ns_ring_bell): Reimplemented to use EmacsBell.
3286
3287 2015-11-23 Johan Bockgård <bojohan@gnu.org>
3288
3289 * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
3290
3291 (remove-function): Ditto. (Bug#20376)
3292
3293 2015-11-23 Mark Oteiza <mvoteiza@udel.edu>
3294
3295 * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
3296
3297 2015-11-23 Eli Zaretskii <eliz@gnu.org>
3298
3299 Improve how non-ASCII strings are accepted from modules
3300
3301 * src/emacs-module.c (module_make_function, module_make_string):
3302 Build a unibyte Lisp string and then decode it by UTF-8, instead
3303 of building a multibyte string without decoding. This is more
3304 tolerant to deviations from UTF-8.
3305
3306 2015-11-23 Paul Eggert <eggert@cs.ucla.edu>
3307
3308 Port recent module changes to pickier compilers
3309
3310 * src/emacs-module.c (module_make_function)
3311 (module_make_string): Add casts to fix pointer signedness issues.
3312
3313 2015-11-23 Philipp Stephani <phst@google.com>
3314
3315 Fix how strings are accepted from modules
3316
3317 * emacs-module.c (module_make_function, module_make_string): Use
3318 make_multibyte_string.
3319 (module_copy_string_contents): Encode before reading the byte
3320 size. Return false if and only if an error occurred.
3321
3322 2015-11-23 Eli Zaretskii <eliz@gnu.org>
3323
3324 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
3325
3326 2015-11-23 Shakthi Kannan <shakthimaan@gmail.com>
3327
3328 Add the tamil-dvorak input method
3329
3330 * lisp/leim/quail/tamil-dvorak.el: New file. (Bug#21768)
3331
3332 * etc/NEWS: Mention the new input method.
3333
3334 2015-11-23 Martin Rudalics <rudalics@gmx.at>
3335
3336 Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
3337
3338 * src/frame.c (adjust_frame_size): Don't set
3339 FRAME_WINDOW_SIZES_CHANGED here ...
3340 * src/window.c (resize_frame_windows): ... but here, as suggested
3341 by Stefan Monnier. Also remove some dead code along the way.
3342
3343 2015-11-23 Alan Mackenzie <acm@muc.de>
3344
3345 * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
3346
3347 2015-11-23 Alan Mackenzie <acm@muc.de>
3348
3349 Signal an error when `setf' gets an odd number of arguments.
3350
3351 * lisp/emacs-lisp/gv.el (setf): Amend.
3352
3353 2015-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
3354
3355 * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
3356
3357 2015-11-23 Alan Mackenzie <acm@muc.de>
3358
3359 * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
3360
3361 2015-11-23 Alan Mackenzie <acm@muc.de>
3362
3363 Expunge occurrences of `setq' with an odd number of arguments.
3364
3365 * lisp/apropos.el (apropos-documentation):
3366 * lisp/obsolete/complete.el (PC-include-file-all-completions):
3367 * lisp/progmodes/compile.el (compilation-goto-locus):
3368 * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
3369 Insert missing nil at end of `setq' forms.
3370
3371 * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
3372 erroneous trailing variable name from a setq, thus allowing a compilation
3373 properly to track functions not defined at runtime.
3374
3375 2015-11-23 John Wiegley <johnw@newartisans.com>
3376
3377 Add a note about a questionable use of bool in xdisp.c
3378
3379 2015-11-23 Alan Mackenzie <acm@muc.de>
3380
3381 Issue a warning from the byte compiler on a malformed `setq' form.
3382
3383 Partly fixes bug#20241.
3384 * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
3385 `setq' form with an odd number of arguments is compiled.
3386
3387 2015-11-23 Alan Mackenzie <acm@muc.de>
3388
3389 Don't let cconv_convert insert a nil argument into a `setq' form.
3390
3391 Fixes bug#21983.
3392 * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
3393 argument into a `setq' when there're an odd number of args. This enables the
3394 byte compiler to issue a message in this case.
3395
3396 2015-11-23 Alan Mackenzie <acm@muc.de>
3397
3398 Signal an error when `setq' has an odd number of arguments. Fixes bug#20241.
3399
3400 * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
3401 (syms_of_eval): Add a DEFSYM for Qsetq.
3402
3403 2015-11-23 Martin Rudalics <rudalics@gmx.at>
3404
3405 * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
3406
3407 * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
3408
3409 2015-11-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
3410
3411 Add EUDC BBDB 3 entry in NEWS
3412
3413 * NEWS: Mention EUDC BBDB backend support for BBDB 3.
3414
3415 2015-11-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
3416
3417 Improve EUDC to BBDB 3 export
3418
3419 * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
3420 entry to single item. Add company conversion.
3421 * eudc-export.el (eudc-bbdbify-company): New function.
3422 (bbdb-parse-phone): Declare function.
3423 (eudc-bbdbify-phone): Add BBDB 3 support.
3424 (Bug#21971)
3425
3426 2015-11-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
3427
3428 Add BBDB 3 support for EUDC export
3429
3430 * eudc.el: Add bbdb-version defvar.
3431 (eudc--using-bbdb-3-or-newer-p): New function.
3432 * eudc-export.el (eudc-create-bbdb-record): Add support for
3433 bbdb-create-internal argument list changes introduced in BBDB 3.
3434 * eudcb-bbdb.el: Remove bbdb-version defvar.
3435 (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
3436 (Bug#21971)
3437
3438 2015-11-22 Eli Zaretskii <eliz@gnu.org>
3439
3440 Allow loading modules by 'load-file'
3441
3442 * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
3443 2nd arg, to avoid the "binding stack not balanced" error.
3444 (syms_of_lread) <module-file-suffix>: New Lisp variable.
3445
3446 * lisp/files.el (module-file-suffix): Declare.
3447 (load-file): Remove 'module-file-suffix' from
3448 'completion-ignored-extensions', to allow completion on modules.
3449
3450 * etc/NEWS: Mention 'module-file-suffix'.
3451
3452 2015-11-22 Eli Zaretskii <eliz@gnu.org>
3453
3454 Fix unoptimized builds
3455
3456 * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
3457 builds.
3458
3459 2015-11-22 Dmitry Gutov <dgutov@yandex.ru>
3460
3461 Work around the asynchronous-empty-diff problem
3462
3463 * lisp/vc/vc-rcs.el (vc-rcs-diff):
3464 * lisp/vc/vc-mtn.el (vc-mtn-diff):
3465 * lisp/vc/vc-hg.el (vc-hg-diff):
3466 * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
3467 do a synchronous process call (bug#21969).
3468
3469 2015-11-21 Karl Fogel <kfogel@red-bean.com>
3470
3471 Finish excising electric indent from `open-line'
3472
3473 * lisp/simple.el (open-line): Remove INTERACTIVE argument.
3474
3475 * test/automated/simple-test.el (open-line-indent, open-line-hook):
3476 Adjust accordingly.
3477
3478 This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
3479 (git commit c59353896) started. It turns out that having INTERACTIVE
3480 cause `post-self-insert-hook' to run (via `newline') meant `open-line'
3481 still had the electric indent behavior, as `post-self-insert-hook'
3482 normally contains `electric-indent-post-self-insert-function' ever
3483 since `electric-indent-mode' has been on by default. Tracing the code
3484 change in `open-line' is mildly twisty, because Artur Malabarba's
3485 earliest two commits of 24 Oct 2015 first removed the `interactive'
3486 form entirely (git commit 6939896e2) and then restored it with the new
3487 extra "p" already added (git commit bd4f04f86), such that there is no
3488 single-commit diff in which one sees the second "p" appear. Thus this
3489 change is effectively a reversion of parts of each of those commits.
3490
3491 This could close bug#21884, at least until further discussion.
3492
3493 2015-11-21 Dmitry Gutov <dgutov@yandex.ru>
3494
3495 Adhere closer to the "implicit tag name" definition
3496
3497 * lisp/progmodes/etags.el (etags-tags-completion-table):
3498 Adhere closer to the "implicit tag name" definition. Simplify
3499 the regexp. Search for the explicit tag name first, and when
3500 not found, search locally for the implicit one. (Bug#21934)
3501
3502 2015-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3503
3504 Unrevert most of regexp reentrancy abort patch
3505
3506 The problem was in:
3507 * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
3508 which is hence not unreverted.
3509 The rest is:
3510 * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
3511 (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
3512 All callers in regex.c changed back to the _FAST versions.
3513
3514 * test/automated/message-mode-tests.el: Tweak the test to rely on auto
3515 propertization in backward-sexp.
3516
3517 2015-11-21 Paul Eggert <eggert@cs.ucla.edu>
3518
3519 Revert regexp reentrancy abort patch
3520
3521 Although the patch does fix Bug#21688 and prevents a core dump,
3522 it also makes the message-mode-propertize test fail; see:
3523 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
3524 Perhaps someone else can come up with a better fix some day.
3525 * src/syntax.c (update_syntax_table_forward):
3526 Propertize even when truncated.
3527 * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
3528 (UPDATE_SYNTAX_TABLE_FAST): Remove.
3529 All callers changed back to the non-_FAST versions.
3530
3531 2015-11-21 Paul Eggert <eggert@cs.ucla.edu>
3532
3533 Add a few safety checks when ENABLE_CHECKING
3534
3535 This was motivated by the recent addition of module code,
3536 which added some ENABLE_CHECKING-enabled checks that are
3537 useful elsewhere too.
3538 * src/alloc.c (compact_font_cache_entry):
3539 * src/fns.c (sweep_weak_table):
3540 * src/lread.c (oblookup):
3541 Use gc_asize rather than doing it by hand.
3542 * src/emacs-module.c (module_make_global_ref)
3543 (module_free_global_ref, module_vec_size):
3544 Omit assertions that lisp.h now checks.
3545 * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
3546 check that the result is nonnegative. Use eassume, as this
3547 info can help a bit when optimizing production code.
3548 (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
3549 to be consistent with the USE_LSB_TAG case.
3550 (gc_asize): New function, when ASIZE is needed in the gc.
3551 (gc_aset): Use it.
3552 (HASH_TABLE_P): Move definition up, so that it can be used ...
3553 (XHASH_TABLE): ... here, to assert that the arg is a hash table.
3554
3555 2015-11-21 Eli Zaretskii <eliz@gnu.org>
3556
3557 Simplify recording of main thread's ID on MS-Windows
3558
3559 * src/w32term.c (w32_initialize):
3560 * src/w32console.c (initialize_w32_display):
3561 * src/w32fns.c (globals_of_w32fns): Don't record the main thread
3562 ID independently for each type of session (GUI, TTY, batch).
3563 * src/w32term.c (w32_init_main_thread): New function, records the
3564 main thread's thread ID.
3565 * src/w32term.h: Add prototype for w32_init_main_thread.
3566 * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
3567
3568 * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
3569 main_thread, for consistency with other threading libraries. All
3570 users changed. Include w32term.h.
3571 (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
3572 make sure the main thread is alive, as we hold a handle on it
3573 opened by w32_init_main_thread.
3574 (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
3575 w32_init_main_thread, instead of calling the requisite APIs once
3576 more.
3577
3578 2015-11-21 Eli Zaretskii <eliz@gnu.org>
3579
3580 Call 'window-size-change-functions' for mini-windows
3581
3582 * src/window.c (grow_mini_window, shrink_mini_window): Set the
3583 frame's 'window_sizes_changed' flag.
3584 * src/xdisp.c (redisplay_internal): Call the hooks on
3585 'window-size-change-functions' if the call to 'echo_area_display'
3586 sets the frame's 'window_sizes_changed' flag.
3587 (syms_of_xdisp) <window-size-change-functions>:
3588 Update doc string to indicate the mini-window resizes trigger a
3589 call to the hooks, and don't promise that will happen "before
3590 redisplay". (Bug#19576, Bug#21333)
3591
3592 * doc/lispref/windows.texi (Window Hooks): Update the description
3593 of 'window-size-change-functions'.
3594
3595 2015-11-21 Eli Zaretskii <eliz@gnu.org>
3596
3597 Improve documentation of dynamic modules
3598
3599 * src/fns.c (Frequire): Doc fix to include the dynamic module
3600 support.
3601 * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
3602 dynamic module support.
3603 (Fload): Treat the module suffix the same as '*.el' and '*.elc'
3604 wrt the MUST-SUFFIX argument.
3605
3606 * etc/NEWS: Expand documentation of dynamically loaded modules.
3607
3608 2015-11-21 Philipp Stephani <phst@google.com> (tiny change)
3609
3610 Initial documentation for dynamic modules
3611
3612 * etc/NEWS: Mention the new support for dynamically loaded modules.
3613
3614 2015-11-20 Dmitry Gutov <dgutov@yandex.ru>
3615
3616 Add xref--etags-backend to xref-backing-functions using add-hook
3617
3618 * lisp/progmodes/xref.el (xref-backend-functions): Move the
3619 default value into a separate `add-hook' call (bug#21964).
3620
3621 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
3622 Don't declare the xref-backend-functions variable.
3623 It doesn't make any difference.
3624
3625 2015-11-20 Paul Eggert <eggert@cs.ucla.edu>
3626
3627 Fix double-decrement bug when freeing global refs
3628
3629 * src/emacs-module.c (module_free_global_ref): Add a FIXME
3630 comment about error reporting. Fix a recently-introduced typo
3631 that double-decremented the refcount.
3632
3633 2015-11-20 Paul Eggert <eggert@cs.ucla.edu>
3634
3635 Declare emacs_module_init in the module API
3636
3637 * src/emacs-module.h (emacs_module_init): New decl.
3638 Without it, GCC might complain about a module that defines
3639 emacs_module_init without using it. This also checks the
3640 API better.
3641
3642 2015-11-20 Paul Eggert <eggert@cs.ucla.edu>
3643
3644 Fix module test to use ptrdiff_t nargs too
3645
3646 * modules/mod-test/mod-test.c (Fmod_test_return_t)
3647 (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
3648 (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
3649 (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
3650 (Fmod_test_userptr_get, Fmod_test_vector_fill)
3651 (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
3652 (finalizer): Remove; no longer used.
3653
3654 2015-11-20 Paul Eggert <eggert@cs.ucla.edu>
3655
3656 Fix reindent-introduced typo in module code
3657
3658 * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
3659 introduced while reindenting the code earlier, and add a
3660 comment explaining the unusual use of do-while here.
3661
3662 2015-11-20 Anders Lindgren <andlind@gmail.com>
3663
3664 Fixed bug#19576: `write-file' saves wrong buffer.
3665
3666 If a function on the hook `window-size-change-functions' doesn't
3667 restore the current buffer, functions that save and restore the
3668 current window configuration (like `y-or-no-p') could silently
3669 change the current buffer. When `write-file' asked the user
3670 confirmation to overwrite a file, `y-or-no-p' changed the current
3671 buffer, and the wrong buffer was saved to the file.
3672
3673 * lisp/follow.el (follow-windows-start-end): Call `select-frame'
3674 using the `norecord' parameter.
3675 (follow-window-size-change): Restore current buffer. Call
3676 `select-frame' using the `norecord' parameter. Cleanup.
3677
3678 2015-11-20 John Wiegley <johnw@newartisans.com>
3679
3680 Correct a documentation error in frames.texi
3681
3682 2015-11-20 Stephen Leake <stephen_leake@stephe-leake.org>
3683
3684 * lisp/cedet/mode-local.el: Delete obsolete comment
3685
3686 2015-11-20 Paul Eggert <eggert@cs.ucla.edu>
3687
3688 Module function arg counts are ptrdiff_t, not int
3689
3690 * src/emacs-module.c (struct module_fun_env)
3691 (module_make_function, module_funcall, Fmodule_call):
3692 * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
3693 Use ptrdiff_t, not int, for arg counts.
3694 * src/emacs-module.c (module_make_function): Don’t bother
3695 checking arity against MOST_POSITIVE_FIXNUM, as that’s
3696 unnecessary here. Make the checking clearer by negating it.
3697 (module_make_function, Fmodule_call): No need to use xzalloc
3698 since the storage doesn’t need to be cleared.
3699 (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
3700 for it, and many implementations are buggy with large VLAs anyway.
3701 Use SAFE_ALLOCA_LISP instead.
3702 (module_vec_set): Don’t crash if i < 0.
3703 (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
3704 (module_vec_set, module_vec_get): Do fixnum checks only when
3705 i is out of array bounds, for efficiency in the usual case.
3706 (Fmodule_load): Simplify fixnum range check.
3707 (Fmodule_call): Simplify arity check. Use xnmalloc to detect
3708 integer overflow in array allocation size.
3709
3710 2015-11-20 Eli Zaretskii <eliz@gnu.org>
3711
3712 Minor improvements in module test
3713
3714 * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
3715 about missing prototype of malloc.
3716 * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
3717 compiler warnings.
3718
3719 2015-11-20 Eli Zaretskii <eliz@gnu.org>
3720
3721 Improve MS-Windows implementation in dynlib.c
3722
3723 * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
3724 No need to include windows.h, as w32.h already does that.
3725 <dynlib_last_err>: New static variable.
3726 (dynlib_reset_last_error): New function.
3727 (dynlib_open): Convert forward slashes to backslashes. Convert
3728 file names from UTF-8 to either UTF-16 or the current ANSI
3729 codepage, and call either LoadLibraryW or LoadLibraryA. If the
3730 argument is NULL, return a handle to the main module, like
3731 'dlopen' does. Record the error, if any, for use by dynlib_error.
3732 (dynlib_sym): Check the handle for validity. Record the error, if
3733 any, for use by dynlib_error.
3734 (dynlib_error): Call w32_strerror to produce the error string, and
3735 zero out the last error code, like dlerror does.
3736 (dynlib_close): Check the handle for validity. Record the error,
3737 if any, for use by dynlib_error. Don't call FreeLibrary with a
3738 handle for the main module.
3739 * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
3740
3741 2015-11-20 Paul Eggert <eggert@cs.ucla.edu>
3742
3743 Include-file tweaks for modules
3744
3745 * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
3746 * src/dynlib.h: Do not include config.h.
3747 It’s every .c file’s responsibility to include config.h first.
3748 * src/emacs-module.c: Include emacs-module.h immediately after
3749 config.h, to test that emacs-module.h doesn’t depend on
3750 include files other than config.h.
3751
3752 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3753
3754 Simplify push_handler and profile its malloc
3755
3756 * src/lisp.h (PUSH_HANDLER): Remove.
3757 All callers changed to use push_handler directly.
3758 * src/eval.c (internal_condition_case)
3759 (internal_condition_case_1, internal_condition_case_2)
3760 (internal_condition_case_n):
3761 Use same pattern as for other invokers of push_handler.
3762 (push_handler, push_handler_nosignal): Use call-by-value
3763 instead of call-by-reference. All uses changed.
3764 (push_handler): Simplify by rewriting in terms of
3765 push_handler_nosignal.
3766 (push_handler_nosignal): Profile any newly allocated memory.
3767
3768 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3769
3770 * src/emacs-module.h: Include stddef.h, not stdlib.h.
3771
3772 2015-11-19 Juanma Barranquero <lekktu@gmail.com>
3773
3774 Discover repository version in linked worktrees (bug#21930)
3775
3776 * lisp/version.el (emacs-repository--version-git-1): Do not assume
3777 HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
3778 (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
3779 is nil too.
3780
3781 2015-11-19 Juri Linkov <juri@linkov.net>
3782
3783 * lisp/replace.el (occur-regexp-descr): New function.
3784 (occur-1, occur-engine): Use it.
3785
3786 * lisp/isearch.el (isearch-occur): Propertize regexp with
3787 isearch-string and isearch-regexp-function-descr for
3788 occur-regexp-descr to display the correct description
3789 message in the header (bug#21176, bug#21180).
3790
3791 2015-11-19 Karl Fogel <kfogel@red-bean.com>
3792
3793 Revert `open-line' electric-indent sensitivity
3794
3795 * lisp/simple.el (open-line): Remove electric indent code.
3796 (electric-indent-just-newline): Don't declare.
3797
3798 * test/automated/simple-test.el (open-line-indent): Adjust test.
3799
3800 This partly reverts Artur Malabarba's change that added electric
3801 indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
3802 commit bd4f04f86), and adjusts a new test he added right afterwards
3803 (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
3804 However, the new INTERACTIVE argument to `open-line', which he also
3805 added in the first commit, is not reverted here.
3806
3807 See the thread "Questioning the new behavior of `open-line'." on the
3808 Emacs Devel mailing list, and in particular this message:
3809
3810 From: Artur Malabarba
3811 Subject: Re: Questioning the new behavior of `open-line'.
3812 To: Karl Fogel
3813 Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
3814 Date: Wed, 18 Nov 2015 21:03:58 +0000
3815 Message-ID: \
3816 <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
3817
3818 https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
3819
3820 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3821
3822 Omit unnecessary clear in Fmodule_load
3823
3824 * src/emacs-module.c (Fmodule_load):
3825 Simplify and avoid unnecessary initialization of priv member to 0.
3826
3827 * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
3828
3829 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3830
3831 Prefer signed integer types in module code
3832
3833 Generally speaking, at the C level the Emacs source code prefers
3834 signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
3835 partly to avoid the usual signedness confusion when comparing values.
3836 Change the module API to follow this convention.
3837 Use ‘int’ for small values that can’t exceed INT_MAX.
3838 * modules/mod-test/mod-test.c (Fmod_test_globref_make)
3839 (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
3840 (Fmod_test_vector_eq):
3841 * src/emacs-module.c (struct emacs_value_frame)
3842 (module_make_global_ref, module_free_global_ref)
3843 (module_copy_string_contents, module_make_string)
3844 (module_vec_set, module_vec_get, module_vec_size):
3845 * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
3846 * src/lread.c (suffix_p):
3847 Prefer signed to unsigned integer types.
3848
3849 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3850
3851 Omit ‘const’ on locals
3852
3853 Remove ‘const’ qualifier from locals that were newly added.
3854 We don’t normally bother declaring locals with ‘const’ even
3855 though they are not modified, for the same reason we don’t
3856 bother declaring them with ‘register’ even though their
3857 addresses are not taken; the advantage in compile-time
3858 checking isn’t worth the loss of readability.
3859 * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
3860 (Fmod_test_vector_fill, Fmod_test_vector_eq):
3861 * src/emacs-module.c (MODULE_SETJMP_1)
3862 (module_make_global_ref, module_free_global_ref)
3863 (module_non_local_exit_get, module_make_function)
3864 (module_extract_integer, module_extract_float)
3865 (module_get_user_ptr, module_set_user_ptr)
3866 (module_get_user_finalizer, module_set_user_finalizer)
3867 (module_vec_get, Fmodule_call)
3868 (module_non_local_exit_signal_1)
3869 (module_non_local_exit_throw_1, lisp_to_value)
3870 (finalize_storage, allocate_emacs_value, mark_modules)
3871 (module_handle_signal, module_handle_throw)
3872 (module_format_fun_env):
3873 * src/eval.c (push_handler, push_handler_nosignal)
3874 (init_handler):
3875 * src/lread.c (suffix_p):
3876 Omit unnecessary ‘const’.
3877
3878 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3879
3880 Prefer intmax_t to int64_t in module code
3881
3882 * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
3883 * src/emacs-module.c (module_extract_integer)
3884 (module_make_integer):
3885 * src/emacs-module.h (struct emacs_env_25):
3886 Prefer intmax_t to int64_t. This doesn’t change the generated
3887 code on any of the machines Emacs currently ports to, but it’s
3888 at least in theory more future-proof as C99 doesn’t guarantee
3889 that int64_t exists.
3890
3891 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3892
3893 Rename module.c to emacs-module.c, etc.
3894
3895 * src/emacs-module.c: Rename from src/module.c.
3896 * src/emacs-module.h: Rename from src/module.h.
3897 All uses changed.
3898
3899 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3900
3901 Fix minor module problems found by static checking
3902
3903 * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
3904 * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
3905 * src/module.c (Fmodule_load): Fix pointer signedness bug.
3906 (Fmodule_call): Tell GCC that the default case is unreachable.
3907
3908 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3909
3910 Style fixes for indenting etc. in module code
3911
3912 This is mostly indenting and spacing changes. Also, remove
3913 some unnecessary static decls instead of bothering to reindent them.
3914 * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
3915 as most other Emacs files do for this sort of thing.
3916
3917 2015-11-19 Eli Zaretskii <eliz@gnu.org>
3918
3919 Minor improvements in modules testing Makefile
3920
3921 * modules/mod-test/Makefile (EMACS, SO): New variables.
3922 (CFLAGS): When SO = dll, don't use -fPIC.
3923 (check): New target, runs the test.
3924
3925 2015-11-19 Eli Zaretskii <eliz@gnu.org>
3926
3927 * .gitignore: Add "*.dll".
3928
3929 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3930
3931 Migrate modules/.gitignore into .gitignore
3932
3933 * .gitignore: Add former contents of modules/.gitignore.
3934 * modules/.gitignore: Remove.
3935
3936 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3937
3938 Add copyright notices to module code
3939
3940 Put them in the usual format for GNU Emacs copyright notices.
3941
3942 2015-11-19 Paul Eggert <eggert@cs.ucla.edu>
3943
3944 Rename emacs_module.h to module.h
3945
3946 * src/module.h: Rename from src/emacs_module.h.
3947 All uses changed.
3948
3949 2015-11-19 Juanma Barranquero <lekktu@gmail.com>
3950
3951 * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
3952
3953 * src/lread.c (Fload): Remove unused variable `size'
3954
3955 2015-11-19 Alan Mackenzie <acm@muc.de>
3956
3957 src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
3958
3959 2015-11-18 Dmitry Gutov <dgutov@yandex.ru>
3960
3961 Prioritize looking inside vc-parent-buffer over log-view-mode fallback
3962
3963 * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
3964 vc-parent-buffer over log-view-mode fallback (bug#21955).
3965
3966 2015-11-18 Alan Mackenzie <acm@muc.de>
3967
3968 lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
3969
3970 2015-11-18 Ken Brown <kbrown@cornell.edu>
3971
3972 * configure.ac (LIBMODULES): Don’t define on Cygwin
3973
3974 2015-11-18 Eli Zaretskii <eliz@gnu.org>
3975
3976 Fix MS-Windows build --with-modules
3977
3978 * src/module.c: Reformat copyright commentary.
3979 (module_vec_get): Use explicit cast to size_t to avoid compiler
3980 warning in 32-bit builds.
3981 (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
3982 Compare thread IDs directly, as GetThreadId is not available
3983 before Windows Vista.
3984 (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
3985 without using APIs and constants not available on XP and older
3986 systems. Obtain and store the thread ID as well.
3987
3988 2015-11-18 Aurélien Aptel <aurelien.aptel@gmail.com>
3989 Philipp Stephani <phst@google.com>
3990
3991 Add dynamic module test and helper script
3992
3993 Add 'modhelp.py' script (python2) to automate module testing and
3994 module generation.
3995
3996 To build and test all modules in the modules/ dir
3997 $ ./modhelp.py test
3998
3999 To generate a module from template code (good starting point)
4000 $ ./modhelp init mynewtestmodule
4001
4002 See the script -h option for more documentation.
4003
4004 * modules/modhelp.py: New module helper script.
4005 * modules/mod-test/Makefile: New file. Makefile for the test module.
4006 * modules/mod-test/mod-test.c: New file. Test module source file.
4007 * modules/mod-test/test.el: New file. ert test suite for the test module.
4008 * modules/.gitignore: New file. Local .gitignore file.
4009
4010 2015-11-18 Aurélien Aptel <aurelien.aptel@gmail.com>
4011
4012 Make 'Fload' look for modules
4013
4014 'Fload' can now load dynamic modules. This also makes 'require' work.
4015
4016 * src/lread.c:
4017 (suffix_p): New function.
4018 (Fload): Use 'suffix_p'. Call 'Fmodule_load' when we try to load a file
4019 with a module suffix.
4020 (syms_of_lread): Append module suffix to 'Vload_suffixes'.
4021
4022 2015-11-18 Aurélien Aptel <aurelien.aptel@gmail.com>
4023 Philipp Stephani <phst@google.com>
4024
4025 Add dynamic module module support
4026
4027 * configure.ac: Add '--with-modules' option. Conditionally add
4028 dynlib.o and module.o to the list of objects. Add any system
4029 specific flags to the linker flags to support dynamic libraries.
4030 * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
4031 attributes.
4032 * src/Makefile.in: Conditionally add module objects and linker flags.
4033 * src/alloc.c (garbage_collect_1): protect module local values from
4034 GC.
4035 * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
4036 * src/emacs_module.h: New header file included by modules. Public
4037 module API.
4038 * src/module.c: New module implementation file.
4039
4040 2015-11-18 Aurélien Aptel <aurelien.aptel@gmail.com>
4041
4042 Add new User Pointer (User_Ptr) type
4043
4044 * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
4045 (XUSER_PTR): New User_Ptr accessor.
4046 * src/alloc.c (make_user_ptr): New function.
4047 (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
4048 * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
4049 (Fuser-ptrp): New user pointer type predicate function.
4050 (syms_of_data): New 'user-ptrp', 'user-ptr' symbol. New 'user-ptrp'
4051 subr.
4052 * src/print.c (print_object): Add printer for User_Ptr type.
4053
4054 2015-11-18 Aurélien Aptel <aurelien.aptel@gmail.com>
4055 Philipp Stephani <phst@google.com>
4056
4057 Add portable layer for dynamic loading
4058
4059 * src/dynlib.h: New file.
4060 * src/dynlib.c: New file.
4061
4062 2015-11-18 Philipp Stephani <phst@google.com>
4063
4064 Add catch-all & no-signal version of PUSH_HANDLER
4065
4066 Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
4067 a new "catch-all" handler type.
4068
4069 * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
4070 functions.
4071 * src/fns.c (hash_remove_from_table): Expose function public.
4072 * src/lisp.h: New handler type, define macro to push_handler call.
4073
4074 2015-11-18 Ken Brown <kbrown@cornell.edu>
4075
4076 Silence byte-compiler warning
4077
4078 * lisp/server.el (server-process-filter): Silence byte-compiler
4079 warning.
4080
4081 2015-11-18 Paul Eggert <eggert@cs.ucla.edu>
4082
4083 Quote symbols in docstrings using `'
4084
4085 Be more systematic about quoting symbols `like-this' rather than
4086 `like-this or 'like-this' in docstrings. This follows up Artur
4087 Malabarba's email in:
4088 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
4089
4090 2015-11-18 Peder O. Klingenberg <peder@klingenberg.no>
4091
4092 Fix savegames in dunnet
4093
4094 * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
4095 of separate implementation.
4096
4097 2015-11-18 Artur Malabarba <bruce.connor.am@gmail.com>
4098
4099 * lisp/emacs-lisp/package.el (package--with-response-buffer):
4100
4101 Ensure we're at the start of the buffer before searching for
4102 the end of headers.
4103
4104 2015-11-17 Xue Fuqiao <xfq.free@gmail.com>
4105
4106 * admin/release-process: Improve wording.
4107
4108 2015-11-17 Paul Eggert <eggert@cs.ucla.edu>
4109
4110 Fix docstring quoting problems with ‘ '’
4111
4112 Problem reported by Artur Malabarba in:
4113 http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
4114 Most of these fixes are to documentation; many involve fixing
4115 longstanding quoting glitches that are independent of the
4116 recent substitute-command-keys changes. The changes to code are:
4117 * lisp/cedet/mode-local.el (mode-local-augment-function-help)
4118 (describe-mode-local-overload):
4119 Substitute docstrings before displaying them.
4120 * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
4121 Quote the generated docstring for later substitution.
4122
4123 2015-11-17 Eli Zaretskii <eliz@gnu.org>
4124
4125 Improve configure --help text for wide ints
4126
4127 * configure.ac (wide-int): Clarify user-level advantages and
4128 disadvantages.
4129
4130 2015-11-17 Stephen Leake <stephen_leake@stephe-leake.org>
4131
4132 Improve doc string
4133
4134 * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
4135
4136 2015-11-17 Paul Eggert <eggert@cs.ucla.edu>
4137
4138 eval_sub followed dangling pointer when debugging
4139
4140 Problem reported by Pip Cet (Bug#21245).
4141 This bug could occur in eval_sub if the C compiler reused
4142 storage associated with the ‘argvals’ local after ‘argvals’
4143 went out of scope, and if the Elisp debugger stopped on Elisp
4144 function exit and accessed ‘argvals’. It could also occur if
4145 a variadic function was called with so many arguments (over
4146 2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
4147 SAFE_FREE freed the arguments, then the memory manager used
4148 the storage for other purposes, then the debugger accessed the
4149 arguments.
4150 * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
4151 function body. Simplify local decls.
4152 When allocating args via SAFE_ALLOCA, call
4153 debugger before invoking SAFE_FREE, as the debugger needs
4154 access to the args.
4155 (eval_sub, apply_lambda): Rework to avoid need for
4156 set_backtrace_debug_on_exit hack. This is cleaner,
4157 and should work better with buggy custom debuggers.
4158
4159 2015-11-16 Daiki Ueno <ueno@gnu.org>
4160
4161 * lisp/image-mode.el: Support encrypted file
4162
4163 (image-toggle-display-image): Read content from the buffer instead
4164 of the file, if the buffer holds a decrypted data. (Bug#21870)
4165
4166 2015-11-16 Paul Eggert <eggert@cs.ucla.edu>
4167
4168 ELF unexec: align section header
4169
4170 This ports the recent unexelf.c changes to Fedora x86-64
4171 when configured with GCC’s -fsanitize=undefined option.
4172 * src/unexelf.c (unexec): Align new_data2_size to a multiple
4173 of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
4174 pointer aligned appropriately for its type.
4175
4176 2015-11-16 Andreas Schwab <schwab@linux-m68k.org>
4177
4178 Do more checks on bytecode objects (Bug#21929)
4179
4180 * src/eval.c (funcall_lambda): Check size of compiled function
4181 object.
4182 (Ffetch_bytecode): Likewise.
4183
4184 2015-11-16 Johan Bockgård <bojohan@gnu.org>
4185
4186 pcase.el: Fix edebugging of backquoted cons patterns
4187
4188 * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
4189 cons patterns. (Bug#21920)
4190
4191 2015-11-16 Paul Eggert <eggert@cs.ucla.edu>
4192
4193 Improve fix for regex reentrancy abort
4194
4195 Suggested by Stefan Monnier (Bug#21688).
4196 * src/syntax.c (update_syntax_table_forward):
4197 Remove recently-added PROPERTIZE arg, and assume it is true.
4198 All callers changed.
4199 * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
4200 Invoke update_syntax_table directly.
4201
4202 2015-11-16 Artur Malabarba <bruce.connor.am@gmail.com>
4203
4204 * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
4205
4206 * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
4207
4208 * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
4209
4210 2015-11-15 Vasily Korytov <vasily.korytov@yahoo.com>
4211
4212 Recognize .rbw and .pyw files (bug#18753)
4213
4214 * lisp/progmodes/python.el (auto-mode-alist):
4215 Recognize .pyw files.
4216
4217 * lisp/progmodes/ruby-mode.el (auto-mode-alist):
4218 Recognize .rbw files.
4219
4220 2015-11-15 Dmitry Gutov <dgutov@yandex.ru>
4221
4222 Fix ruby-mode auto-mode-alist entry
4223
4224 * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
4225 around the extensions (bug#21257).
4226
4227 2015-11-15 Dmitry Gutov <dgutov@yandex.ru>
4228
4229 Fix etags completion near eob
4230
4231 * lisp/progmodes/etags.el (tags-completion-at-point-function):
4232 Use `goto-char', to avoid the end-of-buffer error (bug#20061).
4233
4234 2015-11-15 Alan Mackenzie <acm@muc.de>
4235
4236 De-pessimize detection of C++ member initialization lists.
4237
4238 list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
4239 (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
4240 is only called when a construct "looks right" rather than continually.
4241 (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
4242
4243 2015-11-15 Stephen Leake <stephen_leake@stephe-leake.org>
4244
4245 Improve a few doc strings, comments
4246
4247 * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
4248 * lisp/cedet/ede/locate.el (ede-locate-base):
4249 * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
4250 * src/fns.c (Fdelq): Improve doc string.
4251
4252 * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
4253
4254 2015-11-15 Anders Lindgren <andlind@gmail.com>
4255
4256 Enhance NSTRACE (trace output for NextStep).
4257
4258 Trace can be disabled for groups of functions. By default, event
4259 functions and functions that generate lots of output are disabled.
4260
4261 Trace output of Objective-C functions now use the "[ClassName
4262 parameter:]" form.
4263
4264 * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
4265 (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
4266 (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
4267 controlling in which function groups trace should be active.
4268 (NSTRACE_WHEN): Support for silencing a function, this also
4269 silencing all called functions.
4270 (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
4271 (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
4272 print the full screen state in NSTRACE functions.
4273
4274 * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
4275 can be accessed from multiple threads.
4276 (nstrace_enabled_global): New variable, when FALSE, trace is
4277 silenced.
4278 (nstrace_restore_global_trace_state): New function, used to
4279 restore `nstrace_enabled_global' at end of block.
4280 ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
4281 ([EmacsWindow setFrame:display:animation:])
4282 ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
4283 and call corresponding super function.
4284 (Many functions): Add or enhance trace output.
4285
4286 * src/nsimage.m (ns_image_from_file): Enhanced trace output.
4287
4288 * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
4289
4290 * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
4291 and call corresponding super function.
4292
4293 2015-11-15 Anders Lindgren <andlind@gmail.com>
4294
4295 Fixed a toolbar related issue on OS X.
4296
4297 Earlier, when toggling the tool-bar in a maximized frame, the
4298 frame size didn't match the number of text lines, leaving an
4299 unused area at the bottom of the frame.
4300
4301 * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
4302 fullscreen modes when tool bar is disabled.
4303
4304 2015-11-15 Anders Lindgren <andlind@gmail.com>
4305
4306 Fixed OS X 10.6.8 build issue (bug#21862).
4307
4308 * src/nsterm.h (EmacsView): Add missing declarations.
4309 * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
4310 the standard method but without the notification parameter.
4311 Intended to be used for direct calls.
4312 ([EmacsView windowDidEnterFullScreen]): Call the non-notification
4313 version of `windowDidBecomeKey'. Made the notification method call
4314 the non-notification method instead of the vice versa.
4315 (NSWindowDidEnterFullScreenNotification): Deleted, no longer
4316 needed.
4317
4318 2015-11-15 Artur Malabarba <bruce.connor.am@gmail.com>
4319
4320 * lisp/faces.el (faces--attribute-at-point): Fix an issue
4321
4322 Previous code would signal an error when the face at point was
4323 a manually built list of attributes such as '(:foregroud "white").
4324
4325 * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
4326
4327 2015-11-15 Paul Eggert <eggert@cs.ucla.edu>
4328
4329 Fix regex abort when it tries to reenter itself
4330
4331 Problem reported by Ken Raeburn.
4332 Solution suggested by Stefan Monnier (Bug#21688).
4333 * src/regex.c (re_match_2_internal):
4334 Use new _FAST functions to avoid regex code reentering itself.
4335 * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
4336 All callers changed.
4337 * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
4338 (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
4339
4340 2015-11-15 Dmitry Gutov <dgutov@yandex.ru>
4341
4342 Improve Ruby 1.9-style keyword keys highlighting
4343
4344 * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
4345 Handle required keyword arguments (bug#21367).
4346 And highlight the colon together with the name.
4347
4348 2015-11-15 Dmitry Gutov <dgutov@yandex.ru>
4349
4350 Unify the absolutely equal xref-backend-references implementations
4351
4352 * lisp/progmodes/elisp-mode.el (xref-backend-references):
4353 Remove.
4354
4355 * lisp/progmodes/etags.el (xref-backend-references):
4356 Remove.
4357
4358 * lisp/progmodes/xref.el (xref-backend-references):
4359 Define the default implementation.
4360
4361 2015-11-14 Dmitry Gutov <dgutov@yandex.ru>
4362
4363 Update project-find-regexp for the new xref API
4364
4365 * lisp/progmodes/project.el (project--read-regexp):
4366 Update to use the new xref API methods.
4367
4368 * lisp/progmodes/xref.el (xref-find-backend): Autoload.
4369
4370 2015-11-14 Dmitry Gutov <dgutov@yandex.ru>
4371
4372 Fix replacing a match with a shorter string
4373
4374 In effect, partially reverting fe973fc.
4375
4376 * lisp/progmodes/xref.el (xref-query-replace): Store the end
4377 of each match as a marker again, instead of length.
4378 (xref--query-replace-1): Update accordingly.
4379
4380 2015-11-14 Artur Malabarba <bruce.connor.am@gmail.com>
4381
4382 * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
4383
4384 Signal user-errors instead.
4385
4386 2015-11-14 Eli Zaretskii <eliz@gnu.org>
4387
4388 Document 'describe-symbol'
4389
4390 * doc/emacs/help.texi (Help Summary): Mention "C-h o".
4391 (Name Help): Document "C-h o" and describe-symbol.
4392
4393 * lisp/help-fns.el (describe-symbol): Doc fix.
4394
4395 2015-11-14 Paul Eggert <eggert@cs.ucla.edu>
4396
4397 Change test name to avoid spellcheck issue.
4398
4399 2015-11-14 Eli Zaretskii <eliz@gnu.org>
4400
4401 Avoid signaling an error in 'describe-symbol'
4402
4403 * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
4404 exists as a function/variable/face/etc., but is undocumented.
4405
4406 * test/automated/help-fns.el (help-fns-test-describe-symbol): New
4407 test.
4408
4409 2015-11-14 Eli Zaretskii <eliz@gnu.org>
4410
4411 * INSTALL (--with-cairo): Document this new configure option.
4412
4413 2015-11-14 Eli Zaretskii <eliz@gnu.org>
4414
4415 Document that GNU Make >= 3.81 is required to build Emacs
4416
4417 * doc/lispref/internals.texi (Building Emacs): Document that GNU
4418 Make 3.81 or later is now required.
4419
4420 2015-11-14 Eli Zaretskii <eliz@gnu.org>
4421
4422 * CONTRIBUTE (Branches): Improve wording for back-ported commits.
4423
4424 2015-11-13 l3thal <kwhite@gnu.org>
4425
4426 Merge branch 'erc-async-reconnect' into emacs-25
4427
4428 Reconnect asynchronously.
4429
4430 2015-11-11 Alan Mackenzie <acm@muc.de>
4431
4432 First commit to scratch/follow. Make Isearch work with Follow Mode, etc.
4433
4434 doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
4435 Windows" and new @defun selected-window-group.
4436 (Window Start and End): Describe new &optional parameter GROUP and
4437 ...-group-function for window-start, window-end, set-window-start, and
4438 pos-visible-in-window-p.
4439 (Textual Scrolling) Describe the same for recenter.
4440 doc/lispref/positions.texi (Screen Lines): Describe the same for
4441 move-to-window-line.
4442
4443 src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
4444 (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
4445 new optional parameter "group". At the beginning of each, check whether the
4446 corresponding ...-group-function is set to a function, and if so execute this
4447 function in place of the normal processing.
4448 (syms_of_window): Define symbols for the six new variables below.
4449 (window-start-group-function, window-end-group-function)
4450 (set-window-start-group-function, recenter-group-function)
4451 (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
4452 New permanent local buffer local variables.
4453 src/keyboard.c (Fposn_at_point): Add extra parameter in call to
4454 Fpos_visible_in_window_p.
4455
4456 lisp/window.el (selected-window-group-function): New permanent local buffer
4457 local variable.
4458 (selected-window-group): New function.
4459
4460 lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
4461 enable, kill them at mode disable. Add/remove follow-after-change to/from
4462 after-change-functions.
4463 (follow-start-end-invalid): New variable.
4464 (follow-redisplay): Manipulate follow-start-end-invalid.
4465 (follow-after-change, follow-window-start, follow-window-end)
4466 (follow-set-window-start, follow-pos-visible-in-window-p)
4467 (follow-move-to-window-line, follow-sit-for): New functions.
4468
4469 lisp/isearch.el (isearch-call-message): New macro.
4470 (isearch-update, with-isearch-suspended, isearch-del-char)
4471 (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
4472 (with-isearch-suspended): Rearrange code such that isearch-call-message is
4473 invoked before point is moved.
4474 (isearch-message): Add comment about where point must be at function call.
4475 (isearch-search): Remove call to isearch-message.
4476 (isearch-lazy-highlight-window-group): New variable.
4477 (isearch-lazy-highlight-new-loop): Unconditionally start idle timer. Move
4478 the battery of tests to ...
4479 (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
4480 Note: (sit-for 0) is still called.
4481 (isearch-lazy-highlight-update): Check membership of
4482 isearch-lazy-highlight-window-group. Don't set the `window' overlay
4483 property.
4484 (isearch-update, isearch-done, isearch-string-out-of-window)
4485 (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
4486 (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
4487 (isearch-lazy-highlight-update): Call the six amended primitives (see
4488 src/window.c above) with the new `group' argument set to t, to cooperate
4489 with Follow Mode.
4490
4491 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
4492
4493 * shr.el (shr-descend): Allow using lambdas in external functions.
4494
4495 2015-12-25 Stefan Monnier <monnier@iro.umontreal.ca>
4496
4497 * admin/gitmerge.el: Tweaks that seemed necessary
4498
4499 * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
4500 (gitmerge-maybe-resume): Provide explicit empty commit message.
4501
4502 2015-12-25 Łukasz Stelmach <stlman@poczta.fm> (tiny change)
4503
4504 Use a different port for TLS erc
4505
4506 * lisp/erc/erc.el (erc-default-port-tls): New variable
4507 (bug#19497).
4508 * lisp/erc/erc.el (erc-tls): Use it.
4509
4510 2015-12-25 Alain Schneble <a.s@realize.ch>
4511
4512 Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
4513
4514 * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
4515 * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
4516 * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
4517 information in URL-struct.
4518 * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
4519 path and query into nil path and query, respectively.
4520 * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
4521 empty path into an absolute ("/") path.
4522 * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
4523 fragment-only URIs. Do not just return them unchanged.
4524 * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
4525 reference URI should not drop the last segment.
4526
4527 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4528
4529 Let url use default file modes when copying files
4530
4531 * lisp/url/url-handlers.el (url-copy-file): Use default file
4532 modes when copying files (bug#11400).
4533
4534 2015-12-25 Devon Sean McCullough <Emacs-Hacker2012@jovi.net>
4535
4536 Doc fix for url-http
4537
4538 * lisp/url/url-http.el (url-http): Document better return values
4539 (bug#13187) (tiny change)
4540
4541 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4542
4543 * eww.el (eww-display-html): Support <button> tags (bug#20485).
4544
4545 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4546
4547 Made ffap-url-p a defun instead of a defsubst
4548
4549 * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
4550 since there doesn't seem to be much of a reason for it to be a
4551 defsubst (bug#18203).
4552
4553 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4554
4555 Add a command to view files in the browser to dired
4556
4557 * lisp/dired.el (dired-mode-map): Add the `W' command
4558 (bug#18810).
4559
4560 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4561
4562 Allow http://user:pass@foo/ URLs again
4563
4564 * lisp/url/url-auth.el (url-basic-auth): Allow explicit
4565 user/passwords in URLs (bug#19046).
4566
4567 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4568
4569 * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
4570
4571 2015-12-25 Samer Masterson <samer@samertm.com>
4572
4573 Autoload url-insert-buffer-contents
4574
4575 * lisp/url/url-handlers.el: Add autoload cookie so that
4576 `package-list-packages' doesn't bug out (bug#21927) (tiny change)
4577
4578 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4579
4580 Allow toggling colors in eww
4581
4582 * doc/misc/eww.texi (Basics): Mention "C".
4583
4584 * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
4585
4586 * lisp/net/shr.el (shr-use-colors): New variable.
4587 (shr-colorize-region): Use it.
4588
4589 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4590
4591 Follow meta refresh tags in eww
4592
4593 * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
4594
4595 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4596
4597 More eww file name coding fixes
4598
4599 * eww.el (eww-decode-url-file-name): Use the base coding
4600 system to check for encodability.
4601
4602 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4603
4604 Always save eww history
4605
4606 * eww.el (eww-setup-buffer): Always save history, even when
4607 called from outside the eww buffer (bug#19638).
4608
4609 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4610
4611 Default web pages to right-to-left
4612
4613 * eww.el (eww-mode): Most web pages are left-to-right, so make
4614 that the default (bug#19801).
4615
4616 * shr.el (shr-tag-html): Respect "dir" attributes
4617 (left-to-right, right-to-left).
4618
4619 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4620
4621 Make toggling checkboxes work again
4622
4623 * eww.el (eww-update-field): Make toggling checkboxes work
4624 again (bug#21881).
4625
4626 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4627
4628 Don't store cookies with empty names
4629
4630 * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
4631 cookies with empty names (bug#21936).
4632
4633 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4634
4635 * shr.el (shr-descend): Stop rendering before we run out of
4636 specpdl room (bug#22117).
4637
4638 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4639
4640 Use cl-reduce, not reduce.
4641
4642 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
4643
4644 Allow several <tbody> tags in shr
4645
4646 * shr.el (shr-table-body): New function to find the real body
4647 of a table.
4648 (shr-tag-table): Use it to render several <tbody> tags in a
4649 table (bug#22170).
4650
4651 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
4652
4653 Make prettier unique file names in eww
4654
4655 (eww-make-unique-file-name): Make unique file names by making
4656 files like foo(2).jpg instead of foo(1)(2).jpg.
4657
4658 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
4659
4660 Decode hex-encoded URLs before using them as file names
4661
4662 * eww.el (eww-decode-url-file-name): New function.
4663 (eww-download-callback): Use it to decode file names before
4664 saving them.
4665
4666 2015-12-24 Ashish SHUKLA <ashish.is@lostca.se> (tiny change)
4667
4668 * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
4669 * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
4670
4671 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
4672
4673 Allow overriding shr functions from eww
4674
4675 * eww.el (eww-display-html): Allow overriding elements in
4676 `shr-external-rendering-functions'.
4677
4678 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
4679
4680 Ignore invalid SVG images
4681
4682 * shr.el (shr-tag-svg): Ignore SVG images that have no width
4683 or height, because these can't be displayed by ImageMagick,
4684 anyway.
4685
4686 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
4687
4688 shr table rendering fix
4689
4690 * shr.el (shr-tag-table): Allow rendering body-less tables
4691 that have headers.
4692
4693 2015-12-22 Sam Steingold <sds@gnu.org>
4694
4695 clipboard should still work even if interprogram-* is disabled
4696
4697 (clipboard-yank): When `interprogram-cut-function' is nil,
4698 bind it to `gui-selection-value' - the default value.
4699 (clipboard-kill-region, clipboard-kill-ring-save): When
4700 `interprogram-paste-function' is nil, bind it to `gui-select-text' -
4701 the default value.
4702
4703 2015-12-18 Phillip Lord <phillip.lord@russet.org.uk>
4704
4705 Fix bootstrap issue with dired-loaddefs
4706
4707 * lisp/dired.el: Autoloads for secondary files loaded optionally.
4708
4709 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4710
4711 dired generate autoloads to non-versioned file.
4712
4713 * lisp/dired.el: Remove autoloads.
4714 * lisp/Makefile.in: Add dired to autogenel.
4715 * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
4716 * test/lisp/dired-tests.el: Add new test.
4717
4718 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4719
4720 eieio generate autoloads to non-versioned file.
4721
4722 * lisp/Makefile.in: eieio-loaddefs add to autogenel.
4723 * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
4724 Remove autoloads.
4725 * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
4726 lisp/emacs-lisp/eieio-opt.el: Update file local.
4727 * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
4728
4729 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4730
4731 htmlfontify generate autoload to non-versioned file.
4732
4733 * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
4734 * lisp/hfy-cmap.el: Update file local.
4735 * lisp/htmlfontify.el: Remove autoloads, add require.
4736 * test/lisp/htmlfontify-tests.el: Test autoload functionality.
4737
4738 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4739
4740 ibuffer generate autoloads to non-versioned file.
4741
4742 * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
4743 * lisp/ibuf-ext.el: Update file local.
4744 * lisp/ibuffer.el: Remove autoloads and add a require.
4745 * test/lisp/ibuffer-tests.el: Test that autoload is working.
4746
4747 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4748
4749 rmail generate autoloads to non-versioned file.
4750
4751 * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
4752 * lisp/mail/rmail.el: Remove autoloads, add require.
4753 * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
4754 lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
4755 lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
4756 lisp/mail/undigest.el: Update file-local.
4757 * test/lisp/mail/rmail-tests.el:
4758
4759 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4760
4761 Add autoload-force target.
4762
4763 * lisp/Makefile.in (autoload-force): New target.
4764
4765 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4766
4767 ps-print generate autoloads to non versioned file.
4768
4769 * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
4770 * lisp/ps-print.el: Remove autoloads.
4771 * lisp/ps-mule.el: Update file-local.
4772 * test/lisp/ps-print-tests.el: Test autoload functionality.
4773
4774 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
4775
4776 reftex generate autoloads to non versioned file.
4777
4778 * lisp/Makefile.in: Add reftex-loaddefs to autogen files
4779 * lisp/textmodes/reftex.el: Remove autoloads.
4780 * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
4781 lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
4782 lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
4783 lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
4784 lisp/textmodes/reftex-toc.el: Update autoload file-local.
4785 * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
4786 function.
4787
4788 2015-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
4789
4790 * lisp/calculator.el (calculator-define-key): Undo last change
4791
4792 Make map argument mandatory instead (bug#22106).
4793 (calculator-add-operators): Pass the argument that's not optional any more.
4794
4795 2015-12-03 Glenn Morris <rgm@gnu.org>
4796
4797 * Makefile.in: Avoid duplication.
4798
4799 (have-tests): New rule.
4800 (check, check-maybe): Use it.
4801
4802 2015-12-02 Phillip Lord <phillip.lord@russet.org.uk>
4803
4804 make check unconditional, check-maybe top-level.
4805
4806 * Makefile.in: Add check-maybe target.
4807 * test/Makefile.in: Restore unconditional behaviour to make check.
4808
4809 2015-12-01 Phillip Lord <phillip.lord@russet.org.uk>
4810
4811 Tests now support out-of-source-build.
4812
4813 * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
4814 about current working directory.
4815
4816 2015-12-01 Artur Malabarba <bruce.connor.am@gmail.com>
4817
4818 * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
4819
4820 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
4821
4822 Improve documentation and clean up.
4823
4824 * test/Makefile.in: Improve documentation, use EMACS variable
4825 correctly, and clean up makefile rules.
4826
4827 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
4828
4829 Update file headers for name change.
4830
4831 * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
4832
4833 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
4834
4835 Test files renamed to new scheme.
4836
4837 * (finalizer-tests.el): Now renamed alloc-tests.el
4838 * (zlib-tests.el): Now renamed decompress-tests.el.
4839
4840 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
4841
4842 Tests now depend on source files
4843
4844 * test/Makefile.in: Include dependences from tests to source files.
4845 * test/make-test-deps.emacs-lisp: New file
4846 * .gitignore: Ignore generated make include file
4847
4848 2015-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
4849
4850 * lisp/progmodes/which-func.el: Improve disabling the mode
4851
4852 Use lexical-binding.
4853 (which-func-modes, which-func-non-auto-modes, which-func-maxout)
4854 (which-func, which-func-format): Remove redundant :group arg.
4855 (which-func-try-to-enable): New function.
4856 (which-func-ff-hook, which-function-mode): Use it.
4857 (mode-line-misc-info): Add ourselves here instead of in bindings.el.
4858 * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
4859
4860 2015-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
4861
4862 * lisp/calculator.el (calculator-define-key): Silence warning
4863
4864 ...about unknown calculator-mode-map.
4865
4866 2015-11-29 Eli Barzilay <eli@barzilay.org>
4867
4868 * lisp/calculator.el: more improvements and bugfixes.
4869
4870 - Mark `calculator-paste-decimals' as obsolete. (It wasn't having an
4871 effect anyway.)
4872
4873 - Simplify `calculator-number-to-string' by throwing most of the work
4874 onto `number-to-string', leaving just some tweaks for decimal inputs.
4875 This leads to some minor changes, for example, pasting "1x1" in hex
4876 mode would warn that "x" is ignored and result in "11" (and it wasn't
4877 done in decimal mode), whereas now it just ignores everything from the
4878 "x" and on and result in a "1" just like in decimal input mode. Also,
4879 overflows are left for `number-to-string' to deal with.
4880
4881 - `calculator-paste' is very simple as a result.
4882
4883 - Extend the simplified `calculator-paste': with a prefix argument it
4884 pastes a string as if the characters were entered. This can be used
4885 to reduce expressions, but note that it's a simple literal operation,
4886 so precedence can be messed, a number can be paster while entering a
4887 number, spaces and newlines matter, etc.
4888
4889 - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
4890 operator.
4891
4892 - Fix a bug in `calculator-put-value': avoid grouping in the display
4893 that is used to construct `calculator-curnum'. This would trigger
4894 when pasting or getting a value from a register in some radix mode
4895 with a large enough value. Another fix: make the output radix equal
4896 the input one, otherwise numbers could be converted twice.
4897
4898 2015-11-29 Eli Barzilay <eli@barzilay.org>
4899
4900 * lisp/calculator.el: Re-do key bindings.
4901
4902 Use a helper function that arranges a parent keymap that binds alternate
4903 case keys so if some letter key is unbound and it's un/shifted version
4904 is, it will get used. This makes the global-map trickery unnecessary.
4905
4906 Also switch to passing strings that name keys through `kbd'.
4907
4908 2015-11-29 Eli Barzilay <eli@barzilay.org>
4909
4910 * lisp/calculator.el: improve radix modes
4911
4912 Fix prompt for some input radix with decimal output (eg, "BD" instead of
4913 the incorrect "B="); also, some minor docstring tweaks for these.
4914
4915 2015-11-29 Eli Barzilay <eli@barzilay.org>
4916
4917 * lisp/calculator.el: better reading of register names
4918
4919 Use `register-read-with-preview' with a dynamically bound
4920 `register-alist' and a proper preview function to read register names.
4921
4922 2015-11-29 Eli Barzilay <eli@barzilay.org>
4923
4924 * lisp/calculator.el: General improvements
4925
4926 Use things like `when', `unless', and `push'.
4927
4928 Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
4929 non-electric mode.
4930
4931 2015-11-28 Michael Albinus <michael.albinus@gmx.de>
4932
4933 Fix a problem with gfilenotify in filenotify-tests.el
4934
4935 * test/lisp/filenotify-tests.el
4936 (file-notify--test-expected-events): Remove.
4937 (file-notify--test-cleanup): Do not set that variable.
4938 (file-notify--test-with-events): EVENTS can also be a list of lists.
4939 (file-notify-test02-events, file-notify-test04-file-validity):
4940 Adapt expected result.
4941
4942 2015-11-28 Eli Zaretskii <eliz@gnu.org>
4943
4944 * .gitignore: Adjust to changes in 'test' directory structure.
4945
4946 2015-11-28 Eli Zaretskii <eliz@gnu.org>
4947
4948 Fix test/manual/etags/Makefile
4949
4950 * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
4951 changes in 'test' directory structure.
4952
4953 2015-11-27 Phillip Lord <phillip.lord@russet.org.uk>
4954
4955 Exclude resource dirs from search for tests.
4956
4957 * test/Makefile.in: Test file locations are now found with find
4958 rather than using finds native functions.
4959
4960 2015-11-27 Phillip Lord <phillip.lord@russet.org.uk>
4961
4962 Add test targets without directory names.
4963
4964 * (test/Makefile.in): Extend test_template to add two targets for each
4965 file.
4966
4967 2015-11-27 Artur Malabarba <bruce.connor.am@gmail.com>
4968
4969 * lisp/emacs-lisp/package.el: Require url-handlers
4970
4971 2015-11-27 Phillip Lord <phillip.lord@russet.org.uk>
4972
4973 Move elisp-mode-tests to new function names.
4974
4975 * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
4976 find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
4977
4978 2015-11-27 Juanma Barranquero <lekktu@gmail.com>
4979
4980 * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
4981
4982 2015-11-26 Phillip Lord <phillip.lord@russet.org.uk>
4983
4984 Merge branch 'feature/standard-test-location'
4985
4986 2015-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
4987
4988 * lisp/emacs-lisp/eieio.el: Add some default implementations
4989
4990 (standard-class): Mark it obsolete.
4991 (slot-missing): Give it a default implementation.
4992 (destructor): Simplify and mark it obsolete.
4993 (object-print): Give it a default implementation.
4994 (eieio-change-class): Rename from change-class.
4995 (change-class): Redefine as obsolete alias.
4996
4997 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
4998
4999 Some final fixes in file notification before merging with master
5000
5001 * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
5002 (file-notify-callback): Improve check for `stopped' event. Call
5003 `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
5004 (file-notify-add-watch): In case FILE is not a directory, call the
5005 file monitor for the kqueue backend. Otherwise, call the
5006 directory monitor for the upper directory.
5007
5008 * src/inotify.c (inotifyevent_to_event): Extract file name from
5009 watch_object if the event doesn't provide it.
5010 (Finotify_add_watch): Add file name to watch_object.
5011
5012 * test/automated/file-notify-tests.el (file-notify--test-timeout):
5013 Use different timeouts for different libraries.
5014 (file-notify--test-with-events): Suppress lock files. Flush
5015 outstanding events before running the body.
5016 (file-notify-test02-events, file-notify-test04-file-validity): Do
5017 not skip cygwin tests. Add additional test for file creation.
5018 Adapt expected result for different backends.
5019 (file-notify-test03-autorevert): Some of the tests don't work for
5020 w32notify.
5021 (file-notify-test06-many-events): Rename into both directions.
5022
5023 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5024
5025 Rework file notifications, kqueue has problems with directory monitors
5026
5027 * lisp/filenotify.el (file-notify-add-watch): Call the native
5028 add-watch function on the file, not on the dir.
5029
5030 * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
5031 about already deleted entries.
5032
5033 * test/automated/auto-revert-tests.el
5034 (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
5035 since this deletes the target file first.
5036
5037 * test/automated/file-notify-tests.el (file-notify--test-event-test):
5038 Make stronger checks.
5039 (file-notify-test01-add-watch, file-notify-test02-events)
5040 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5041 Rewrite in order to call file monitors but directory monitors.
5042 (file-notify-test06-many-events): Ler rename work in both directions.
5043
5044 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5045
5046 Continue with pending events
5047
5048 * src/kqueue.c (pending_events): Remove global variable.
5049 (kqueue_compare_dir_list): Create `write' event for not used
5050 pending events.
5051 (globals_of_kqueue): Remove initialization of pending_events.
5052
5053 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5054
5055 Improve loops in file-notify-test06-many-events
5056
5057 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
5058 Use `read-event' pauses for the `write-file' loops; otherwise
5059 events are lost in inotify and gfilenotify cases.
5060
5061 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5062
5063 Handle more complex rename operation in kqueue
5064
5065 * src/kqueue.c (pending_events): New variable.
5066 (kqueue_compare_dir_list): Handle more complex rename operation.
5067 (globals_of_kqueue): Initialize pending_events.
5068
5069 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
5070 Adapt expected events in the `rename-file' case.
5071 (file-notify-test06-many-events-remote): Declare.
5072
5073 2015-11-25 Wolfgang Jenkner <wjenkner@inode.at>
5074
5075 New test with a larger number of events
5076
5077 * test/automated/file-notify-tests.el (file-notify--test-with-events):
5078 Make timeout heuristically depend on the number of events.
5079
5080 (file-notify-test06-many-events): Use it for new test.
5081
5082 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5083
5084 Further fixes for kqueue
5085
5086 * lisp/filenotify.el (file-notify-callback): Raise also event if
5087 directory name matches.
5088 (file-notify-add-watch): Add `create' to the flags for `kqueue'.
5089
5090 * src/kqueue.c (kqueue_generate_event): Use watch_object as
5091 argument instead of ident. Remove callback argument. Adapt
5092 callees. Check actions whether they are monitored flags.
5093
5094 * test/automated/file-notify-tests.el (file-notify--test-library):
5095 New defun.
5096 (file-notify-test00-availability, file-notify-test02-events)
5097 (file-notify-test04-file-validity)
5098 (file-notify-test05-dir-validity): Use it.
5099 (file-notify-test02-events, file-notify-test04-file-validity): Add
5100 `read-event' calls between different file actions, in order to
5101 give the backends a chance to rais an event. Needed especially
5102 for kqueue. In case of deleting a directory, there are two
5103 `deleted' events.
5104
5105 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5106
5107 Code cleanup of kqueue.c
5108
5109 * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
5110 (kqueue_compare_dir_list): Do not loop when calling
5111 directory_files_internal. Remove checks for "." and "..", this is
5112 done in kqueue_directory_listing now.
5113 (Fkqueue_add_watch): Check for proper emacs_open flags.
5114
5115 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5116
5117 Doc changes for kqueue
5118
5119 * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
5120 Fix some glitches in the example.
5121
5122 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5123
5124 Finish implementation in kqueue.c
5125
5126 * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
5127 Simplify access to list.
5128 (kqueue_compare_dir_list): Simplify access to list. Raise
5129 `delete' event if directory does not exist any longer. Otherwise,
5130 wait until directory contents has changed. Fix error in check.
5131
5132 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5133
5134 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
5135
5136 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5137
5138 More work on kqueue
5139
5140 * lisp/filenotify.el (file-notify-callback): Handle also the
5141 `rename' event from kqueue.
5142 (file-notify-add-watch): Do not register an entry twice.
5143
5144 * src/kqueue.c (kqueue_directory_listing): New function.
5145 (kqueue_generate_event): New argument FILE1. Adapt callees.
5146 (kqueue_compare_dir_list): Rewrite in order to make it more robust.
5147
5148 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5149
5150 Implement directory events
5151
5152 * lisp/filenotify.el (file-notify-handle-event)
5153 (file-notify-callback): Remove traces.
5154
5155 * src/kqueue.c: Include <sys/time.h>.
5156 (kqueue_generate_event, kqueue_compare_dir_list): New functions.
5157 (kqueue_callback): Use them. Call kevent() with a zero timeout.
5158 (Fkqueue_add_watch): Adapt docstring. Support directory events.
5159 Compute initial directory listing. Close file descriptor in case
5160 of errors.
5161 (syms_of_kqueue): Declare Qcreate.
5162
5163 2015-11-25 Wolfgang Jenkner <wjenkner@inode.at>
5164
5165 Build fixes for kqueue support
5166
5167 * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
5168 flag.
5169
5170 * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
5171 kqueue on *BSD.
5172
5173 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5174
5175 Continue kqueue implementation
5176
5177 * lisp/filenotify.el (file-notify-handle-event)
5178 (file-notify-callback): Enable trace messages.
5179
5180 * src/kqueue.c: Include also <sys/types.h>.
5181 (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
5182 (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
5183 (syms_of_kqueue): Add them.
5184
5185 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5186
5187 Work on kqueue
5188
5189 * lisp/filenotify.el (file-notify--library)
5190 (file-notify-descriptors, file-notify-callback)
5191 (file-notify-add-watch, file-notify-rm-watch)
5192 (file-notify-valid-p): Add kqueue support.
5193
5194 * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
5195
5196 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
5197
5198 Add kqueue support
5199
5200 * configure.ac (--with-file-notification): Add kqueue.
5201 (top): Remove special test for "${HAVE_NS}" and
5202 ${with_file_notification}, this is handled inside gfilenotify
5203 tests. Add kqueue tests. Use NOTIFY_CFLAGS and NOTIFY_LIBS
5204 instead of library specific variables.
5205
5206 * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
5207
5208 * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
5209
5210 * src/kqueue.c: New file.
5211
5212 * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
5213
5214 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
5215
5216 Update elisp-mode-tests for changed file location.
5217
5218 * test/lisp/progmodes/elisp-mode-tests.el:
5219
5220 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
5221
5222 Exclude manual tests from Makefile
5223
5224 * test/Makefile.in:
5225
5226 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
5227
5228 Move package test files to new directory.
5229
5230 * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
5231 * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
5232
5233 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
5234
5235 Restore delete Makefiles and fix .gitignore.
5236
5237 * .gitignore: Update Makefiles to changed locations
5238 * test/lisp/progmodes/flymake-resources/Makefile,
5239 test/manual/etags/Makefile,
5240 test/manual/etags/make-src/Makefile,
5241 test/manual/indent/Makefile: Restored and moved to new location.
5242
5243 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
5244
5245 Test infrastructure: updates after directory move
5246
5247 * (test/Makefile.in): Support directories several levels deep.
5248 * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
5249 * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
5250
5251 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
5252
5253 Rename all test files to reflect source layout.
5254
5255 * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
5256 test directory moves.
5257 * test/file-organisation.org: New file.
5258 * test/automated/Makefile.in
5259 test/automated/data/decompress/foo.gz
5260 test/automated/data/epg/pubkey.asc
5261 test/automated/data/epg/seckey.asc
5262 test/automated/data/files-bug18141.el.gz
5263 test/automated/data/flymake/test.c
5264 test/automated/data/flymake/test.pl
5265 test/automated/data/package/archive-contents
5266 test/automated/data/package/key.pub
5267 test/automated/data/package/key.sec
5268 test/automated/data/package/multi-file-0.2.3.tar
5269 test/automated/data/package/multi-file-readme.txt
5270 test/automated/data/package/newer-versions/archive-contents
5271 test/automated/data/package/newer-versions/new-pkg-1.0.el
5272 test/automated/data/package/newer-versions/simple-single-1.4.el
5273 test/automated/data/package/package-test-server.py
5274 test/automated/data/package/signed/archive-contents
5275 test/automated/data/package/signed/archive-contents.sig
5276 test/automated/data/package/signed/signed-bad-1.0.el
5277 test/automated/data/package/signed/signed-bad-1.0.el.sig
5278 test/automated/data/package/signed/signed-good-1.0.el
5279 test/automated/data/package/signed/signed-good-1.0.el.sig
5280 test/automated/data/package/simple-depend-1.0.el
5281 test/automated/data/package/simple-single-1.3.el
5282 test/automated/data/package/simple-single-readme.txt
5283 test/automated/data/package/simple-two-depend-1.1.el
5284 test/automated/abbrev-tests.el
5285 test/automated/auto-revert-tests.el
5286 test/automated/calc-tests.el
5287 test/automated/icalendar-tests.el
5288 test/automated/character-fold-tests.el
5289 test/automated/comint-testsuite.el
5290 test/automated/descr-text-test.el
5291 test/automated/electric-tests.el
5292 test/automated/cl-generic-tests.el
5293 test/automated/cl-lib-tests.el
5294 test/automated/eieio-test-methodinvoke.el
5295 test/automated/eieio-test-persist.el
5296 test/automated/eieio-tests.el
5297 test/automated/ert-tests.el
5298 test/automated/ert-x-tests.el
5299 test/automated/generator-tests.el
5300 test/automated/let-alist.el
5301 test/automated/map-tests.el
5302 test/automated/advice-tests.el
5303 test/automated/package-test.el
5304 test/automated/pcase-tests.el
5305 test/automated/regexp-tests.el
5306 test/automated/seq-tests.el
5307 test/automated/subr-x-tests.el
5308 test/automated/tabulated-list-test.el
5309 test/automated/thunk-tests.el
5310 test/automated/timer-tests.el
5311 test/automated/epg-tests.el
5312 test/automated/eshell.el
5313 test/automated/faces-tests.el
5314 test/automated/file-notify-tests.el
5315 test/automated/auth-source-tests.el
5316 test/automated/gnus-tests.el
5317 test/automated/message-mode-tests.el
5318 test/automated/help-fns.el
5319 test/automated/imenu-test.el
5320 test/automated/info-xref.el
5321 test/automated/mule-util.el
5322 test/automated/isearch-tests.el
5323 test/automated/json-tests.el
5324 test/automated/bytecomp-tests.el
5325 test/automated/coding-tests.el
5326 test/automated/core-elisp-tests.el
5327 test/automated/decoder-tests.el
5328 test/automated/files.el
5329 test/automated/font-parse-tests.el
5330 test/automated/lexbind-tests.el
5331 test/automated/occur-tests.el
5332 test/automated/process-tests.el
5333 test/automated/syntax-tests.el
5334 test/automated/textprop-tests.el
5335 test/automated/undo-tests.el
5336 test/automated/man-tests.el
5337 test/automated/completion-tests.el
5338 test/automated/dbus-tests.el
5339 test/automated/newsticker-tests.el
5340 test/automated/sasl-scram-rfc-tests.el
5341 test/automated/tramp-tests.el
5342 test/automated/obarray-tests.el
5343 test/automated/compile-tests.el
5344 test/automated/elisp-mode-tests.el
5345 test/automated/f90.el
5346 test/automated/flymake-tests.el
5347 test/automated/python-tests.el
5348 test/automated/ruby-mode-tests.el
5349 test/automated/subword-tests.el
5350 test/automated/replace-tests.el
5351 test/automated/simple-test.el
5352 test/automated/sort-tests.el
5353 test/automated/subr-tests.el
5354 test/automated/reftex-tests.el
5355 test/automated/sgml-mode-tests.el
5356 test/automated/tildify-tests.el
5357 test/automated/thingatpt.el
5358 test/automated/url-future-tests.el
5359 test/automated/url-util-tests.el
5360 test/automated/add-log-tests.el
5361 test/automated/vc-bzr.el
5362 test/automated/vc-tests.el
5363 test/automated/xml-parse-tests.el
5364 test/BidiCharacterTest.txt
5365 test/biditest.el
5366 test/cedet/cedet-utests.el
5367 test/cedet/ede-tests.el
5368 test/cedet/semantic-ia-utest.el
5369 test/cedet/semantic-tests.el
5370 test/cedet/semantic-utest-c.el
5371 test/cedet/semantic-utest.el
5372 test/cedet/srecode-tests.el
5373 test/cedet/tests/test.c
5374 test/cedet/tests/test.el
5375 test/cedet/tests/test.make
5376 test/cedet/tests/testdoublens.cpp
5377 test/cedet/tests/testdoublens.hpp
5378 test/cedet/tests/testfriends.cpp
5379 test/cedet/tests/testjavacomp.java
5380 test/cedet/tests/testnsp.cpp
5381 test/cedet/tests/testpolymorph.cpp
5382 test/cedet/tests/testspp.c
5383 test/cedet/tests/testsppcomplete.c
5384 test/cedet/tests/testsppreplace.c
5385 test/cedet/tests/testsppreplaced.c
5386 test/cedet/tests/testsubclass.cpp
5387 test/cedet/tests/testsubclass.hh
5388 test/cedet/tests/testtypedefs.cpp
5389 test/cedet/tests/testvarnames.c
5390 test/etags/CTAGS.good
5391 test/etags/ETAGS.good_1
5392 test/etags/ETAGS.good_2
5393 test/etags/ETAGS.good_3
5394 test/etags/ETAGS.good_4
5395 test/etags/ETAGS.good_5
5396 test/etags/ETAGS.good_6
5397 test/etags/a-src/empty.zz
5398 test/etags/a-src/empty.zz.gz
5399 test/etags/ada-src/2ataspri.adb
5400 test/etags/ada-src/2ataspri.ads
5401 test/etags/ada-src/etags-test-for.ada
5402 test/etags/ada-src/waroquiers.ada
5403 test/etags/c-src/a/b/b.c
5404 test/etags/c-src/abbrev.c
5405 test/etags/c-src/c.c
5406 test/etags/c-src/dostorture.c
5407 test/etags/c-src/emacs/src/gmalloc.c
5408 test/etags/c-src/emacs/src/keyboard.c
5409 test/etags/c-src/emacs/src/lisp.h
5410 test/etags/c-src/emacs/src/regex.h
5411 test/etags/c-src/etags.c
5412 test/etags/c-src/exit.c
5413 test/etags/c-src/exit.strange_suffix
5414 test/etags/c-src/fail.c
5415 test/etags/c-src/getopt.h
5416 test/etags/c-src/h.h
5417 test/etags/c-src/machsyscalls.c
5418 test/etags/c-src/machsyscalls.h
5419 test/etags/c-src/sysdep.h
5420 test/etags/c-src/tab.c
5421 test/etags/c-src/torture.c
5422 test/etags/cp-src/MDiagArray2.h
5423 test/etags/cp-src/Range.h
5424 test/etags/cp-src/burton.cpp
5425 test/etags/cp-src/c.C
5426 test/etags/cp-src/clheir.cpp.gz
5427 test/etags/cp-src/clheir.hpp
5428 test/etags/cp-src/conway.cpp
5429 test/etags/cp-src/conway.hpp
5430 test/etags/cp-src/fail.C
5431 test/etags/cp-src/functions.cpp
5432 test/etags/cp-src/screen.cpp
5433 test/etags/cp-src/screen.hpp
5434 test/etags/cp-src/x.cc
5435 test/etags/el-src/TAGTEST.EL
5436 test/etags/el-src/emacs/lisp/progmodes/etags.el
5437 test/etags/erl-src/gs_dialog.erl
5438 test/etags/f-src/entry.for
5439 test/etags/f-src/entry.strange.gz
5440 test/etags/f-src/entry.strange_suffix
5441 test/etags/forth-src/test-forth.fth
5442 test/etags/html-src/algrthms.html
5443 test/etags/html-src/index.shtml
5444 test/etags/html-src/software.html
5445 test/etags/html-src/softwarelibero.html
5446 test/etags/lua-src/allegro.lua
5447 test/etags/objc-src/PackInsp.h
5448 test/etags/objc-src/PackInsp.m
5449 test/etags/objc-src/Subprocess.h
5450 test/etags/objc-src/Subprocess.m
5451 test/etags/objcpp-src/SimpleCalc.H
5452 test/etags/objcpp-src/SimpleCalc.M
5453 test/etags/pas-src/common.pas
5454 test/etags/perl-src/htlmify-cystic
5455 test/etags/perl-src/kai-test.pl
5456 test/etags/perl-src/yagrip.pl
5457 test/etags/php-src/lce_functions.php
5458 test/etags/php-src/ptest.php
5459 test/etags/php-src/sendmail.php
5460 test/etags/prol-src/natded.prolog
5461 test/etags/prol-src/ordsets.prolog
5462 test/etags/ps-src/rfc1245.ps
5463 test/etags/pyt-src/server.py
5464 test/etags/tex-src/gzip.texi
5465 test/etags/tex-src/nonewline.tex
5466 test/etags/tex-src/testenv.tex
5467 test/etags/tex-src/texinfo.tex
5468 test/etags/y-src/atest.y
5469 test/etags/y-src/cccp.c
5470 test/etags/y-src/cccp.y
5471 test/etags/y-src/parse.c
5472 test/etags/y-src/parse.y
5473 test/indent/css-mode.css
5474 test/indent/js-indent-init-dynamic.js
5475 test/indent/js-indent-init-t.js
5476 test/indent/js-jsx.js
5477 test/indent/js.js
5478 test/indent/latex-mode.tex
5479 test/indent/modula2.mod
5480 test/indent/nxml.xml
5481 test/indent/octave.m
5482 test/indent/pascal.pas
5483 test/indent/perl.perl
5484 test/indent/prolog.prolog
5485 test/indent/ps-mode.ps
5486 test/indent/ruby.rb
5487 test/indent/scheme.scm
5488 test/indent/scss-mode.scss
5489 test/indent/sgml-mode-attribute.html
5490 test/indent/shell.rc
5491 test/indent/shell.sh
5492 test/redisplay-testsuite.el
5493 test/rmailmm.el
5494 test/automated/buffer-tests.el
5495 test/automated/cmds-tests.el
5496 test/automated/data-tests.el
5497 test/automated/finalizer-tests.el
5498 test/automated/fns-tests.el
5499 test/automated/inotify-test.el
5500 test/automated/keymap-tests.el
5501 test/automated/print-tests.el
5502 test/automated/libxml-tests.el
5503 test/automated/zlib-tests.el: Files Moved.
5504
5505 2015-11-20 Michael Albinus <michael.albinus@gmx.de>
5506
5507 Rework file notifications, kqueue has problems with directory monitors
5508
5509 * lisp/filenotify.el (file-notify-add-watch): Call the native
5510 add-watch function on the file, not on the dir.
5511
5512 * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
5513 about already deleted entries.
5514
5515 * test/automated/auto-revert-tests.el
5516 (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
5517 since this deletes the target file first.
5518
5519 * test/automated/file-notify-tests.el (file-notify--test-event-test):
5520 Make stronger checks.
5521 (file-notify-test01-add-watch, file-notify-test02-events)
5522 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5523 Rewrite in order to call file monitors but directory monitors.
5524 (file-notify-test06-many-events): Ler rename work in both directions.
5525
5526 2015-11-19 Michael Albinus <michael.albinus@gmx.de>
5527
5528 Continie with pending events
5529
5530 * src/kqueue.c (pending_events): Remove global variable.
5531 (kqueue_compare_dir_list): Create `write' event for not used
5532 pending events.
5533 (globals_of_kqueue): Remove initialization of pending_events.
5534
5535 2015-11-19 Michael Albinus <michael.albinus@gmx.de>
5536
5537 Improve loops in file-notify-test06-many-events
5538
5539 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
5540 Use `read-event' pauses for the `write-file' loops; otherwise
5541 events are lost in inotify and gfilenotify cases.
5542
5543 2015-11-19 Michael Albinus <michael.albinus@gmx.de>
5544
5545 Handle more complex rename operation in kqueue
5546
5547 * src/kqueue.c (pending_events): New variable.
5548 (kqueue_compare_dir_list): Handle more complex rename operation.
5549 (globals_of_kqueue): Initialize pending_events.
5550
5551 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
5552 Adapt expected events in the `rename-file' case.
5553 (file-notify-test06-many-events-remote): Declare.
5554
5555 2015-11-18 Wolfgang Jenkner <wjenkner@inode.at>
5556
5557 New test with a larger number of events.
5558
5559 * test/automated/file-notify-tests.el (file-notify--test-with-events):
5560 Make timeout heuristically depend on the number of events.
5561
5562 (file-notify-test06-many-events): Use it for new test.
5563
5564 2015-11-18 Michael Albinus <michael.albinus@gmx.de>
5565
5566 Further fixes for kqueue.
5567
5568 * lisp/filenotify.el (file-notify-callback): Raise also event if
5569 directory name matches.
5570 (file-notify-add-watch): Add `create' to the flags for `kqueue'.
5571
5572 * src/kqueue.c (kqueue_generate_event): Use watch_object as
5573 argument instead of ident. Remove callback argument. Adapt
5574 callees. Check actions whether they are monitored flags.
5575
5576 * test/automated/file-notify-tests.el (file-notify--test-library):
5577 New defun.
5578 (file-notify-test00-availability, file-notify-test02-events)
5579 (file-notify-test04-file-validity)
5580 (file-notify-test05-dir-validity): Use it.
5581 (file-notify-test02-events, file-notify-test04-file-validity): Add
5582 `read-event' calls between different file actions, in order to
5583 give the backends a chance to rais an event. Needed especially
5584 for kqueue. In case of deleting a directory, there are two
5585 `deleted' events.
5586
5587 2015-11-17 Michael Albinus <michael.albinus@gmx.de>
5588
5589 Code cleanup of kqueue.c
5590
5591 * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
5592 (kqueue_compare_dir_list): Do not loop when calling
5593 directory_files_internal. Remove checks for "." and "..", this is
5594 done in kqueue_directory_listing now.
5595 (Fkqueue_add_watch): Check for proper emacs_open flags.
5596
5597 2015-11-16 Michael Albinus <michael.albinus@gmx.de>
5598
5599 Doc changes for kqueue
5600
5601 * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
5602 Fix some glitches in the example.
5603
5604 2015-11-16 Michael Albinus <michael.albinus@gmx.de>
5605
5606 Finish implementation in kqueue.c
5607
5608 * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
5609 Simplify access to list.
5610 (kqueue_compare_dir_list): Simplify access to list. Raise
5611 `delete' event if directory does not exist any longer. Otherwise,
5612 wait until directory contents has changed. Fix error in check.
5613
5614 2015-11-16 Michael Albinus <michael.albinus@gmx.de>
5615
5616 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
5617
5618 2015-11-15 Michael Albinus <michael.albinus@gmx.de>
5619
5620 More work on kqueue
5621
5622 * lisp/filenotify.el (file-notify-callback): Handle also the
5623 `rename' event from kqueue.
5624 (file-notify-add-watch): Do not register an entry twice.
5625
5626 * src/kqueue.c (kqueue_directory_listing): New function.
5627 (kqueue_generate_event): New argument FILE1. Adapt callees.
5628 (kqueue_compare_dir_list): Rewrite in order to make it more robust.
5629
5630 2015-11-14 Michael Albinus <michael.albinus@gmx.de>
5631
5632 Implement directory events
5633
5634 * lisp/filenotify.el (file-notify-handle-event)
5635 (file-notify-callback): Remove traces.
5636
5637 * src/kqueue.c: Include <sys/time.h>.
5638 (kqueue_generate_event, kqueue_compare_dir_list): New functions.
5639 (kqueue_callback): Use them. Call kevent() with a zero timeout.
5640 (Fkqueue_add_watch): Adapt docstring. Support directory events.
5641 Compute initial directory listing. Close file descriptor in case
5642 of errors.
5643 (syms_of_kqueue): Declare Qcreate.
5644
5645 2015-11-11 Wolfgang Jenkner <wjenkner@inode.at>
5646
5647 Build fixes for kqueue support.
5648
5649 * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
5650 flag.
5651
5652 * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
5653 kqueue on *BSD.
5654
5655 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
5656
5657 Continue kqueue implementation
5658
5659 * lisp/filenotify.el (file-notify-handle-event)
5660 (file-notify-callback): Enable trace messages.
5661
5662 * src/kqueue.c: Include also <sys/types.h>.
5663 (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
5664 (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
5665 (syms_of_kqueue): Add them.
5666
5667 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
5668
5669 Work on kqueue
5670
5671 * lisp/filenotify.el (file-notify--library)
5672 (file-notify-descriptors, file-notify-callback)
5673 (file-notify-add-watch, file-notify-rm-watch)
5674 (file-notify-valid-p): Add kqueue support.
5675
5676 * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
5677
5678 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
5679
5680 Add kqueue support
5681
5682 * configure.ac (--with-file-notification): Add kqueue.
5683 (top): Remove special test for "${HAVE_NS}" and
5684 ${with_file_notification}, this is handled inside gfilenotify
5685 tests. Add kqueue tests. Use NOTIFY_CFLAGS and NOTIFY_LIBS
5686 instead of library specific variables.
5687
5688 * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
5689
5690 * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
5691
5692 * src/kqueue.c: New file.
5693
5694 * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
5695
5696 2015-11-21 Wilson Snyder <wsnyder@wsnyder.org>
5697
5698 verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
5699
5700 * verilog-mode.el (verilog-save-font-no-change-functions):
5701 Commentary and fix pre-Emacs 21 behavior.
5702
5703 2015-11-19 Przemysław Wojnowski <esperanto@cumego.com>
5704
5705 Use obarray functions from obarray.
5706
5707 * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
5708 abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
5709 clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
5710 delegate to obarray.el functions.
5711 * lisp/loadup.el: load obarray before abbrev
5712 * test/automated/abbrev-tests.el: new tests
5713
5714 2015-11-18 Christian Schwarzgruber <c.schwarzgruber.cs@gmail.com> (tiny change)
5715
5716 epa.el: Add option to replace original text
5717
5718 * lisp/epa.el (epa-replace-original-text): New user option.
5719 (Bug#21947)
5720
5721 2015-11-18 Mark Oteiza <mvoteiza@udel.edu>
5722
5723 Add interactive seek command.
5724
5725 * lisp/mpc.el (mpc-cmd-seekcur): New function.
5726 (mpc-seek-current): New command.
5727 (mpc-mode-menu): Add entry for mpc-seek-current
5728 (mpc-mode-map): Bind mpc-seek-current to "g"
5729
5730 2015-11-18 Mark Oteiza <mvoteiza@udel.edu>
5731
5732 Fix issue where a new tempfile was created every refresh
5733
5734 * lisp/mpc.el (mpc-format): Leave dir as relative path
5735
5736 2015-11-18 Stefan Monnier <monnier@iro.umontreal.ca>
5737
5738 * lisp/progmodes/cc-defs.el: Use with-silent-modifications
5739
5740 (c-save-buffer-state): Use with-silent-modifications when available.
5741 (c--macroexpand-all): Check macroexpand-all directly rather than
5742 c--mapcan-status.
5743
5744 2015-11-18 Stefan Monnier <monnier@iro.umontreal.ca>
5745
5746 * lisp/loadup.el: Set max-lisp-eval-depth here
5747
5748 * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
5749 (BYTE_COMPILE_FLAGS): Adjust accordingly.
5750
5751 2015-11-17 João Távora <joaotavora@gmail.com>
5752
5753 Minor fix to comment indentation and typo in last commit
5754
5755 * linum.el (linum-update-window): Fix comment indentation and a
5756 typo.
5757
5758 2015-11-17 João Távora <joaotavora@gmail.com>
5759
5760 linum-mode plays more nicely with other margin-setting extensions
5761
5762 linum.el will only modify the left margin if it needs to, and will
5763 only reset the it back to 0 if it guesses that no-one has touched that
5764 margin in the meantime.
5765
5766 As such, this is a more of a workaround than an actual fix, but fixes
5767 the problems described in bug#20674 regarding the interaction with
5768 modes such as darkroom-mode and olivetti-mode.
5769
5770 A similar fix was commited to nlinum.el in ELPA.git's
5771 e7f5f549fbfb740b911fb7f33b42381ecece56d8
5772
5773 * linum.el (linum-delete-overlays): Restore margins more
5774 criteriously.
5775 (linum-update-window): Set margins more criteriously.
5776
5777 2015-11-16 Daiki Ueno <ueno@gnu.org>
5778
5779 * lisp/image-mode.el: Support encrypted file
5780
5781 (image-toggle-display-image): Read content from the buffer instead
5782 of the file, if the buffer holds a decrypted data. (Bug#21870)
5783
5784 2015-11-15 Juanma Barranquero <lekktu@gmail.com>
5785
5786 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
5787
5788 2015-11-15 Artur Malabarba <bruce.connor.am@gmail.com>
5789
5790 * lisp/emacs-lisp/package.el: Fix a decoding issue
5791
5792 (package--with-response-buffer): Use `url-insert-buffer-contents'.
5793 The previous code had some issues with decoding. Refactoring that
5794 function allows us to use the decoding from url-handlers while still
5795 treating both sync and async requests the same.
5796
5797 * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
5798 `url-insert-buffer-contents'.
5799 (url-insert-buffer-contents): New function
5800
5801 2015-11-15 Artur Malabarba <bruce.connor.am@gmail.com>
5802
5803 * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
5804
5805 (package--with-work-buffer-async): Reimplement as
5806 `package--with-response-buffer'.
5807 (package--with-work-buffer): Mark obsolete.
5808 (package--with-response-buffer): New macro. This is a more self
5809 contained and less contrived version of
5810 `package--with-work-buffer-async'. It uses keyword arguments,
5811 doesn't have async on the name, doesn't fallback on
5812 `package--with-work-buffer', and has _much_ simpler error
5813 handling.
5814
5815 (package--check-signature, package--download-one-archive)
5816 (package-install-from-archive, describe-package-1): Use it.
5817
5818 (package--download-and-read-archives): Let
5819 `package--download-one-archive' take care of calling
5820 `package--update-downloads-in-progress'.
5821
5822 2015-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
5823
5824 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
5825
5826 (verilog-save-buffer-state): Use with-silent-modifications when available.
5827 (verilog-save-font-no-change-functions): Don't bind
5828 before/after-change-functions if it's not needed.
5829
5830 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
5831
5832 * CONTRIBUTE: Remove information about feature freeze.
5833
5834 Merge branch 'release-process-lowercase'
5835
5836 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
5837
5838 Document the release process
5839
5840 * admin/notes/versioning: Add information about RC releases.
5841 * admin/release-process: Document the release process.
5842 * admin/authors.el (authors-ignored-files):
5843 * admin/README: Change FOR-RELEASE to release-process.
5844 * CONTRIBUTE:
5845 * admin/notes/bugtracker: Don't mention FOR-RELEASE.
5846
5847 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
5848
5849 * admin/release-process: Rename from admin/FOR-RELEASE.
5850
5851 2015-11-14 David Engster <deng@randomsample.de>
5852
5853 gitmerge: Fix git log command
5854
5855 * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
5856 only want commits from the branch that is to be merged.
5857 (gitmerge-setup-log-buffer): Use the same symmetric range as in
5858 `gitmerge-missing'.
5859
5860 2015-11-14 David Engster <deng@randomsample.de>
5861
5862 gitmerge: Try to detect cherry-picks
5863
5864 * admin/gitmerge.el (gitmerge-default-branch): Change to
5865 origin/emacs-25.
5866 (gitmerge-missing): Use symmetric difference ('...') between
5867 branch and master so that cherry-picks can be detected.
5868
5869 2015-11-14 Eli Zaretskii <eliz@gnu.org>
5870
5871 Increment Emacs version on master branch
5872
5873 * lisp/cus-edit.el (customize-changed-options-previous-release):
5874 Increase previous version to 24.5.
5875
5876 * configure.ac:
5877 * msdos/sed2v2.inp: Bump version to 25.1.50.
5878
5879 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
5880
5881 Mention CONTRIBUTE in README, since it was moved from etc/ to root.
5882 * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
5883 * README: Mention CONTRIBUTE.
5884
5885 2015-11-13 Wilson Snyder <wsnyder@wsnyder.org>
5886
5887 Update verilog-mode.el to 2015-11-09-b121d60-vpo
5888
5889 * verilog-mode.el (verilog-auto, verilog-delete-auto)
5890 (verilog-modi-cache-results, verilog-save-buffer-state)
5891 (verilog-save-font-no-change-functions): When internally suppressing
5892 change functions, use `inhibit-modification-hooks' and call
5893 `after-change-funtions' to more nicely work with user hooks.
5894 Reported by Stefan Monnier.
5895 (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
5896 Create `verilog-delete-auto-buffer' to avoid double-calling
5897 fontification hooks.
5898 (verilog-restore-buffer-modified-p, verilog-auto)
5899 (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
5900 set-buffer-modified-p. Reported by Stefan Monnier.
5901 (verilog-diff-auto, verilog-diff-buffers-p)
5902 (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
5903 (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
5904 AUTOINST with unpacked dimensional parameters, bug981. Reported by
5905 by Amol Nagapurkar.
5906 (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
5907 properties inside internal structures. No functional change
5908 intended.
5909
5910 2015-11-13 Dmitry Gutov <dgutov@yandex.ru>
5911
5912 Use generic dispatch for xref backends
5913
5914 * lisp/progmodes/xref.el (xref-backend-functions):
5915 New variable.
5916 (xref-find-function): Remove.
5917 (xref-find-backend)
5918 (xref--etags-backend): New functions.
5919 (xref-identifier-at-point-function)
5920 (xref-identifier-completion-table-function): Remove.
5921 (xref-backend-definitions, xref-backend-references)
5922 (xref-backend-apropos, xref-backend-identifier-at-point)
5923 (xref-backend-identifier-completion-table):
5924 New generic functions.
5925
5926 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
5927 Add `elisp--xref-backend' to the beginning of
5928 `xref-backend-functions', locally. Delete references to
5929 removed functions and vars.
5930 (elisp-xref-find): Remove.
5931 (elisp--xref-backend): New function.
5932 (elisp--xref-find-references, elisp--xref-find-apropos)
5933 (elisp--xref-identifier-completion-table):
5934 Turn into appropriately named generic methods.
5935
5936 * lisp/progmodes/etags.el (etags-xref-find): Remove.
5937 (xref-backend-identifier-completion-table)
5938 (xref-backend-references, xref-backend-definitions)
5939 (xref-backend-apropos): New generic methods.
5940
5941 2015-11-13 Juri Linkov <juri@linkov.net>
5942
5943 Support rectangular regions for more commands
5944
5945 * lisp/simple.el (region-extract-function): Handle the arg
5946 value ‘bounds’.
5947 (region-insert-function): New function.
5948 (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
5949 If non-nil, operate on multiple chunks.
5950 (region-noncontiguous-p): New function.
5951
5952 * lisp/rect.el: Add function rectangle--insert-region
5953 around region-insert-function.
5954 (extract-rectangle-bounds): New function.
5955 (rectangle--extract-region): Handle the arg value ‘bounds’.
5956 (rectangle--insert-region): New function.
5957
5958 * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
5959 around region-insert-function.
5960 (cua--extract-rectangle-bounds): New function.
5961 (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
5962
5963 * lisp/replace.el (query-replace, query-replace-regexp): Add arg
5964 ‘region-noncontiguous-p’. Use ‘use-region-p’.
5965 (query-replace-regexp-eval, map-query-replace-regexp)
5966 (replace-string, replace-regexp): Use ‘use-region-p’.
5967 (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
5968 (perform-replace): Add arg ‘region-noncontiguous-p’.
5969 If non-nil, operate on multiple chunks.
5970
5971 * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
5972 If non-nil, operate on multiple chunks. (Bug#19829)
5973
5974 2015-11-13 Dmitry Gutov <dgutov@yandex.ru>
5975
5976 Handle multiple matches on the same line; add highlighting
5977
5978 * lisp/progmodes/xref.el (xref-location-marker): Interpret the
5979 column value in characters.
5980 (xref--collect-matches): Rename from `xref--collect-match'.
5981 Search for all matches in the hit line. Add `highlight' face to
5982 the matched region in the summary. Update both callers.
5983
5984 2015-11-13 Dmitry Gutov <dgutov@yandex.ru>
5985
5986 Replace xref-match-bounds with xref-match-length
5987
5988 Relying on xref-location-marker to point to the beginning of the match
5989
5990 * lisp/progmodes/xref.el (xref-match-bounds): Remove.
5991 (xref-match-length): Add.
5992 (xref-make-match): Change the arguments.
5993 (xref--match-buffer-bounds): Remove.
5994 (xref-match-item): Store length, instead of end-column.
5995 (xref-pulse-momentarily)
5996 (xref--collect-match)
5997 (xref--query-replace-1): Update accordingly.
5998 (xref-query-replace): Ditto. And check that the search results
5999 are up-to-date.
6000
6001 2015-11-13 Paul Eggert <eggert@cs.ucla.edu>
6002
6003 Merge from gnulib
6004
6005 This incorporates:
6006 2015-11-13 xalloc-oversized: improve performance with GCC 5
6007 * lib/xalloc-oversized.h: Copy from gnulib.
6008
6009 2015-11-13 Paul Eggert <eggert@cs.ucla.edu>
6010
6011 Spruce up ftfont.c memory allocation
6012
6013 * src/ftfont.c (setup_otf_gstring):
6014 Avoid O(N**2) behavior when reallocating.
6015 (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
6016 reallocating buffers; this simplifies the code. Do not trust
6017 mflt_run to leave the output areas unchanged on failure, as
6018 this isn’t part of its interface spec.
6019
6020 2015-11-13 Paul Eggert <eggert@cs.ucla.edu>
6021
6022 Port recent XCB changes to 64-bit ‘long int’
6023
6024 For historical reasons, libX11 represents 32-bit values like Atoms as
6025 ‘long int’ even on platforms where ‘long int’ is 64 bits. XCB doesn’t
6026 do that, so adapt the recent XCB code to behave properly on 64-bit
6027 platforms. Also, fix what appears to be a bug in the interpretation
6028 of xcb_get_property_value_length, at least on my Fedora platform
6029 which is running libxcb-1.11-5.fc21.
6030 * src/xfns.c (x_real_pos_and_offsets):
6031 * src/xterm.c (get_current_wm_state):
6032 xcb_get_property_value_length returns a byte count, not a word count.
6033 For 32-bit quantities, xcb_get_property_value returns a vector
6034 of 32-bit words, not of (possibly 64-bit) long int.
6035
6036 2015-11-13 Paul Eggert <eggert@cs.ucla.edu>
6037
6038 * src/undo.c (run_undoable_change): Now static.
6039
6040 2015-11-13 Eli Zaretskii <eliz@gnu.org>
6041
6042 Remove support for ':timeout' from w32 tray notifications
6043
6044 * src/w32fns.c (Fw32_notification_notify): Delete the code that
6045 supports ':timeout'.
6046 (syms_of_w32fns): Don't DEFSYM ':timeout'. This avoids clashes
6047 with dbusbind.c when D-Bus is compiled in.
6048
6049 * doc/lispref/os.texi (Desktop Notifications): Don't mention
6050 ':timeout'.
6051
6052 2015-11-13 Juanma Barranquero <lekktu@gmail.com>
6053
6054 * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
6055 (simple-test--transpositions): New macro.
6056 (simple-transpose-subr): New test.
6057
6058 2015-11-13 Juanma Barranquero <lekktu@gmail.com>
6059
6060 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
6061
6062 2015-11-13 Juanma Barranquero <lekktu@gmail.com>
6063
6064 * src/undo.c: Small fixes for previous change
6065 (run_undoable_change): Mark void argument list.
6066 (record_property_change): Remove unused variable `boundary'.
6067
6068 2015-11-13 Eli Zaretskii <eliz@gnu.org>
6069
6070 Add a few more variables to redisplay--variables
6071
6072 * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
6073 and bidi-display-reordering to the list.
6074
6075 2015-11-13 Eli Zaretskii <eliz@gnu.org>
6076
6077 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
6078
6079 2015-11-13 Eli Barzilay <eli@barzilay.org>
6080
6081 Fix point positioning after transposing with negative arg
6082
6083 * lisp/simple.el (transpose-subr): When invoked with a negative
6084 argument, move point to after the transposed text, like we do
6085 when invoked with a positive argument. (Bug#21885)
6086
6087 2015-11-13 Eli Zaretskii <eliz@gnu.org>
6088
6089 Fix last change in shr.el
6090
6091 * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
6092 have-fringes-p. All callers changed. Doc fix. (Bug#21895)
6093
6094 2015-11-13 Eli Zaretskii <eliz@gnu.org>
6095
6096 Fix last change
6097
6098 * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
6099 Don't DEFSYM tray notification symbols if D-Bus is being used.
6100
6101 2015-11-13 Eli Zaretskii <eliz@gnu.org>
6102
6103 Another fix for MinGW64 and Cygwin builds due to notifications
6104
6105 * src/w32fns.c: Ifdef away tray notification code if D-Bus is
6106 being compiled into Emacs.
6107 (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
6108 Sw32_notification_notify and Sw32_notification_close if the code
6109 is not compiled. Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6110
6111 2015-11-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6112
6113 Remove intern calls and XXX comments from Fx_export_frames
6114
6115 * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
6116 Qsvg instead of intern calls. Use "postscript" instead of "ps"
6117 for consistency with image types. Remove XXX comments.
6118 (syms_of_xfns) <Qpdf>: DEFSYM it.
6119
6120 2015-11-12 Eric Hanchrow <eric.hanchrow@gmail.com>
6121
6122 shr: don't invoke unbound function (Bug#21895)
6123
6124 * lisp/net/shr.el (have-fringes-p): New function.
6125 (shr-insert-document, shr-fill-text): Use it.
6126
6127 2015-11-12 Juanma Barranquero <lekktu@gmail.com>
6128
6129 * test/automated/keymaps-test.el: Fix test to make it repeatable
6130
6131 (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
6132 entry to its initial value to make the test repeatable in interactive
6133 sessions (assuming it doesn't fail and crashes Emacs, of course).
6134
6135 2015-11-12 Artur Malabarba <bruce.connor.am@gmail.com>
6136
6137 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
6138 Small fix.
6139
6140 2015-11-12 Phillip Lord <phillip.lord@newcastle.ac.uk>
6141
6142 The heuristic that Emacs uses to add an `undo-boundary' has been
6143 reworked, as it interacts poorly with functions on `post-command-hook'
6144 or `after-change-functions'.
6145
6146 * lisp/simple.el: New section added.
6147 * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
6148 (self_insert_command): Calls simple.el to amalgamate.
6149 (delete_char): Calls simple.el to amalgamate.
6150 * src/keyboard.c (last_undo_boundary): Removed.
6151 * src/undo.c (run_undoable_change): New function.
6152
6153 2015-11-12 Juri Linkov <juri@linkov.net>
6154
6155 Bind [?\S-\ ] to previous line command in Dired-like modes
6156
6157 * lisp/arc-mode.el (archive-mode-map):
6158 * lisp/dired.el (dired-mode-map):
6159 * lisp/proced.el (proced-mode-map):
6160 * lisp/vc/vc-dir.el (vc-dir-mode-map):
6161 Bind [?\S-\ ] to previous line command.
6162 (Bug#20790)
6163
6164 2015-11-12 Eli Zaretskii <eliz@gnu.org>
6165
6166 Fix the MinGW64 and Cygwin-w32 builds
6167
6168 * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
6169 (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
6170 use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
6171 which cause trouble with MinGW42 headers. Ifdef away tray
6172 notifications code for Cygwin. Reported by Andy Moreton
6173 <andrewjmoreton@gmail.com>.
6174
6175 2015-11-12 Simen Heggestøyl <simenheg@gmail.com>
6176
6177 Enable sorting of JSON object keys when encoding
6178
6179 * lisp/json.el (json-encoding-object-sort-predicate): New variable
6180 for specifying a sorting predicate for JSON objects during encoding.
6181 (json--plist-to-alist): New utility function.
6182 (json-encode-hash-table): Re-use `json-encode-alist' when object keys
6183 are to be sorted.
6184 (json-encode-alist): Sort output by
6185 `json-encoding-object-sort-predicate, when set.
6186 (json-encode-plist): Re-use `json-encode-alist' when object keys are
6187 to be sorted.
6188 (json-pretty-print-buffer-ordered): New command to pretty print the
6189 buffer with object keys sorted alphabetically.
6190 (json-pretty-print-ordered): New command to pretty print the region
6191 with object keys sorted alphabetically.
6192
6193 * test/automated/json-tests.el (test-json-plist-to-alist)
6194 (test-json-encode-plist, test-json-encode-hash-table)
6195 (test-json-encode-alist-with-sort-predicate)
6196 (test-json-encode-plist-with-sort-predicate): New tests.
6197
6198 * etc/NEWS: Add an entry for the new commands.
6199
6200 2015-11-12 Juanma Barranquero <lekktu@gmail.com>
6201
6202 * test/automated/keymap-tests.el: New test file.
6203
6204 2015-11-12 Ken Raeburn <raeburn@raeburn.org>
6205
6206 Speed up x_real_pos_and_offsets using XCB
6207
6208 * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
6209 all X calls, and pipeline requests when possible, collecting results
6210 later. Eliminate use of x_catch_errors (and thus XSync) in XCB case.
6211
6212 2015-11-12 Ken Raeburn <raeburn@raeburn.org>
6213
6214 Enable use of XCB for checking window manager state
6215
6216 * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
6217 of XGetWindowProperty plus error-catching, since we can explicitly
6218 check for errors in the XCB version. This eliminates 3 XSync calls on
6219 top of the round-trip actually fetching the information.
6220
6221 2015-11-12 Ken Raeburn <raeburn@raeburn.org>
6222
6223 Detect XCB and save a connection handle
6224
6225 * configure.ac: If using X11, check for XCB libraries and header.
6226 * src/Makefile.in (XCB_LIBS): Define.
6227 (LIBX_EXTRA): Include it.
6228
6229 * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
6230 (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
6231 * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
6232
6233 2015-11-12 Ken Raeburn <raeburn@raeburn.org>
6234
6235 Reduce some data dependencies between X calls
6236
6237 Gains nothing in the traditional-Xlib code, but more closely aligns
6238 with how the XCB version will work.
6239
6240 * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
6241 send coordinates (0,0) to the X server and add in the real coordinates
6242 after getting the response. Move XGetGeometry for outer window inside
6243 error-trapping block. Use DPY variable more, since it's available.
6244
6245 2015-11-12 Ken Raeburn <raeburn@raeburn.org>
6246
6247 Use color cache for creating bitmap
6248
6249 * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
6250 Set attributes to use the caching color allocator. Initialize and
6251 free the cache.
6252
6253 2015-11-12 Eli Barzilay <eli@barzilay.org>
6254
6255 Add "^" to the interactive specs of `dired-next/previous-line'
6256
6257 * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
6258 to bind these commands to the arrow keys, and that means that they work
6259 better with a "^" in the `interactive' declaration so selection works
6260 as expected.
6261
6262 2015-11-11 Thomas Fitzsimmons <fitzsim@fitzsim.org>
6263
6264 Sync with soap-client repository, version 3.0.2
6265
6266 * soap-client.el: Bump version to 3.0.2.
6267
6268 * soap-client.el (soap-warning): Use format, not format-message.
6269
6270 * soap-client.el: Add cl-lib to Package-Requires. Require cl-lib.
6271 (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
6272
6273 * soap-client.el: Support Emacs versions that do not have
6274 define-error.
6275
6276 * soap-inspect.el: Remove version header.
6277
6278 * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
6279 format.
6280
6281 2015-11-11 Alan Mackenzie <acm@muc.de>
6282
6283 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
6284
6285 * lisp/progmodes/cc-engine.el (c-backward-single-comment)
6286 (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
6287 (c-guess-basic-syntax):
6288 Remove bindings of open-paren-in-column-0-is-defun-start to nil.
6289 (c-get-fallback-scan-pos): "New" function (existed several years ago).
6290 (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
6291 c-get-fallback-scan-pos.
6292 (c-parse-state-1): Handle 'BOD strategy.
6293
6294 * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
6295 (c-font-lock-fontify-region): Remove bindings of
6296 open-paren-in-column-0-is-defun-start to nil.
6297
6298 * doc/misc/cc-mode.texi (Performance Issues)
6299 (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
6300
6301 2015-11-11 Artur Malabarba <bruce.connor.am@gmail.com>
6302
6303 * lisp/obarray.el: Fix shadowed variables.
6304 (obarray-map, obarray-remove, obarray-put, obarray-get):
6305 Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
6306
6307 2015-11-11 Eli Zaretskii <eliz@gnu.org>
6308
6309 Avoid error in submitting a form with EWW
6310
6311 * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
6312 CHUNK to be nil. (Bug#21881)
6313
6314 2015-11-11 Nicolas Petton <nicolas@petton.fr>
6315
6316 Rename seq-p and map-p to seqp and mapp
6317
6318 * lisp/emacs-lisp/seq.el (seqp): New name.
6319 * lisp/emacs-lisp/map.el (mapp): New name.
6320 * doc/lispref/sequences.texi: Update the documentation for seqp.
6321 * test/automated/map-tests.el: Update the tests for mapp.
6322
6323 2015-11-11 Nicolas Petton <nicolas@petton.fr>
6324
6325 Rename obarray-p to obarrayp
6326
6327 * lisp/obarray.el (obarrayp): New name.
6328 * test/automated/obarray-tests.el: Update the tests.
6329
6330 2015-11-11 Nicolas Petton <nicolas@petton.fr>
6331
6332 Rename obarray-foreach to obarray-map
6333
6334 * lisp/obarray.el (obarray-map): New name.
6335 * test/automated/obarray-tests.el: Update the corresponding tests.
6336
6337 2015-11-11 Przemysław Wojnowski <esperanto@cumego.com>
6338
6339 New file with obarray functions
6340
6341 * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
6342 * test/automated/obarray-tests.el: New file.
6343
6344 2015-11-11 Eli Zaretskii <eliz@gnu.org>
6345
6346 Implement tray notifications for MS-Windows
6347
6348 * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
6349 (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
6350 (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
6351 (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
6352 (EMACS_NOTIFICATION_MSG): New macros.
6353 (NI_Severity): New enumeration.
6354 (get_dll_version, utf8_mbslen_lim, add_tray_notification)
6355 (delete_tray_notification, Fw32_notification_notify)
6356 (Fw32_notification_close): New functions.
6357 (syms_of_w32fns): Defsubr functions exposed to Lisp. DEFSYM
6358 keywords used by w32-notification-notify.
6359
6360 * doc/lispref/os.texi (Desktop Notifications): Describe the native
6361 w32 tray notifications.
6362
6363 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
6364
6365 Optimize `file-equal-p' and `file-in-directory-p' in Tramp
6366
6367 * lisp/net/tramp.el (tramp-handle-file-equal-p)
6368 (tramp-handle-file-in-directory-p): New defuns. Suggested by
6369 Harvey Chapman <hchapman@3gfp.com>.
6370
6371 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
6372 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
6373 * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
6374 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
6375
6376 2015-11-10 Karl Fogel <kfogel@red-bean.com>
6377
6378 * CONTRIBUTE: Encourage adding tests.
6379
6380 Based on this post from John Wiegley:
6381
6382 From: "John Wiegley" <johnw@newartisans.com>
6383 Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
6384 To: Juanma Barranquero <lekktu@gmail.com>
6385 Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
6386 emacs-devel <emacs-devel@gnu.org>
6387 Date: Wed, 28 Oct 2015 18:45:29 -0700
6388 Message-ID: <m2y4emqwg6.fsf@newartisans.com>
6389
6390 https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
6391
6392 2015-11-10 David Reitter <david.reitter@gmail.com>
6393
6394 Avoid creating notification objects when possible
6395
6396 * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
6397 (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
6398 functions that do not require a notification object. When needed,
6399 define NSWindowDidEnterFullScreenNotification to allow for compilation
6400 on OS X 10.6.8.
6401
6402 2015-11-10 Paul Eggert <eggert@cs.ucla.edu>
6403
6404 Move INTEGER_TO_CONS body out of .h file
6405
6406 * src/data.c (INTBIG_TO_LISP): New macro, with most
6407 of the contents of the old INTEGER_TO_CONS.
6408 (intbig_to_lisp, uintbig_to_lisp): New functions.
6409 * src/lisp.h (INTEGER_TO_CONS):
6410 Simplify by using EXPR_SIGNED and the new functions.
6411 This shrinks code size a bit, and makes it easier to
6412 put a breakpoint on handling of large integers.
6413
6414 2015-11-10 Paul Eggert <eggert@cs.ucla.edu>
6415
6416 Merge from gnulib
6417
6418 This incorporates:
6419 2015-11-10 intprops: new public macro EXPR_SIGNED
6420 2015-11-10 intprops: fix typo in clang port
6421 * lib/intprops.h: Copy from gnulib.
6422
6423 2015-11-10 Paul Eggert <eggert@cs.ucla.edu>
6424
6425 Spelling fixes
6426
6427 * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
6428 Fix misspelling in output.
6429
6430 2015-11-10 Artur Malabarba <bruce.connor.am@gmail.com>
6431
6432 * doc/lispref/variables.texi (Directory Local Variables):
6433 Document dir-locals wildcards.
6434
6435 * lisp/files.el (dir-locals-file): Point to Info node.
6436
6437 * doc/emacs/custom.texi (Directory Variables):
6438 Document dir-locals wildcards.
6439
6440 * etc/NEWS: Document new functionality.
6441
6442 2015-11-10 Artur Malabarba <bruce.connor.am@gmail.com>
6443
6444 * lisp/files.el: Don't allow customization of dir-locals sorting.
6445 In retrospect, this is not a good idea for the same reason that
6446 `dir-locals-file' is a defconst, because it is important that this
6447 behaviour be "uniform across different environments and users".
6448 Sure, the user can still change the sorting with a hack, but we
6449 shouldn't encourage them to change it.
6450 (dir-locals--all-files): Return list in the order returned by
6451 `file-expand-wildcards'.
6452 (file-expand-wildcards): Document the sorting predicate used.
6453 (dir-locals-sort-predicate): Delete variable.
6454
6455 2015-11-10 Artur Malabarba <bruce.connor.am@gmail.com>
6456
6457 * lisp/files.el (dir-locals-read-from-file): Better handle errors.
6458
6459 * lisp/isearch.el (search-default-regexp-mode): Change default value.
6460
6461 2015-11-10 Artur Malabarba <bruce.connor.am@gmail.com>
6462
6463 * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
6464 `locate-dominating-file' will now keep looking if the files it finds in
6465 a given directory are unreadable (or not files).
6466
6467 2015-11-10 Artur Malabarba <bruce.connor.am@gmail.com>
6468
6469 * lisp/files.el (dir-locals-file): Allow wildcards.
6470 (dir-locals-find-file, dir-locals-collect-variables)
6471 (dir-locals-read-from-file): Update accordingly.
6472 (hack-dir-local-variables): Rename a local variable.
6473
6474 * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
6475
6476 * lisp/help-fns.el (describe-variable): Update accordingly.
6477
6478 * .gitignore: Add .dir-locals?.el.
6479
6480 2015-11-10 Artur Malabarba <bruce.connor.am@gmail.com>
6481
6482 * lisp/emacs-lisp/map.el (map-merge-with): New function.
6483
6484 * test/automated/map-tests.el (test-map-merge-with): New test.
6485
6486 2015-11-09 Karl Fogel <kfogel@red-bean.com>
6487
6488 Fix some recently-perturbed bookmark autoloads
6489
6490 * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
6491 (bookmark-set): Restore autoload.
6492 (bookmark-set-no-overwrite): Add autoload.
6493
6494 Thanks to Juanma Barranquero for noticing the autoload problems
6495 introduced by my recent commit adding/changing the above functions
6496 (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
6497
6498 2015-11-09 Noah Friedman <friedman@splode.com>
6499
6500 * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
6501 the start of buffer. I don't recall if older versions of gdb were
6502 less strict but you cannot dump a 0-length range in gdb 7.9.1.
6503
6504 2015-11-09 Dmitry Gutov <dgutov@yandex.ru>
6505
6506 * lisp/progmodes/project.el: Update Commentary.
6507
6508 Merge branch 'project-next'
6509
6510 2015-11-09 Dmitry Gutov <dgutov@yandex.ru>
6511
6512 Fold `project-ask-user' into `project-current'
6513
6514 * lisp/progmodes/project.el (project-find-functions):
6515 Remove `project-ask-user'.
6516 (project-ask-user): Remove function and the corresponding
6517 `project-roots' implementation.
6518 (project-current): Add a new argument, MAYBE-PROMPT. Prompt the
6519 user in case there's no project in the current directory. Update
6520 all callers.
6521
6522 2015-11-09 Karl Fogel <kfogel@red-bean.com>
6523
6524 When VC detects a conflict, specify which file
6525
6526 * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
6527 * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
6528 * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
6529 * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
6530 * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
6531 to display a standard message that specifies the conflicted file.
6532
6533 Before this change, the message VC used for indicating a conflicted
6534 file was just "There are unresolved conflicts in this file" without
6535 naming the file (and this language was duplicated in several places).
6536 After this change, it's "There are unresolved conflicts in file FOO"
6537 (and this language is now centralized in one function in vc.el).
6538
6539 Justification: It's important for the message to name the conflicted
6540 file because the moment when VC realizes a file is conflicted does not
6541 always come interactively. For example, some people automatically
6542 find a set of Org Mode files on startup, and may keep those .org files
6543 under version control. If any of the files are conflicted, the user
6544 just sees some messages fly by, and might later check the "*Messages*"
6545 buffer to find out what files were conflicted. I'm not saying this
6546 happened to me or anything; it's a purely hypothetical example.
6547
6548 2015-11-09 Eli Zaretskii <eliz@gnu.org>
6549
6550 Fix assertion violation in define-key
6551
6552 * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
6553 objects. Reported by Drew Adams <drew.adams@oracle.com>
6554 and Juanma Barranquero <lekktu@gmail.com>.
6555
6556 2015-11-09 Dima Kogan <dima@secretsauce.net>
6557
6558 Fix a memory leak in GC of font cache
6559
6560 * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
6561 entities if some of the fonts it references are marked. This
6562 plugs a memory leak. (Bug#21556)
6563
6564 2015-11-09 Paul Eggert <eggert@cs.ucla.edu>
6565
6566 Use INT_ADD_WRAPV etc. to check integer overflow
6567
6568 * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
6569 * src/buffer.c (record_overlay_string, overlay_strings):
6570 * src/casefiddle.c (casify_object):
6571 * src/ccl.c (Fccl_execute_on_string):
6572 * src/character.c (char_width, c_string_width, lisp_string_width)
6573 (count_size_as_multibyte, string_escape_byte8):
6574 * src/coding.c (coding_alloc_by_realloc, produce_chars):
6575 * src/data.c (arith_driver):
6576 * src/dispnew.c (realloc_glyph_pool, init_display):
6577 * src/editfns.c (styled_format):
6578 * src/fns.c (Ffillarray):
6579 * src/ftfont.c (ftfont_shape_by_flt):
6580 * src/gnutls.c (gnutls_hex_string):
6581 * src/gtkutil.c (get_utf8_string):
6582 * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
6583 * src/keymap.c (Fkey_description):
6584 * src/lisp.h (SAFE_ALLOCA_LISP):
6585 * src/term.c (encode_terminal_code):
6586 * src/tparam.c (tparam1):
6587 * src/xselect.c (x_property_data_to_lisp):
6588 * src/xsmfns.c (smc_save_yourself_CB):
6589 * src/xterm.c (x_term_init):
6590 When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
6591 more-complicated code involving division and/or
6592 INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
6593 subtraction and/or INT_ADD_OVERFLOW.
6594 * src/casefiddle.c (casify_object): Simplify multibyte size check.
6595 * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
6596 * src/data.c (arith_driver): Also check for division overflow,
6597 as that’s now possible given that the accumulator can now contain
6598 any Emacs integer.
6599 * src/lisp.h (lisp_word_count): Remove; no longer used.
6600
6601 2015-11-08 Dmitry Gutov <dgutov@yandex.ru>
6602
6603 Make sure that the ignore file exists
6604
6605 * lisp/vc/vc.el (vc-default-ignore-completion-table):
6606 Make sure that the ignore file exists.
6607
6608 2015-11-08 Michael Sperber <mike@xemacs.org>
6609
6610 * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
6611 `gnus-summary-delete-article` in a way that also works on XEmacs.
6612
6613 2015-11-08 Simen Heggestøyl <simenheg@gmail.com>
6614
6615 Add support for retrieving paths to JSON elements
6616
6617 Add support for retrieving the path to a JSON element. This can for
6618 instance be useful to retrieve paths in deeply nested JSON
6619 structures.
6620
6621 * lisp/json.el (json-pre-element-read-function)
6622 (json-post-element-read-function): New variables to hold pre- and post
6623 read callback functions for `json-read-array' and `json-read-object'.
6624 (json--path): New variable used internally by `json-path-to-position'.
6625 (json--record-path, json--check-position): New functions used
6626 internally by `json-path-to-position'.
6627 (json-path-to-position): New function for retrieving the path to a
6628 JSON element at a given position.
6629 (json-read-object, json-read-array): Call
6630 `json-pre-element-read-function' and `json-post-element-read-function'
6631 when set.
6632
6633 * test/automated/json-tests.el (test-json-path-to-position-with-objects)
6634 (test-json-path-to-position-with-arrays)
6635 (test-json-path-to-position-no-match): New tests for
6636 `json-path-to-position'.
6637
6638 2015-11-08 Karl Fogel <kfogel@red-bean.com>
6639
6640 * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
6641
6642 This really should been part of my previous commit
6643 (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
6644
6645 2015-11-08 Karl Fogel <kfogel@red-bean.com>
6646
6647 Offer non-overwrite bookmark setter (Bug#15746)
6648
6649 * lisp/bookmark.el (bookmark-set-internal): New helper function to do
6650 what `bookmark-set' used to do, but with more choices for overwrite
6651 vs push, and with minor changes to the interactive prompt format.
6652 (bookmark-set): Rewrite as wrapper around above.
6653 If overwriting, inform the user of that in the prompt.
6654 (bookmark-set-no-overwrite): New function, also done as wrapper.
6655 Bind to "M" in `ctl-x-r-map' autoloads.
6656 (bookmark-map): Similarly bind "M" here.
6657
6658 2015-11-08 Paul Eggert <eggert@cs.ucla.edu>
6659
6660 * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
6661
6662 2015-11-08 Alan Modra <amodra@gmail.com>
6663
6664 ELF unexec: Don't insert a new section
6665
6666 Reuse the .bss section instead, making it SHT_PROGBITS. This way we
6667 don't need to mess with symbol st_shndx, or section sh_link and
6668 sh_info.
6669
6670 This does lead to eu-elflint complaints about symbols defined in .bss
6671 with a needed version, because normally it is undefined symbols that
6672 have needed versions; Defined symbols have version definitions.
6673 The exception is symbols defined by the linker in .dynbss for
6674 variables copied from a shared library in order to avoid text
6675 relocations, with copy relocs to copy their initial values from the
6676 shared library. These symbols are both defined and have needed
6677 versions, and eu-elflink only expects to see them in SHT_NOBITS
6678 sections. Of course there is no real problem with having such symbols
6679 in SHT_PROGBITS sections. glibc ld.so handles them fine.
6680
6681 * src/unexelf.c: Delete outdated comments.
6682 (PATCH_INDEX): Delete.
6683 (find_section): Delete.
6684 (unexec): Don't add a new section. Instead reuse the last bss
6685 section, extending it to cover dumped data. Make bss sections
6686 SHT_PROGBITS. Remove all patching of sh_link, sh_info and
6687 st_shndx. Rename bss sections.
6688
6689 2015-11-08 Alan Modra <amodra@gmail.com>
6690
6691 ELF unexec: Drive from PT_LOAD header rather than sections
6692
6693 This rewrites bss handling in the ELF unexec code. Finding bss
6694 sections by name results in complicated code that
6695 - does not account for all names of possible bss sections,
6696 - assumes specific ordering of bss sections,
6697 - can wrongly choose a SHT_NOBITS section not in the bss segment,
6698 - incorrectly calculates bss size (no accounting for alignment gaps),
6699 - assumes .data and .bss are in the same segment.
6700
6701 All of these problems and more are solved by finding the bss segment
6702 in PT_LOAD headers, ie. the address range included in p_memsz but not
6703 p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
6704 in that address range.
6705
6706 * src/unexelf.c: Delete old ppc comment.
6707 (OLD_PROGRAM_H): Define.
6708 (round_up): Delete.
6709 (unexec): Don't search for bss style sections by name. Instead,
6710 use the last PT_LOAD header address range covered by p_memsz
6711 but not p_filesz and match any SHT_NOBITS section in that
6712 address range. Simplify initialisation of section header vars.
6713 Don't assume that section headers are above bss segment. Move
6714 copying of bss area out of section loop. Align .data2 section
6715 to 1, since it now covers the entire bss area. For SHT_NOBITS
6716 sections in the bss segment, leave sh_addr and sh_addralign
6717 unchanged, but correct sh_offset. Clear memory corresponding
6718 to SHT_NOBITS .plt section. Delete comment and hacks for
6719 sections partly overlapping bss range now that the full range
6720 is properly calculated. Delete now dead .sbss code.
6721 (Bug#20614)
6722
6723 2015-11-08 Alan Modra <amodra@gmail.com>
6724
6725 ELF unexec: R_*_NONE relocs
6726
6727 These should be ignored on all targets.
6728
6729 * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
6730 not just Alpha. Comment on reloc size assumption.
6731
6732 2015-11-08 Alan Modra <amodra@gmail.com>
6733
6734 ELF unexec: _OBJC_ symbols in bss sections
6735
6736 This code assumed that there was only one bss section. Rather than
6737 checking for a particular index, check the section type. Also, handle
6738 the possibility that the section was SHT_NOBITS originally and is
6739 unchanged, in which case no clearing is needed (and sh_offset isn't
6740 necessarily valid, which can lead to a wild memset).
6741
6742 * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
6743 bss sections.
6744
6745 2015-11-08 Alan Modra <amodra@gmail.com>
6746
6747 ELF unexec: Symbol table patching
6748
6749 No st_shndx value larger than SHN_LORESERVE should be changed.
6750 * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
6751 SHN_LORESERVE. Error on SHN_XINDEX.
6752
6753 2015-11-08 Alan Modra <amodra@gmail.com>
6754
6755 ELF unexec: Merge Alpha and MIPS COFF debug handling
6756
6757 * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
6758 Don't find .mdebug section index, find the section in the loop.
6759 Allow for unlikely possibility that .mdebug is located at sh_offset
6760 before bss segment, by calculating move from difference in
6761 sh_offset rather than just assuming new_data2_size. Simplify
6762 cbLineOffset handling.
6763
6764 2015-11-08 Alan Modra <amodra@gmail.com>
6765
6766 ELF unexec: Tidy code
6767
6768 Separate out some of the more mechanical changes so following patches
6769 are smaller.
6770
6771 * src/unexelf.c (unexec): Rearrange initialisation of program
6772 header vars. Use pointer vars in loops rather than indexing
6773 section header array via macros. Simplify _OBJC_ sym code
6774 and reloc handling code.
6775
6776 2015-11-08 Alan Modra <amodra@gmail.com>
6777
6778 ELF unexec: Correct section header index
6779
6780 First a small fix. The code incorrectly uses "NEW_SECTION_H (n)" when
6781 it should have been using "NEW_SECTION_H (nn)" to find the name of the
6782 section currently being processed. Of course, before the bss
6783 sections, n and nn have the same value, so this doesn't matter except
6784 in the case of .sbss. For .sbss this probably meant .bss (most likely
6785 the next section) was copied from memory. A later patch removes the
6786 bogus .sbss handling anyway.
6787
6788 * src/unexelf.c (unexec): Use correct index to look up names.
6789
6790 2015-11-08 Michael Albinus <michael.albinus@gmx.de>
6791
6792 Fix Bug#21841
6793
6794 * lisp/filenotify.el (file-notify--rm-descriptor):
6795 Use `descriptor' instead of computing its value.
6796 (file-notify--descriptor): Additional argument FILE. Adapt all callees.
6797 (file-notify-rm-watch): Use `descriptor' when calling file name handler.
6798 (Bug#21841)
6799
6800 2015-11-08 Dmitry Gutov <dgutov@yandex.ru>
6801
6802 Remove dirs in vc project roots from the the vc project library roots
6803
6804 * lisp/progmodes/project.el (project-library-roots):
6805 Remove directories inside the project roots from the result.
6806 (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
6807
6808 2015-11-07 Dmitry Gutov <dgutov@yandex.ru>
6809
6810 Move and rename xref-find-regexp to the project package
6811
6812 * lisp/progmodes/project.el (project-find-regexp)
6813 (project--read-regexp)
6814 (project--find-regexp-in): New functions.
6815
6816 * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
6817 xref--show-xrefs. Use in existing callers in place of that
6818 function.
6819 (xref--show-xrefs): Only do the "show" part.
6820 (xref-find-regexp): Rename, more or less, to
6821 project-or-libraries-find-regexp.
6822
6823 2015-11-06 Dmitry Gutov <dgutov@yandex.ru>
6824
6825 Abolish temporary buffer management for xref
6826
6827 * lisp/progmodes/xref.el (xref--temporary-buffers)
6828 (xref--current)
6829 (xref--inhibit-mark-current)
6830 (xref--mark-selected): Remove. Remove all references.
6831 (xref--show-xrefs): Do not construct the
6832 list of the temporary buffers, nor pass it along.
6833
6834 2015-11-06 Dmitry Gutov <dgutov@yandex.ru>
6835
6836 Rename "search path" to "library roots"
6837
6838 * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
6839 of the elements from CL-LIST1.
6840
6841 * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
6842 Update WRT to the above change.
6843
6844 * lisp/progmodes/project.el (project-search-path-function): Rename
6845 to project-library-roots-function, update the documentation and
6846 references.
6847 (project-search-path): Likewise, to project-library-roots.
6848 (project-roots): Clarify documentation.
6849 (project-vc-search-path): Likewise, to project-vc-library-roots.
6850 (project-library-roots): In addition to the renames, thread the
6851 results through file-name-as-directory.
6852 (project-prune-directories): Accept a variable number of
6853 arguments. Rename to project-combine-directories.
6854 (project-subtract-directories): New function.
6855
6856 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
6857 Append project-roots and project-library-roots together.
6858
6859 * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
6860
6861 2015-11-08 Paul Eggert <eggert@cs.ucla.edu>
6862
6863 Prefer xpalloc to doubling buffers by hand
6864
6865 * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
6866 (read1): Use it for simplicity.
6867 * src/macros.c (store_kbd_macro_char):
6868 * src/minibuf.c (read_minibuf_noninteractive):
6869 * src/term.c (encode_terminal_code):
6870 * src/xrdb.c (magic_db):
6871 Prefer xpalloc to growing buffers by hand.
6872 This doesn’t fix any bugs, but simplifies the code a bit.
6873
6874 2015-11-08 Paul Eggert <eggert@cs.ucla.edu>
6875
6876 Merge from gnulib
6877
6878 This incorporates:
6879 2015-11-05 timespec-sub: fix overflow bug; add tests
6880 2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
6881 2015-11-03 intprops: add parentheses
6882 * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
6883 Copy from gnulib.
6884
6885 2015-11-07 David Reitter <david.reitter@gmail.com>
6886
6887 Provide NS notification objects where required to eliminate warnings
6888
6889 * nsterm.m (windowDidResize:, toggleFullScreen:):
6890 Call notification functions with notification objects
6891 as per delegate APIs.
6892
6893 2015-11-07 Noam Postavsky <npostavs@users.sourceforge.net>
6894
6895 Add test for bug #21824
6896
6897 * test/automated/buffer-tests.el: New file.
6898 (overlay-modification-hooks-message-other-buf): New test.
6899
6900 2015-11-07 Kelvin White <kwhite@gnu.org>
6901
6902 * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
6903
6904 2015-11-07 David Reitter <david.reitter@gmail.com>
6905
6906 Ignore fullscreen exit notifications on NS when frame is dead
6907
6908 * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
6909 (windowDidExitFullScreen:): Return if frame is dead.
6910 These functions may be called when a fullscreen frame
6911 is closed; they are called before, not after.
6912
6913 May address Bug#21428.
6914
6915 2015-11-07 Eli Zaretskii <eliz@gnu.org>
6916
6917 Speed up lookup in redisplay--variables
6918
6919 * lisp/frame.el (redisplay--variables): Make it a hash-table.
6920
6921 * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
6922 as a hash-table. This speeds up this function by an order of
6923 magnitude: where previously a setq was slowed down by 100% by
6924 introducing the maybe_set_redisplay test, it is now only 5%
6925 slower.
6926 (syms_of_xdisp) <redisplay--variables>: Doc fix.
6927
6928 2015-11-07 Artur Malabarba <bruce.connor.am@gmail.com>
6929
6930 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
6931
6932 The defsubst was being created as:
6933 (cl-defsubst name (args) ("DOC") ...)
6934
6935 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
6936 Add test.
6937
6938 2015-11-07 Mihai Olteanu <mihai_olteanu@fastmail.fm> (tiny change)
6939
6940 Update doc string of hexl-mode
6941
6942 * lisp/hexl.el (hexl-mode): Doc fix. (Bug#21800)
6943
6944 2015-11-07 Eli Zaretskii <eliz@gnu.org>
6945
6946 Fix error in copy-abbrev-table
6947
6948 * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
6949 property of the abbrev-table. (Bug#21828)
6950
6951 * test/automated/abbrev-tests.el: New file.
6952
6953 2015-11-07 Michael Albinus <michael.albinus@gmx.de>
6954
6955 Add test to auto-revert-tests.el for Bug#21841
6956
6957 * test/automated/auto-revert-tests.el
6958 (auto-revert-test01-auto-revert-several-files): New test.
6959 (auto-revert-test02-auto-revert-tail-mode)
6960 (auto-revert-test03-auto-revert-mode-dired): Rename them.
6961
6962 2015-11-07 Martin Rudalics <rudalics@gmx.at>
6963
6964 * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
6965
6966 2015-11-07 Martin Rudalics <rudalics@gmx.at>
6967
6968 In x_consider_frame_title don't set title of tooltip frames
6969
6970 * src/xdisp.c (x_consider_frame_title): Return immediately for
6971 tooltip frames to avoid displaying empty tooltips.
6972
6973 2015-11-06 Anders Lindgren <andlind@gmail.com>
6974
6975 Fixed NextStep fullscreen problem (bug#21770).
6976
6977 * src/nsterm.m (ns_constrain_all_frames): Don't constrain
6978 fullscreen frames.
6979
6980 2015-11-06 Eli Zaretskii <eliz@gnu.org>
6981
6982 Ensure redisplay after evaluation
6983
6984 * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
6985 Revert last change.
6986 * lisp/frame.el (redisplay--variables): Populate the
6987 redisplay--variables list.
6988 * src/xdisp.c (maybe_set_redisplay): New function.
6989 (syms_of_xdisp) <redisplay--variables>: New variable.
6990 * src/window.h (maybe_set_redisplay): Declare prototype.
6991 * src/data.c (set_internal): Call maybe_set_redisplay. (Bug#21835)
6992
6993 2015-11-06 Artur Malabarba <bruce.connor.am@gmail.com>
6994
6995 * test/automated/subr-tests.el (subr-test-when): Fix again.
6996
6997 2015-11-06 Eli Zaretskii <eliz@gnu.org>
6998
6999 Don't invoke overlay modification hooks in wrong buffer
7000
7001 * src/buffer.c (report_overlay_modification): When called with
7002 AFTER non-zero, don't invoke overlay modification hooks if the
7003 buffer recorded in last_overlay_modification_hooks is different
7004 from the current buffer. (Bug#21824)
7005
7006 2015-11-06 Juanma Barranquero <lekktu@gmail.com>
7007
7008 * admin/notes/repo: Fix a few obsolete references to Bazaar.
7009
7010 2015-11-06 Artur Malabarba <bruce.connor.am@gmail.com>
7011
7012 * test/automated/subr-tests.el (subr-test-when): Fix test.
7013
7014 2015-11-06 Martin Rudalics <rudalics@gmx.at>
7015
7016 Avoid division by zero crash observed by Yuan MEI
7017
7018 See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
7019
7020 * src/dispnew.c (required_matrix_height, required_matrix_width):
7021 Avoid division by zero.
7022 * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
7023 dpyinfo->smallest_char_width to 1.
7024
7025 2015-11-06 Eli Zaretskii <eliz@gnu.org>
7026
7027 Ensure redisplay after "C-x C-e"
7028
7029 * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
7030 redisplay happens to account for any side effects of the evaluated
7031 sexp. (Bug#21835)
7032
7033 2015-11-06 Michael Albinus <michael.albinus@gmx.de>
7034
7035 Skip some file notification tests for cygwin
7036
7037 * test/automated/file-notify-tests.el (file-notify--test-with-events):
7038 Remove argument TIMEOUT. Adapt all callees.
7039 (file-notify-test02-events, file-notify-test04-file-validity):
7040 Skip for cygwin. (Bug#21804)
7041
7042 2015-11-05 Stephen Leake <stephen_leake@stephe-leake.org>
7043
7044 * lisp/progmodes/xref.el: Require semantic/symref during compilation.
7045
7046 2015-11-05 Daiki Ueno <ueno@gnu.org>
7047
7048 Suppress redundant Pinentry startup messages
7049
7050 * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
7051 * lisp/epg.el: Declare `pinentry-start'.
7052 (epg--start): Call `pinentry-start' with QUIET argument set.
7053
7054 2015-11-05 Xue Fuqiao <xfq.free@gmail.com>
7055
7056 * doc/emacs/ack.texi (Acknowledgments): Updates.
7057
7058 2015-11-05 Juanma Barranquero <lekktu@gmail.com>
7059
7060 * test/automated/elisp-mode-test.el: Silence some run-time warnings.
7061 (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
7062
7063 2015-11-05 Tassilo Horn <tsdh@gnu.org>
7064
7065 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
7066 Add prettification support for \times.
7067
7068 2015-11-05 Juanma Barranquero <lekktu@gmail.com>
7069
7070 * test/automated/process-tests.el: Skip tests when bash is unavailable.
7071 (process-test-sentinel-accept-process-output)
7072 (process-test-sentinel-sit-for): skip-unless bash executable found.
7073
7074 2015-11-05 Eli Zaretskii <eliz@gnu.org>
7075
7076 Add test for bug #21831
7077
7078 * test/automated/process-tests.el
7079 (start-process-should-not-modify-arguments): New test. (Bug#21831)
7080 Suggested by Nicolas Richard <youngfrog@members.fsf.org>
7081
7082 2015-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
7083
7084 * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
7085
7086 (eieio--generic-static-object-generalizer): Fix typo.
7087 * test/automated/eieio-tests.el: Byte-compile it again. It looks
7088 like the underlying cause of bug#17852 was fixed in the mean time.
7089
7090 2015-11-04 Artur Malabarba <bruce.connor.am@gmail.com>
7091
7092 Revert "* lisp/subr.el (when): Use `macroexp-progn'"
7093
7094 This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
7095 It breaks bootstrapping (duh).
7096
7097 2015-11-04 Artur Malabarba <bruce.connor.am@gmail.com>
7098
7099 * lisp/files.el (report-errors): Obsolete.
7100
7101 (normal-mode, hack-local-variables, dir-locals-find-file):
7102 Use `with-demoted-errors' instead.
7103
7104 2015-11-04 Artur Malabarba <bruce.connor.am@gmail.com>
7105
7106 * lisp/subr.el (when): Use `macroexp-progn'.
7107
7108 * test/automated/subr-tests.el (subr-test-when): New test.
7109
7110 2015-11-04 Juanma Barranquero <lekktu@gmail.com>
7111
7112 * lisp/progmodes/xref.el: Doc fixes.
7113 (xref-make-file-location, xref-make-buffer-location, xref-make)
7114 (xref-make-bogus-location, xref-make-match): Add cross-references.
7115 (xref--insert-xrefs): Fix typo in docstring.
7116
7117 2015-11-04 Anders Lindgren <andlind@gmail.com>
7118
7119 Render fringe bitmaps correctly on NextStep (bug#21301)
7120
7121 The fringe bitmaps were inverted, the background was not transparent,
7122 the image data was horizontally mirrored, and periodic fringe bitmaps
7123 were not supported.
7124
7125 * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
7126 When both background and foreground colors are 0, set the background
7127 alpha channel to 0 (making the background transparent). When
7128 copying the image data, do this from the most significant bit
7129 (leftmost) to the least (rightmost), to avoid mirroring.
7130 * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
7131 Add support for periodic images (e.g. the empty line indicator).
7132
7133 2015-11-03 Michael Heerdegen <michael_heerdegen@web.de>
7134
7135 * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
7136
7137 2015-11-03 Nicolas Petton <nicolas@petton.fr>
7138
7139 * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
7140
7141 * admin/MAINTAINERS: Add thunk.el.
7142
7143 2015-11-03 Jay Belanger <jay.p.belanger@gmail.com>
7144
7145 * lisp/calc/calc (calc-bug-address): Change maintainer address.
7146
7147 2015-11-03 Michael Albinus <michael.albinus@gmx.de>
7148
7149 Fix a stupid error in gfilenotify.c
7150
7151 * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
7152 if we've got a `deleted' signal AND the file name is the watched one.
7153
7154 2015-11-03 Stephen Leake <stephen_leake@stephe-leake.org>
7155
7156 Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
7157
7158 * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
7159 Use case-insensitive string compare for file names.
7160 (emacs-test-dir): Add 'downcase' to cause case differences (at
7161 least on my system).
7162
7163 2015-11-02 Juanma Barranquero <lekktu@gmail.com>
7164
7165 flymake-tests.el (warning-predicate-rx-gcc): Fix check
7166
7167 * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
7168 Also check that "make" is available, not just "gcc".
7169
7170 2015-11-02 Ken Brown <kbrown@cornell.edu>
7171
7172 Document behavior of collation on Cygwin
7173
7174 * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
7175 expected failure on Cygwin.
7176 * doc/lispref/strings.texi (Text Comparison): Document that
7177 punctuation and whitespace are not ignored for sorting on Cygwin.
7178
7179 2015-11-02 Dani Moncayo <dmoncayo@gmail.com>
7180
7181 * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
7182
7183 2015-11-01 Glenn Morris <rgm@gnu.org>
7184
7185 * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
7186 (Bug#21794)
7187 * test/automated/f90.el (f90-test-bug21794): New test.
7188
7189 2015-11-01 Juanma Barranquero <lekktu@gmail.com>
7190
7191 Fix incompatibility with TCC in test for bug#18745
7192
7193 * test/automated/process-tests.el (process-test-quoted-batfile):
7194 Remove spaces unrelated to the bug being tested.
7195
7196 2015-11-01 Michael Albinus <michael.albinus@gmx.de>
7197
7198 Improve completion in tramp-gvfs.el
7199
7200 * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
7201 Rename from `tramp-zeroconf-parse-service-device-names'.
7202 (tramp-zeroconf-parse-webdav-device-names): Remove. Code merged
7203 with `tramp-zeroconf-parse-device-names'.
7204 (tramp-gvfs-parse-device-names): New defun.
7205 (top): Use it when `tramp-zeroconf-parse-device-names' is not
7206 applicable.
7207
7208 * lisp/net/tramp.el (tramp-set-completion-function): The argument
7209 could also be a zeroconf service type.
7210
7211 2015-10-31 Thomas Fitzsimmons <fitzsim@fitzsim.org>
7212
7213 * lisp/net/ntlm.el: Change version to 2.0.0.
7214
7215 2015-10-31 Juanma Barranquero <lekktu@gmail.com>
7216
7217 Fix bug#21762
7218 * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
7219 `eql' instead of `=' to accommodate the case that (syntax-after (point))
7220 returns nil.
7221 * test/automated/python-tests.el (python-indent-inside-paren-7):
7222 New test.
7223
7224 2015-10-31 Juanma Barranquero <lekktu@gmail.com>
7225
7226 * test/automated/python-tests.el: Avoid warnings.
7227 (python-tests-with-temp-buffer, python-tests-with-temp-file):
7228 Bind `python-indent-guess-indent-offset' to nil.
7229
7230 2015-10-31 Juanma Barranquero <lekktu@gmail.com>
7231
7232 * src/alloc.c: Silence compiler warnings.
7233 (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
7234
7235 2015-10-31 Jackson Ray Hamilton <jackson@jacksonrayhamilton.com>
7236
7237 * etc/NEWS: Fix js-jsx-mode entry punctuation.
7238
7239 2015-10-31 Jackson Ray Hamilton <jackson@jacksonrayhamilton.com>
7240
7241 Add JSX indentation via js-jsx-mode (Bug#21799)
7242
7243 * progmodes/js.el: Add JSX indentation support.
7244 (js--jsx-end-tag-re)
7245 (js--jsx-after-tag-re): New variables.
7246 (js--jsx-find-before-tag)
7247 (js--jsx-indented-element-p)
7248 (js--as-sgml)
7249 (js--expression-in-sgml-indent-line)
7250 (js-jsx-indent-line)
7251 (js-jsx-mode): New functions.
7252 * test/indent/js-jsx.el: New file.
7253 * etc/NEWS: Add information about js-jsx-mode.
7254
7255 2015-10-31 Michael Albinus <michael.albinus@gmx.de>
7256
7257 Minor fix in filenotify.el
7258
7259 * lisp/filenotify.el (file-notify--event-file-name)
7260 (file-notify--event-file1-name): Normalize result with
7261 `directory-file-name'.
7262
7263 2015-10-31 Eli Zaretskii <eliz@gnu.org>
7264
7265 Avoid errors in redisplay--pre-redisplay-functions
7266
7267 * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
7268 use 'bobp', instead compare window-point with 1. (Bug#21730)
7269
7270 2015-10-30 Paul Eggert <eggert@cs.ucla.edu>
7271
7272 Merge from gnulib
7273
7274 This incorporates:
7275 2015-10-30 intprops: add WRAPV and const flavors for GCC 5
7276 2015-10-25 stdalign: port to Sun C 5.9
7277 * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
7278 Copy from gnulib.
7279
7280 2015-10-30 Eli Zaretskii <eliz@gnu.org>
7281
7282 * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
7283 (w32_compare_strings): Adjust for the correction.
7284
7285 2015-10-30 Michael Albinus <michael.albinus@gmx.de>
7286
7287 * test/automated/vc-tests.el (vc-test--state)
7288 (vc-test--working-revision, vc-test--checkout-model):
7289 Add result messages.
7290
7291 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7292
7293 * test/automated/faces-tests.el: Add another test
7294
7295 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7296
7297 * lisp/faces.el (faces--attribute-at-point): Fix bug
7298 introduced by previous commit.
7299
7300 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7301
7302 * test/automated/faces-tests.el: New file.
7303
7304 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7305
7306 * lisp/faces.el: Refactor common code and fix a bug.
7307 (faces--attribute-at-point): New function. Fix a bug when the
7308 face at point is a list of faces and the desired attribute is not
7309 on the first one.
7310 (foreground-color-at-point, background-color-at-point): Use it.
7311
7312 2015-10-30 Przemysław Wojnowski <esperanto@cumego.com>
7313
7314 * etc/tutorials/TUTORIAL.translators: Fix PL names.
7315
7316 2015-10-30 Juanma Barranquero <lekktu@gmail.com>
7317
7318 * lisp/character-fold.el: Provide `character-fold'.
7319
7320 2015-10-30 Tassilo Horn <tsdh@gnu.org>
7321
7322 * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
7323 for Gnus and ivy.
7324
7325 2015-10-30 Michael Albinus <michael.albinus@gmx.de>
7326
7327 Some minor fixes for tramp-gvfs.el
7328
7329 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
7330 An attribute returned by gvfs-info might be empty. In case of
7331 undetermined uid or gid, return "UNKNOWN" or -1, respectively.
7332 (tramp-zeroconf-parse-service-device-names): New defun.
7333 Derived from `tramp-zeroconf-parse-workstation-device-names'.
7334 (top): Add completion functions for "afp" and "smb" methods.
7335
7336 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7337
7338 * test/automated/character-fold-tests.el: New file
7339
7340 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7341
7342 * test/automated/sort-tests.el: New file.
7343 Tests in this file are randomly generated and then tested with
7344 regular, reverse, and case-fold sorting.
7345
7346 2015-10-30 Eli Zaretskii <eliz@gnu.org>
7347
7348 Describe known problems with pinning Emacs to taskbar
7349
7350 * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
7351 on Windows 10. For the details, see the discussion starting at
7352 http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
7353
7354 2015-10-30 Artur Malabarba <bruce.connor.am@gmail.com>
7355
7356 * lisp/isearch.el: Avoid an error that blocks isearch.
7357 (isearch-update): Don't error if `isearch--current-buffer' has
7358 been killed.
7359
7360 * test/automated/isearch-tests.el (isearch--test-update):
7361 New file.
7362
7363 2015-10-30 Phil Sainty <psainty@orcon.net.nz>
7364
7365 Fix documentation of 'beginning/end-of-buffer'
7366
7367 * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
7368 conditions under which the mark will be pushed at the previous
7369 position. (Bug#21748)
7370
7371 2015-10-30 Tassilo Horn <tsdh@gnu.org>
7372
7373 Add RefTeX feature idea: editing RefTeX TOC buffers
7374
7375 More face defs for ivy, swiper, ace-window, eshell
7376
7377 2015-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
7378
7379 * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
7380 (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
7381 just VAR.
7382 (auth-source-backend-parse): Use make-instance.
7383 (auth-source-search): Remove unused key args.
7384 Remove unused vars `accessor-key' and `backend'. Avoid `eval'.
7385 (auth-source-search-backends): Use slot names rather than their initarg.
7386 (auth-source-netrc-create):
7387 (auth-source-delete):
7388 (auth-source-secrets-create, auth-source-plstore-search)
7389 (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
7390 (auth-source-plstore-create, auth-source-netrc-search)
7391 (auth-source-netrc-parse): Remove unused key args.
7392 (auth-source-forget+): Simplify the arglist.
7393 (auth-source-macos-keychain-search-items)
7394 (auth-source-token-passphrase-callback-function): Mark unused args.
7395 (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
7396 (pp-escape-newlines): Declare.
7397 (auto-source--symbol-keyword): New function.
7398 (auth-source-plstore-create, auth-source-netrc-create)
7399 (auth-source-netrc-normalize): Use it.
7400 (auth-source-netrc-search): Don't pass :delete to
7401 auth-source-netrc-parse since it doesn't use it.
7402 (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
7403 symbol-value to index in keyword args.
7404 (auth-source-macos-keychain-result-append): Avoid setq.
7405 (auth-source-netrc-create): Remove unused vars `file' and `add'.
7406 (auth-source-user-or-password): Remove unused var `cname'.
7407
7408 2015-10-29 Juri Linkov <juri@linkov.net>
7409
7410 * lisp/dired.el (dired-unmark-all-files-query): Declare.
7411 (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
7412 (Bug#21746)
7413
7414 2015-10-29 Juri Linkov <juri@linkov.net>
7415
7416 * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
7417 to go to the beginning of text line instead of command line.
7418 http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
7419
7420 2015-10-29 Eli Zaretskii <eliz@gnu.org>
7421
7422 Fix encoding of saving *Help* buffers
7423
7424 * lisp/help-fns.el (describe-function-1): If we use curved quotes,
7425 set help buffer's buffer-file-coding-system to UTF-8. (Bug#21780)
7426
7427 2015-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
7428
7429 * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
7430 (cl--generic-derived-specializers): New function.
7431 (cl--generic-derived-generalizer): New generalizer.
7432 (cl-generic-generalizers): New specializer (derived-mode MODE).
7433 (cl--generic-split-args): Apply the rewriter, if any.
7434 (cl-generic-define-context-rewriter): New macro.
7435 (major-mode): Use it to define a new context-rewriter, so we can write
7436 `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
7437
7438 * lisp/frame.el (window-system): New context-rewriter so we can write
7439 `(window-system VAL)' instead of (window-system (eql VAL)).
7440 (cl--generic-split-args): Apply the rewriter, if any.
7441 (frame-creation-function): Use the new syntax.
7442
7443 * lisp/term/x-win.el (window-system-initialization)
7444 (handle-args-function, frame-creation-function)
7445 (gui-backend-set-selection, gui-backend-selection-owner-p)
7446 (gui-backend-selection-exists-p, gui-backend-get-selection):
7447 * lisp/term/w32-win.el (window-system-initialization)
7448 (handle-args-function, frame-creation-function)
7449 (gui-backend-set-selection, gui-backend-get-selection)
7450 (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
7451 * lisp/term/pc-win.el (gui-backend-get-selection)
7452 (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
7453 (gui-backend-set-selection, window-system-initialization)
7454 (frame-creation-function, handle-args-function):
7455 * lisp/term/ns-win.el (window-system-initialization)
7456 (handle-args-function, frame-creation-function)
7457 (gui-backend-set-selection, gui-backend-selection-exists-p)
7458 (gui-backend-get-selection):
7459 * lisp/startup.el (handle-args-function):
7460 * lisp/term/xterm.el (gui-backend-get-selection)
7461 (gui-backend-set-selection): Use the new syntax.
7462
7463 2015-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
7464
7465 * test/indent/css-mode.css: Add tests for url(...) syntax.
7466
7467 2015-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
7468
7469 * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
7470 (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
7471 (smie-prec2->grammar): Use `declare'.
7472
7473 2015-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
7474
7475 * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
7476 (cl--generic-generalizer): Add `name' field.
7477 (cl-generic-make-generalizer): Add corresponding `name' argument.
7478 (cl-generic-define-generalizer): New macro.
7479 (cl--generic-head-generalizer, cl--generic-eql-generalizer)
7480 (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
7481 (cl--generic-t-generalizer): Use it.
7482 (cl-generic-ensure-function): Add `noerror' argument.
7483 (cl-generic-define): Use it so we don't follow aliases.
7484 (cl-generic-define-method): Preserve pre-existing ordering of methods.
7485 (cl--generic-arg-specializer): New function.
7486 (cl--generic-cache-miss): Use it.
7487 (cl-generic-generalizers): Only fset a temporary definition
7488 during bootstrap.
7489 (cl--generic-struct-tag, cl--generic-struct-specializers):
7490 Allow extra arguments.
7491
7492 * lisp/emacs-lisp/eieio-compat.el
7493 (eieio--generic-static-symbol-generalizer)
7494 (eieio--generic-static-object-generalizer):
7495 Use cl-generic-define-generalizer.
7496 (eieio--generic-static-symbol-specializers): Allow extra arguments.
7497
7498 * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
7499 (eieio--generic-subclass-generalizer):
7500 Use cl-generic-define-generalizer.
7501 (eieio--generic-subclass-specializers): Allow extra arguments.
7502
7503 2015-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
7504
7505 * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
7506
7507 2015-10-29 Michael Albinus <michael.albinus@gmx.de>
7508
7509 Add "afp" method to Tramp
7510
7511 * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
7512
7513 * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
7514 (tramp-gvfs-handle-expand-file-name)
7515 (tramp-gvfs-handler-mounted-unmounted)
7516 (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
7517 (tramp-gvfs-maybe-open-connection): Support also "afp".
7518 (tramp-gvfs-handle-file-attributes): Handle the case of empty
7519 "owner::user" and "owner::group" entries.
7520
7521 2015-10-29 Andy Moreton <andrewjmoreton@gmail.com>
7522
7523 Handle negative coordinates in ‘x_calc_absolute_position’
7524
7525 * src/w32term.c (x_calc_absolute_position): Find display origin to
7526 allow for negative coordinates.
7527
7528 2015-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7529
7530 (internal--syntax-propertize): Save match-data here (bug#21766)
7531
7532 * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
7533 * lisp/simple.el (delete-trailing-whitespace): Undo last change.
7534
7535 2015-10-28 Dmitry Gutov <dgutov@yandex.ru>
7536
7537 Don't require default-directory to end with a slash
7538
7539 * doc/lispref/files.texi (Magic File Names): Document the change
7540 in unhandled-file-name-directory.
7541
7542 * lisp/url/url-handlers.el
7543 (url-handler-unhandled-file-name-directory): Update accordingly.
7544
7545 * src/buffer.c (default-directory): Update the docsting.
7546
7547 * src/fileio.c (unhandled-file-name-directory): Default to calling
7548 `file-name-as-directory'
7549 (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
7550
7551 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7552
7553 * lisp/isearch.el: Delete some outdated comments.
7554
7555 2015-10-28 Vibhav Pant <vibhavp@gmail.com>
7556
7557 Fix eshell/clear not working if the output has a small line count
7558
7559 * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
7560 number of newlines to be inserted. This fixes the issue where
7561 eshell/clear wouldn't work if the prompt was not at the bottom of the
7562 window, and the output wasn't too long.
7563
7564 2015-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7565
7566 * lisp/files.el (write-file): Use vc-refresh-state.
7567
7568 * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
7569
7570 * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
7571
7572 2015-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7573
7574 * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
7575 (macroexp-unprogn): Make sure we never return an empty list.
7576 (macroexp-if): Remove unused (and unsafe) optimization.
7577 Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
7578 occur occasionally.
7579
7580 2015-10-28 Juanma Barranquero <lekktu@gmail.com>
7581
7582 Fix bug#21766 and add test
7583 * lisp/simple.el (delete-trailing-whitespace): Save match data when
7584 calling `skip-syntax-backward'.
7585 * test/automated/simple-test.el (simple-delete-trailing-whitespace):
7586 New test.
7587
7588 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7589
7590 * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
7591
7592 2015-10-28 Paul Eggert <eggert@cs.ucla.edu>
7593
7594 * src/dispnew.c (init_display): Simplify overflow checking.
7595
7596 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7597
7598 * lisp/character-fold.el (character-fold-to-regexp): Fix case
7599 where string ends in space
7600
7601 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7602
7603 * lisp/emacs-lisp/seq.el (seq-mapn): New function.
7604
7605 * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
7606
7607 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7608
7609 * lisp/character-fold.el: Make compatible with lax-whitespace.
7610 (character-fold-to-regexp): Rework internals to play nice with
7611 lax-whitespacing.
7612
7613 When the user types a space, we want to match the table entry for
7614 ?\s, which is generally a regexp like "[ ...]". However, the
7615 `search-spaces-regexp' variable doesn't "see" spaces inside these
7616 regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
7617 manually expose a space).
7618
7619 Furthermore, the lax search engine acts on a bunch of spaces, not
7620 on individual spaces, so if the string contains sequential spaces
7621 like " ", we need to keep them grouped together like this:
7622 "\\( \\|[ ...][ ...]\\)".
7623
7624 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7625
7626 * lisp/isearch.el: Refactor momentary messages.
7627 (isearch--momentary-message): New function.
7628 (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
7629 (isearch-toggle-invisible): Use it.
7630
7631 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7632
7633 * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
7634 (isearch-define-mode-toggle): New macro.
7635 (isearch-toggle-invisible): Rename to
7636 `isearch-define-mode-toggle'.
7637 (isearch-toggle-case-fold, isearch-toggle-invisible)
7638 (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
7639 with `isearch-define-mode-toggle'.
7640
7641 2015-10-28 Michael Albinus <michael.albinus@gmx.de>
7642
7643 Avoid using `add-to-list' on a let-local var in tramp-smb.el
7644
7645 * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
7646 * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
7647
7648 2015-10-28 Michael Albinus <michael.albinus@gmx.de>
7649
7650 * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
7651 Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
7652 does not exist in XEmacs 21.4.
7653
7654 2015-10-28 Anders Lindgren <andlind@gmail.com>
7655
7656 Fixed OS X startup crash
7657
7658 Input events started to arrive before ns_term_init() was finished.
7659 Solved by blocking input. This also seems to correct the "You
7660 can't open the application "Emacs" because it may be damaged or
7661 incomplete" error issued when double-clicking on the Emacs
7662 application.
7663
7664 * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
7665 * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
7666
7667 2015-10-28 Artur Malabarba <bruce.connor.am@gmail.com>
7668
7669 * src/process.c (Fget_buffer_process): Improve docstring.
7670 Document the fact that it doesn't return dead processes.
7671
7672 2015-10-28 Anders Lindgren <andlind@gmail.com>
7673
7674 Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
7675
7676 * nsterm.h (struct ns_output): New flag, in_animation.
7677 * nsfns.m (Fx_create_frame): Initialize in_animation flag.
7678 * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
7679 in_animation flag around call to "setVisible". Set new tool bar
7680 height before call to setVisible.
7681 * nsterm.m (x_set_window_size): Don't call [view setRow:
7682 andColumns:] as this fools the subsequent call to updateFrameSize
7683 from performing the real resize.
7684 (windowDidResize): Don't update anything when in_animation is
7685 non-zero.
7686
7687 Trace output.
7688
7689 * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
7690 (EmacsToolbar):
7691 * nsterm.m (x_set_window_size, updateFrameSize)
7692 ([EmacsView setRows: andColumns:])
7693
7694 2015-10-28 Nicolas Petton <nicolas@petton.fr>
7695
7696 * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
7697
7698 2015-10-28 Tassilo Horn <tsdh@gnu.org>
7699
7700 Prettify TeX macros not ending in a word char
7701
7702 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
7703 Prettify macros which don't end in a word character.
7704
7705 2015-10-27 Dmitry Gutov <dgutov@yandex.ru>
7706
7707 Pipe Hg commit descriptions through 'tabindent'
7708
7709 * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
7710 through 'tabindent'.
7711 (vc-hg-log-view-mode): Set tab-width to 2 locally.
7712 (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
7713
7714 2015-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7715
7716 * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
7717 (tramp-smb-handle-directory-files): Use `delete-dups'.
7718
7719 * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
7720
7721 2015-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7722
7723 * lisp/international/ccl.el: Use lexical-binding.
7724 (ccl-compile-if): Remove unused var `false-ic'.
7725 (ccl-compile-write-repeat): Remove unused var `i'.
7726 (ccl-compile-map-single): Remove unused var `id'.
7727 (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
7728 dynamic var `ccl-code'.
7729
7730 2015-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7731
7732 * lisp/json.el (json-new-object): Optimize trivial `list' call.
7733
7734 2015-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7735
7736 * lisp/help.el: Fix bug with incorrect arglist string.
7737 (help-add-fundoc-usage): Don't mistake a mis-formatted string
7738 for a list.
7739
7740 2015-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7741
7742 * lisp/gnus/gnus-topic.el: Silence some warnings.
7743 (gnus-topic-prepare-topic): Remove unused var `topic'.
7744 (gnus-topic-remove-topic): Mark unused arg `hide'.
7745 (gnus-tmp-header): Declare.
7746 (gnus-topic-goto-missing-group): Remove unused var `entry'.
7747 (gnus-topic-unmark-topic): Mark unused arg `dummy'.
7748 (gnus-topic-copy-matching): Mark unused arg `copyp'.
7749 Move initialization of `topic' into its declaration.
7750
7751 2015-10-27 Stephen Leake <stephen_leake@stephe-leake.org>
7752
7753 Minor CEDET fixes
7754
7755 * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
7756 Handle warnings from gtags about invalid options.
7757 (cedet-gnu-global-create/update-database): Do incremental update
7758 properly.
7759
7760 * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
7761 Get monotone root right.
7762
7763 2015-10-27 Michael Albinus <michael.albinus@gmx.de>
7764
7765 Fall back to polling in autorevert when needed
7766
7767 * lisp/autorevert.el (auto-revert-notify-handler): When a
7768 `stopped' event arrives from file notification, fall back to polling.
7769
7770 * test/automated/file-notify-tests.el
7771 (file-notify-test03-autorevert): Extend test for polling when file
7772 notification ceases to work.
7773
7774 2015-10-27 Dmitry Gutov <dgutov@yandex.ru>
7775
7776 Show full commit messages in 'hg log' when appropriate
7777
7778 * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
7779 (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
7780 (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
7781
7782 2015-10-27 Nicolas Petton <nicolas@petton.fr>
7783
7784 Use a plain SVG file for the icon
7785
7786 * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
7787 format instead of the Inkscape SVG format.
7788
7789 2015-10-27 Michael Albinus <michael.albinus@gmx.de>
7790
7791 Fix subtle bug in auto-revert-tests.el
7792
7793 * test/automated/auto-revert-tests.el
7794 (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
7795 buffer where it belongs to. (Bug#21668)
7796
7797 2015-10-26 Nicolas Petton <nicolas@petton.fr>
7798
7799 * lisp/emacs-lisp/map.el: Better docstrings.
7800
7801 * lisp/emacs-lisp/seq.el: Better docstrings.
7802
7803 * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
7804
7805 2015-10-26 Phillip Lord <phillip.lord@russet.org.uk>
7806
7807 * lisp/emacs-lisp/ert.el: Print results without newline escaping.
7808
7809 2015-10-26 Stephen Leake <stephen_leake@stephe-leake.org>
7810
7811 Clarify that load-path contents should be directory file names
7812
7813 * doc/lispref/files.texi (Directory Names): Define and use "directory
7814 file name". Recommend `expand-file-name'.
7815
7816 * src/lread.c (load-path): Fix doc string; elements are directory file
7817 names.
7818
7819 2015-10-26 Eli Zaretskii <eliz@gnu.org>
7820
7821 Fix simple-test.el test
7822
7823 * test/automated/simple-test.el (simple-test--dummy-buffer):
7824 Make sure indentation doesn't use TABs, otherwise the 6th test
7825 might fail.
7826
7827 2015-10-26 Mark Oteiza <mvoteiza@udel.edu>
7828
7829 * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
7830 `substring' does not account for full width characters.
7831
7832 2015-10-26 Michael Albinus <michael.albinus@gmx.de>
7833
7834 Further work on `stopped' events in filenotify.el
7835
7836 * doc/lispref/os.texi (File Notifications): Rework examples.
7837
7838 * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
7839 (file-notify--rm-descriptor, file-notify-callback): Improve check
7840 for sending `stopped' event.
7841 (file-notify-add-watch): Check for more events for `inotify'.
7842
7843 * test/automated/file-notify-tests.el
7844 (file-notify--test-expected-events): New defvar.
7845 (file-notify--test-with-events): Use it.
7846 (file-notify--test-cleanup): Make it more robust when deleting
7847 directories.
7848 (file-notify--test-event-test): Check also for watched directories.
7849 (file-notify--test-event-handler): Suppress temporary .#files.
7850 (file-notify-test02-events, file-notify-test04-file-validity):
7851 Rework `stopped' events.
7852 (file-notify-test05-dir-validity): Wait for events when appropriate.
7853
7854 2015-10-26 Artur Malabarba <bruce.connor.am@gmail.com>
7855
7856 * src/keyboard.c (post-command-hook): Shorten docstring.
7857
7858 2015-10-26 Tassilo Horn <tsdh@gnu.org>
7859
7860 Fix infinite loop in sh-script's SMIE code
7861
7862 * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
7863 loop (bug#21747).
7864
7865 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7866
7867 * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
7868 Character-fold search _still_ doesn't play well with
7869 lax-whitespace. So disable it by default (again) for now.
7870
7871 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7872
7873 * lisp/isearch.el: No visual feedback for default search mode.
7874 During an isearch where character-folding is the default, we don't
7875 want to take up minibuffer space just to tell the user that
7876 "Char-fold " is on. The same goes for other modes, if the user
7877 changes the default. In contrast, if the user toggles OFF the
7878 default mode, they should see "Literal", to distinguish it from
7879 the default mode.
7880 (isearch--describe-regexp-mode): Return "" if describing the
7881 default mode, and return "literal " if describing a plain search
7882 and it is not default.
7883
7884 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7885
7886 * test/automated/simple-test.el: New file.
7887 Define tests for `newline' and `open-line'.
7888
7889 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7890
7891 * lisp/simple.el (open-line): Integrate with electric-indent-mode.
7892 Also run `post-self-insert-hook' when called interactively.
7893
7894 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7895
7896 * lisp/simple.el (open-line): Fix docstring.
7897 Also explain apparently redundant line.
7898
7899 2015-10-25 Thomas Fitzsimmons <fitzsim@fitzsim.org>
7900 Alexandru Harsanyi <AlexHarsanyi@gmail.com>
7901
7902 Sync with soap-client repository, version 3.0.1
7903
7904 * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
7905 Bump version to 3.0.1.
7906
7907 * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
7908
7909 2015-10-25 Eli Zaretskii <eliz@gnu.org>
7910
7911 * lisp/progmodes/grep.el (grep): Doc fix. (Bug#21754)
7912
7913 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7914
7915 * src/keyboard.c (post-command-hook): Extend the docstring.
7916 Mainly, explain how to use it without hanging Emacs, or giving the
7917 impression that it is hanging. Also mention `pre-command-hook'.
7918 (pre-command-hook): Mention `post-command-hook'.
7919
7920 2015-10-25 Artur Malabarba <bruce.connor.am@gmail.com>
7921
7922 * lisp/custom.el (custom-declare-variable): Shorten code again.
7923 Without using pcase this time. We can't use pcase because it is
7924 loaded after custom in loadup.el. Also add a comment explaining
7925 this to future dummies like me.
7926
7927 2015-10-25 Michael Albinus <michael.albinus@gmx.de>
7928
7929 * doc/lispref/os.texi (File Notifications): Document `stopped event'.
7930
7931 2015-10-25 Michael Albinus <michael.albinus@gmx.de>
7932
7933 Introduce `stopped' event in file notification
7934
7935 * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
7936 (file-notify-rm-watch): Use it.
7937 (file-notify-callback): Implement `stopped' event.
7938 (file-notify-add-watch): Mention `stopped' in the docstring.
7939 Check, that upper directory exists.
7940
7941 * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
7942 Add two test cases.
7943 (file-notify-test02-events): Handle also `stopped' event.
7944 (file-notify-test04-file-validity): Add another test case.
7945
7946 2015-10-25 Paul Eggert <eggert@cs.ucla.edu>
7947
7948 Revert commit that broke 'make bootstrap'
7949
7950 * lisp/custom.el (custom-declare-variable): Revert commit
7951 79fac080d277fed07b3c192890ad59d36d9f83b6. custom.el needs to work
7952 even when pcase has not been defined yet, when doing bootstrapping.
7953
7954 2015-10-25 Paul Eggert <eggert@cs.ucla.edu>
7955
7956 Port recent inline functions fix to Standard C
7957
7958 * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
7959 All uses rewritten to define the function directly rather than to
7960 use a macro to define the function. This conforms to Standard C,
7961 which does not allow stray semicolons at the top level. I hope it
7962 also avoids the problems with TAGS. Those macros, though clever,
7963 were pretty confusing anyway, and it wasn’t clear they were worth
7964 the aggravation even without the TAGS problem.
7965
7966 2015-10-24 Artur Malabarba <bruce.connor.am@gmail.com>
7967
7968 * lisp/isearch.el: Make character-fold search the default again.
7969
7970 2015-10-24 Artur Malabarba <bruce.connor.am@gmail.com>
7971
7972 * lisp/character-fold.el: Many improvements.
7973 (character-fold-search-forward, character-fold-search-backward):
7974 New command.
7975 (character-fold-to-regexp): Remove lax-whitespace hack.
7976 (character-fold-search): Remove variable. Only isearch and
7977 query-replace use char-folding, and they both have their own
7978 variables to configure that.
7979
7980 2015-10-24 Artur Malabarba <bruce.connor.am@gmail.com>
7981
7982 * lisp/isearch.el: Generalize definition of regexp-function toggles.
7983 (isearch-specify-regexp-function): New macro for specifying
7984 possible values of `isearch-regexp-function'.
7985 (isearch-toggle-character-fold, isearch-toggle-symbol)
7986 (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
7987
7988 2015-10-24 Artur Malabarba <bruce.connor.am@gmail.com>
7989
7990 * lisp/isearch.el (search-default-regexp-mode): New variable.
7991 (isearch-mode): Use it.
7992
7993 2015-10-24 Artur Malabarba <bruce.connor.am@gmail.com>
7994
7995 * lisp/isearch.el (search-exit-option, search-slow-window-lines)
7996 (search-slow-speed, search-upper-case)
7997 (search-nonincremental-instead, search-whitespace-regexp)
7998 (search-invisible, isearch-hide-immediately)
7999 (isearch-resume-in-command-history, search-ring-max)
8000 (regexp-search-ring-max, search-ring-update, search-highlight)
8001 (isearch-fail): Delete :group entries.
8002
8003 2015-10-24 Artur Malabarba <bruce.connor.am@gmail.com>
8004
8005 * lisp/custom.el (custom-declare-variable): Shorten code a bit.
8006
8007 2015-10-24 Juanma Barranquero <lekktu@gmail.com>
8008
8009 addpm.c: Silence some warnings.
8010
8011 * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
8012 to LPBYTE.
8013 (add_registry): Pass NULL to optional lpClass argument of
8014 RegCreateKeyEx, not an empty string.
8015
8016 2015-10-24 Juanma Barranquero <lekktu@gmail.com>
8017
8018 addpm.c: Do not add obsolete GTK libraries to the path.
8019
8020 * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
8021 (add_registry): Remove variables `size' and `gtk_key'.
8022 Do not add the GTK DLL directory to the library search path; it is
8023 confusing behavior (in particular, the same Emacs version with and
8024 without invoking addpm will use a different path), and the GTK image
8025 libraries are obsolete anyway.
8026
8027 2015-10-24 Juanma Barranquero <lekktu@gmail.com>
8028
8029 addpm.c: Replace existing registry entries, but do not create new ones
8030
8031 * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
8032 existing values from previous versions, but do not add new ones; the
8033 key could exist for other reasons unrelated to old Emacsen, like X-style
8034 resources, or to set some environment variables like HOME or LANG, and
8035 in that case we don't want to populate it with obsolete values.
8036
8037 2015-10-24 Juanma Barranquero <lekktu@gmail.com>
8038
8039 * nt/addpm.c (add_registry): Do not compute unused return value.
8040
8041 2015-10-24 Juanma Barranquero <lekktu@gmail.com>
8042
8043 addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
8044
8045 * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
8046 RegOpenKeyEx, not REG_OPTION_NON_VOLATILE. This doesn't change
8047 current behavior because REG_OPTION_NON_VOLATILE is defined to
8048 be 0L anyway, but that option is actually documented only for
8049 RegCreateKeyEx.
8050
8051 2015-10-24 Juanma Barranquero <lekktu@gmail.com>
8052
8053 * src/w32notify.c (Fw32notify_add_watch): Fix version check.
8054
8055 2015-10-24 Eli Zaretskii <eliz@gnu.org>
8056
8057 Update frame title when redisplay scrolls selected window
8058
8059 * src/xdisp.c (redisplay_window): Reconsider the frame's title
8060 when the mode-line of the frame's selected window needs to be
8061 updated.
8062
8063 2015-10-24 Eli Zaretskii <eliz@gnu.org>
8064
8065 Update frame title when scrolling the selected window
8066
8067 * src/window.c (wset_update_mode_line): New function, sets either
8068 the window's update_mode_line flag or the global update_mode_lines
8069 variable.
8070 (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
8071 (window_scroll_line_based): Call it instead of only setting the
8072 window's update_mode_line flag.
8073
8074 2015-10-24 Eli Zaretskii <eliz@gnu.org>
8075
8076 An even better fix for bug#21739
8077
8078 * src/window.c (set_window_buffer): If the window is the frame's
8079 selected window, set update_mode_lines, not the window's
8080 update_mode_line flag.
8081 * src/buffer.c (Fkill_buffer): Undo last change.
8082 (set_update_modelines_for_buf): Function deleted.
8083
8084 2015-10-24 Thomas Fitzsimmons <fitzsim@fitzsim.org>
8085 Alexandru Harsanyi <AlexHarsanyi@gmail.com>
8086
8087 Sync with soap-client repository, version 3.0.0
8088
8089 * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
8090 Bump version to 3.0.0.
8091
8092 * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
8093
8094 * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
8095
8096 * lisp/net/soap-inspect.el: Shorten first line description.
8097
8098 * lisp/net/soap-client.el: Make a small whitespace fix.
8099
8100 * lisp/net/soap-inspect.el: Update copyright years.
8101
8102 * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
8103 first use in soap-encode-xs-element.
8104
8105 * lisp/net/soap-client.el (soap-type-is-array?): new defun
8106 (soap-encode-xs-element): handle array elements in this function
8107 (soap-encode-xs-complex-type): flag error if asked to encode an
8108 array type, this is handled in `soap-encode-xs-element'
8109
8110 * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
8111 Do not print type for attribute group.
8112
8113 * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
8114 New function.
8115 (soap-inspect-xs-attribute-group): Likewise.
8116
8117 * lisp/net/soap-inspect.el
8118 (soap-resolve-references-for-xs-attribute-group): Resolve
8119 references of attributes in an attribute group.
8120
8121 * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
8122 type directly, not through soap-wsdl-get.
8123
8124 * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
8125 nil if reference attribute is nil.
8126
8127 * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
8128 Convert XML schema attributes to xsd:string.
8129
8130 * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
8131 New function.
8132 (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
8133 (soap-sample-value-for-xs-complex-type): Likewise.
8134 (soap-inspect-xs-attribute): New function.
8135 (soap-inspect-xs-simple-type): Print attributes.
8136 (soap-inspect-xs-complex-type): Likewise.
8137
8138 * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
8139 Resolve references for attributes.
8140 (soap-resolve-references-for-xs-complex-type): Likewise.
8141
8142 * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
8143 Rename from soap-xml-node-first-child.
8144 (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
8145 (soap-xs-parse-simple-type): Likewise.
8146
8147 * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
8148
8149 * lisp/net/soap-client.el (soap-invoke-internal): New function.
8150 (soap-invoke-async): Call soap-invoke-internal.
8151 (soap-invoke): Likewise.
8152
8153 * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
8154 url-retrieve callback is killed.
8155
8156 * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
8157 Rename function.
8158 (soap-parse-wsdl-phase-fetch-imports): Likewise.
8159 (soap-parse-wsdl-phase-parse-schema): Likewise.
8160 (soap-parse-wsdl-phase-fetch-schema): Likewise.
8161 (soap-parse-wsdl-phase-finish-parsing): Likewise.
8162 (soap-parse-wsdl): Update calls.
8163
8164 * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
8165
8166 * lisp/net/soap-client.el (soap-invoke-async): New function.
8167 (soap-invoke): Reimplement using soap-invoke-async.
8168
8169 * lisp/net/soap-client.el (soap-parse-server-response):
8170 Improve docstring.
8171 (soap-invoke): Inline call to soap-parse-server-response.
8172
8173 * lisp/net/soap-client.el (soap-decode-xs-complex-type):
8174 Prevent incorrect warning.
8175
8176 * lisp/net/soap-client.el (soap-parse-server-response):
8177 Rename soap-process-url-response. Destroy the mime part.
8178 (soap-invoke): Call soap-parse-server-response.
8179
8180 * lisp/net/soap-client.el: Update copyright date.
8181
8182 * lisp/net/soap-client.el: Fix checkdoc issues.
8183
8184 * lisp/net/soap-client.el: Fix indentation and long lines.
8185
8186 * lisp/net/soap-client.el (soap-time-format): Remove variable.
8187 (soap-encode-xs-basic-type): Simplify date-time format detection.
8188 (soap-decode-xs-basic-type): Remove soap-time-format support.
8189
8190 * lisp/net/soap-client.el (soap-process-url-response): New function.
8191 (soap-fetch-xml-from-url): Call soap-process-url-response.
8192 (soap-parse-wsdl-phase-1): New function.
8193 (soap-parse-wsdl-phase-2): Likewise.
8194 (soap-parse-wsdl-phase-3): Likewise.
8195 (soap-parse-wsdl-phase-4): Likewise.
8196 (soap-parse-wsdl-phase-5): Likewise.
8197 (soap-parse-wsdl): Call phase functions.
8198
8199 * lisp/net/soap-client.el (soap-decode-xs-basic-type):
8200 Remove one-argument and call.
8201
8202 * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
8203
8204 * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
8205 (soap-parse-schema): Add wsdl argument. Look up XML schema
8206 imports from wsdl.
8207 (soap-load-wsdl): Do not set soap-xmlschema-imports.
8208 (soap-parse-wsdl): Get XML schema imports from wsdl.
8209
8210 * lisp/net/soap-client.el (soap-current-file): Remove variable.
8211 (soap-wsdl): Add current-file slot.
8212 (soap-fetch-xml-from-url): Add wsdl argument. Look up current
8213 file from wsdl.
8214 (soap-fetch-xml-from-file): Likewise.
8215 (soap-fetch-xml): Likewise.
8216 (soap-load-wsdl): Always create wsdl object first.
8217 (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
8218
8219 * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
8220 (soap-xs-parse-element): Set is-group slot.
8221 (soap-resolve-references-for-xs-element): Skip is-group elements.
8222 (soap-xs-complex-type): Add is-group slot.
8223 (soap-xs-parse-complex-type): Set is-group slot.
8224 (soap-xs-parse-sequence): Parse xsd:group elements.
8225 (soap-resolve-references-for-xs-complex-type): Inline elements
8226 from referenced xsd:group nodes.
8227 (soap-parse-schema): Parse xsd:group nodes.
8228
8229 * lisp/net/soap-client.el (soap-invoke):
8230 Don't set url-http-version to 1.0.
8231
8232 * lisp/net/soap-client.el (soap-decode-xs-complex-type):
8233 Allow choice nodes to accept multiple values.
8234
8235 * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
8236 for extra header values.
8237
8238 * lisp/net/soap-client.el (soap-well-known-xmlns):
8239 Add wsa and wsaw tags.
8240 (soap-operation): Add input-action and output-action slots.
8241 (soap-parse-operation): Parse wsaw:Action nodes.
8242 (soap-encode-body): Encode service-url for WS-Addressing.
8243 (soap-create-envelope): Likewise.
8244 (soap-invoke): Update soap-create-envelope call to provide
8245 service-url argument.
8246
8247 * lisp/net/soap-client.el (soap-decode-xs-complex-type):
8248 Support xsi:type override attribute.
8249 (soap-decode-array): Likewise.
8250
8251 * lisp/net/soap-client.el (soap-parse-schema):
8252 Handle location attribute.
8253
8254 * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
8255 matched validation regexp.
8256
8257 * lisp/net/soap-client.el (soap-encode-xs-simple-type):
8258 Encode xsd:list nodes.
8259 (soap-decode-xs-simple-type): Decode xsd:list nodes.
8260
8261 * lisp/net/soap-client.el (soap-get-candidate-elements):
8262 Fix reference handling.
8263
8264 * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
8265 (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
8266 (soap-xs-add-list): New function.
8267
8268 * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
8269 expected, interpret nil as "false".
8270
8271 * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
8272 gYear, gMonthDay, gDay and gMonth.
8273
8274 * lisp/net/soap-client.el (soap-time-format): New variable.
8275 (soap-encode-xs-basic-type): Handle dateTime, time, date,
8276 gYearMonth, gYear, gMonthDay, gDay and gMonth.
8277 (soap-decode-date-time): New function.
8278 (soap-decode-xs-basic-type): Use soap-decode-date-time.
8279
8280 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
8281 after encoding.
8282 (soap-decode-xs-basic-type): Validate value before decoding.
8283
8284 * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
8285 (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
8286
8287 * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
8288 instead of overwriting it.
8289 (soap-validate-xs-simple-type): Add union support.
8290
8291 * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
8292 to Emacs regexp using xsdre-translate.
8293 (soap-validate-xs-simple-type): Validate value against pattern.
8294
8295 * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
8296 inline simpleType nodes.
8297 (soap-decode-type): Handle union types.
8298
8299 * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
8300 attributes.
8301
8302 * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
8303 from soap-xs-attribute-group-consolidate, all callers updated
8304 (soap-get-xs-attributes): Rename from
8305 soap-xs-attributes-consolidate, all callers updated
8306
8307 * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
8308 (soap-xs-attribute-group): New type.
8309 (soap-xs-parse-attribute-group): New function.
8310 (soap-resolve-references-for-xs-attribute-group): Likewise.
8311 (soap-xs-add-extension): Handle attribute groups.
8312 (soap-resolve-references-for-xs-simple-type): Likewise.
8313 (soap-xs-parse-complex-type): Likewise.
8314 (soap-xs-parse-extension-or-restriction): Likewise.
8315 (soap-resolve-references-for-xs-complex-type): Likewise.
8316 (soap-xs-attribute-group-consolidate): New function.
8317 (soap-xs-attributes-consolidate): Handle attribute groups.
8318 (soap-parse-schema): Likewise.
8319
8320 * lisp/net/soap-client.el (soap-encode-xs-basic-type):
8321 Fix boolean encoding.
8322
8323 * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
8324 element names in warnings.
8325
8326 * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
8327
8328 * lisp/net/soap-client.el (soap-decode-xs-complex-type):
8329 Eliminate invalid warnings for choice types.
8330
8331 * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
8332 Also encode base type attributes.
8333
8334 * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
8335 warning. Print e-name in warnings, or element if e-name is nil.
8336
8337 * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
8338 (soap-xs-parse-element): Set substitution-group.
8339 (soap-resolve-references-for-xs-element): Populate alternatives slot.
8340 (soap-get-candidate-elements): New function.
8341 (soap-encode-xs-complex-type): Iterate through all candidate elements.
8342 Handle types with nil type indicator. Fix warning logic.
8343
8344 * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
8345 earlier in the file to prevent compiler warning.
8346
8347 * lisp/net/soap-client.el (soap-node-optional): New function.
8348 (soap-node-multiple): Likewise.
8349 (soap-xs-parse-element): Call soap-node-optional and
8350 soap-node-multiple.
8351 (soap-xs-complex-type): Add optional? and multiple? slots.
8352 (soap-xml-get-children-fq): New function.
8353 (soap-xs-element-get-fq-name): Likewise.
8354 (soap-xs-complex-type-optional-p): Likewise.
8355 (soap-xs-complex-type-multiple-p): Likewise.
8356 (soap-xs-attributes-consolidate): Likewise.
8357 (soap-decode-xs-attributes): Likewise.
8358 (soap-decode-xs-complex-type): Decode types with nil type indicator.
8359 Support children that use local namespaces. Decode attributes.
8360 Add type considerations to optional? and multiple? warnings.
8361
8362 * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
8363 Store parsed attributes.
8364 (soap-encode-xs-complex-type-attributes): Encode custom attributes.
8365
8366 * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
8367 Don't add the xsi:type attribute (Exchange refuses requests which have
8368 this attribute).
8369
8370 * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
8371 correct compiler warnings about unused function arguments and
8372 local variables.
8373
8374 * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
8375 type indicator.
8376 (soap-parse-envelope): Handle response headers.
8377 (soap-parse-response): Likewise. Only return non-nil decoded values.
8378
8379 * lisp/net/soap-client.el (soap-validate-xs-simple-type):
8380 Return validated value.
8381
8382 * lisp/net/soap-client.el (soap-xs-parse-element)
8383 (soap-xs-parse-simple-type)
8384 (soap-xs-parse-complex-type)
8385 (soap-parse-message)
8386 (soap-parse-operation): Add the current namespace to the element
8387 being created.
8388 (soap-resolve-references-for-xs-element)
8389 (soap-resolve-references-for-xs-simple-type)
8390 (soap-resolve-references-for-xs-complex-type)
8391 (soap-resolve-references-for-operation): Resolve the namespace to
8392 the namespace tag.
8393 (soap-make-wsdl): specify a namespace tag when creating the xsd
8394 and soapenc namespaces
8395 (soap-wsdl-resolve-references): don't update namespace tags in
8396 elements here
8397 (soap-parse-port-type): bind the urn: to soap-target-xmlns
8398 (soap-encode-body): don't add nil namespace tags to
8399 soap-encoded-namespaces
8400
8401 * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
8402 for registering the soap-inspect method. Make debbugs tests pass.
8403 * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
8404 type name, also skip string only nodes when decoding a structure.
8405 (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
8406 types too.
8407 (soap-encode-body): Grab the header value from the param table.
8408
8409 * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
8410 New function.
8411 (soap-encode-xs-element): Don't encode nil value unless needed.
8412
8413 * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
8414 (soap-parse-binding): Parse the message parts required in the body.
8415 (soap-encode-body): Encode only the parts that are declared to be
8416 part of the body.
8417
8418 * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
8419 when writing out the tag.
8420 (soap-encode-body): Remove hack that inserts the xmlns in the
8421 element attributes list.
8422
8423 * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
8424 (soap-xs-parse-attribute): Default slot is set from the XML
8425 "fixed" attribute.
8426 (soap-encode-xs-complex-type-attributes): Encode any attributes
8427 that have a default value. Also, don't put the xsi:nil attribute
8428 when the complex type has no content anyway.
8429
8430 * lisp/net/soap-client.el (soap-well-known-xmlns):
8431 Add the xml namespace.
8432 (soap-local-xmlns): Start with the xml namespace.
8433 (soap-xml-node-first-child): Skip xsd:annotation nodes too.
8434 (soap-make-xs-basic-types): More xsd types added.
8435 (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
8436 Handle "language", "time", "date", "nonNegativeInteger".
8437 (soap-resolve-references-for-xs-element): Don't signal an error if
8438 the element does not have a type.
8439 (soap-xs-parse-simple-type): Subtypes are handled with ecase,
8440 added stum for xsd:list.
8441 (soap-xs-add-union): Call soap-l2fq on all union members.
8442 (soap-xs-add-extension): Call soap-l2fq on the base member.
8443 (soap-resolve-references-for-xs-simple-type): Don't signal an
8444 error if the simple type has no base.
8445 (soap-resolve-references-for-xs-simple-type): Bugfix, call
8446 soap-wsdl-get on each type of the base.
8447
8448 * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
8449 Referenced type can be eiher a simple type or a basic type.
8450 (soap-xs-add-restriction)
8451 (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
8452 (soap-make-xs-basic-types)
8453 (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
8454 Add support for more XMLSchema basic types.
8455 (soap-current-file, soap-xmlschema-imports): New defvars.
8456 (soap-parse-schema): Add locations from xsd:import tags to
8457 `soap-xmlschema-imports'.
8458 (soap-wsdl): Make destructor private.
8459 (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
8460 (soap-wsdl-add-alias): Check if we try to replace aliases.
8461 (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
8462 (soap-fetch-xml): New defuns.
8463 (soap-load-wsdl): Update to load the WSDL from either a file or
8464 an url.
8465 (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
8466 (soap-parse-wsdl): Process wsdl:import tags and imports from
8467 `soap-xmlschema-imports'.
8468 * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
8469 symbol-name.
8470 (soap-l2fq): Make the name part always a string.
8471 (soap-name-p): New defun, used for name tests.
8472
8473 * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
8474 Supply sample values for choice types with a special tag.
8475 * lisp/net/soap-client.el (soap-encode-xs-complex-type):
8476 Handle anonymous elements correctly.
8477 (soap-encode-value): Accept nodes that have no namespace tag.
8478
8479 * lisp/net/soap-client.el (soap-invoke): Encode the string for
8480 `url-request-data' as UTF-8. Fixes issue 16.
8481
8482 2015-10-24 Nicolas Petton <nicolas@petton.fr>
8483
8484 Update the new icon
8485
8486 Move the E slightly to the right in the circle.
8487
8488 * etc/images/icons/hicolor/128x128/apps/emacs.png:
8489 * etc/images/icons/hicolor/16x16/apps/emacs.png:
8490 * etc/images/icons/hicolor/24x24/apps/emacs.png:
8491 * etc/images/icons/hicolor/32x32/apps/emacs.png:
8492 * etc/images/icons/hicolor/48x48/apps/emacs.png:
8493 * etc/images/icons/hicolor/scalable/apps/emacs.svg:
8494 * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
8495 * nt/icons/emacs.ico: New icom update.
8496
8497 2015-10-24 Eli Zaretskii <eliz@gnu.org>
8498
8499 Avoid missing inline functions from lisp.h in TAGS
8500
8501 * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
8502 need to end each invocation with a semi-colon.
8503 Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
8504 and LISP_MACRO_DEFUN_VOID. This is to avoid missing in TAGS
8505 inline functions defined immediately after each invocation, and
8506 also avoid tagging every invocation of these macros.
8507
8508 2015-10-24 Eli Zaretskii <eliz@gnu.org>
8509
8510 A better fix for bug#21739
8511
8512 * src/buffer.c (set_update_modelines_for_buf): New function.
8513 (Fkill_buffer): Use it to set the global variable
8514 update_mode_lines if the killed buffer was displayed in some
8515 window. Don't set windows_or_buffers_changed. This is a better
8516 fix for bug#21739 than the previous fix, since it will cause only
8517 redisplay of mode lines, not of entire windows, but will still
8518 catch attention of x_consider_frame_title in xdisp.c, which
8519 redraws the frame title.
8520
8521 2015-10-24 Tassilo Horn <tsdh@gnu.org>
8522
8523 * lisp/dired-aux.el (dired-compress-files-alist): Add support for
8524 tar.bz2 and tar.xz archives.
8525
8526 2015-10-23 Eli Zaretskii <eliz@gnu.org>
8527
8528 Fix infloop in redisplay introduced by a recent change
8529
8530 * src/xdisp.c (redisplay_internal): Avoid inflooping when
8531 redisplaying the selected window sets the selected frame's
8532 redisplay flag. (Bug#21745)
8533
8534 2015-10-23 Nicolas Petton <nicolas@petton.fr>
8535
8536 * lisp/emacs-lisp/thunk.el: Better documentation.
8537
8538 2015-10-23 Nicolas Petton <nicolas@petton.fr>
8539
8540 Replace the old icon for Windows and Mac OSX
8541
8542 * nt/icons/emacs.ico:
8543 * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
8544 Use the new icons.
8545
8546 2015-10-23 Stephen Leake <stephen_leake@stephe-leake.org>
8547
8548 * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
8549 `load-path' should contain only directory names.
8550
8551 2015-10-23 Nicolas Petton <nicolas@petton.fr>
8552
8553 New library thunk.el
8554
8555 thunk.el is extracted from stream.el in ELPA, with additional tests.
8556
8557 * lisp/emacs-lisp/thunk.el: New file.
8558 * test/automated/thunk-tests.el: New file.
8559 * etc/NEWS: Add information about thunk.el
8560
8561 2015-10-23 Michael Albinus <michael.albinus@gmx.de>
8562
8563 Fix bug#21669
8564
8565 * lisp/filenotify.el (file-notify-rm-watch): Improve check for
8566 calling low-level functions.
8567
8568 * test/automated/file-notify-tests.el (file-notify--test-timeout):
8569 Decrase to 6 seconds for remote directories.
8570 (file-notify-test02-events): Expect different number of
8571 `attribute-changed' events for the local and remote cases. Apply
8572 short delays between the operations, in order to receive all
8573 events in the remote case. Combine `attribute-change' tests.
8574 (Bug#21669)
8575
8576 2015-10-23 Eli Zaretskii <eliz@gnu.org>
8577
8578 Decode the HTML source when displaying it in EWW
8579
8580 * lisp/net/eww.el (eww-view-source): Decode the HTML source
8581 according to its headers.
8582
8583 2015-10-23 Nicolas Petton <nicolas@petton.fr>
8584
8585 New default icon
8586
8587 * etc/images/icons/hicolor/128x128/apps/emacs23.png:
8588 * etc/images/icons/hicolor/16x16/apps/emacs23.png:
8589 * etc/images/icons/hicolor/24x24/apps/emacs23.png:
8590 * etc/images/icons/hicolor/32x32/apps/emacs23.png:
8591 * etc/images/icons/hicolor/48x48/apps/emacs23.png:
8592 * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
8593 * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
8594 Move the old logo files to emacs23.*.
8595 * etc/images/icons/hicolor/128x128/apps/emacs.png:
8596 * etc/images/icons/hicolor/16x16/apps/emacs.png:
8597 * etc/images/icons/hicolor/24x24/apps/emacs.png:
8598 * etc/images/icons/hicolor/32x32/apps/emacs.png:
8599 * etc/images/icons/hicolor/48x48/apps/emacs.png:
8600 * etc/images/icons/hicolor/scalable/apps/emacs.svg:
8601 * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
8602 New files.
8603 * etc/images/icons/README: Update the copyright information.
8604
8605 2015-10-23 Eli Zaretskii <eliz@gnu.org>
8606
8607 Fix redisplay of frame title when current buffer is killed
8608
8609 * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
8610 non-zero value, to redisplay more than just the affected windows.
8611 (Bug#21739)
8612
8613 2015-10-23 Anders Lindgren <andlind@gmail.com>
8614
8615 NextStep maximization and NSTRACE rewrite
8616
8617 Full-height, full-width, and maximized windows now cover the
8618 entire screen (except the menu bar), including the part where the
8619 system dock is placed. The system zoom animation is no longer
8620 used.
8621
8622 Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
8623 original size.
8624
8625 * src/nsterm.m (ns_menu_bar_height): New function, return height of
8626 the menu bar, or 0 when it's hidden.
8627 (constrain_frame_rect): New function for constraining a frame.
8628 (ns_constrain_all_frames): Set frame size explicitly rather than
8629 relying on the system doing it for us by writing back the current
8630 frame size.
8631 (windowWillUseStandardFrame): Register non-maximized width or
8632 height as new user size. When entering full width or height,
8633 the other size component is taken from the user size.
8634 (fullscreenState): New method for accessing the fullscreen state.
8635 (constrainFrameRect): Restrict frame to be placed under the menu bar,
8636 if present. The old version, sometimes, restricted the height of a
8637 frame to the screen, this version never does this.
8638 (zoom): Perform zoom by setting the frame to the full size of the
8639 screen (minus the menu bar). The default system function, with the
8640 zoom animation, is no longer used, as the final frame size doesn't
8641 cover the entire screen.
8642
8643 Rework how to constrain resizing to the character grid. The old
8644 system used "resizeIncrements" in NSWindows. However, once a frame
8645 was resized so that it was not aligned to the text grid, it
8646 remained unaligned even after a resize. In addition, it conflicted
8647 when resizing a fullheight window.
8648
8649 * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
8650 unless when pixelwise frame resizing is enabled.
8651 (updateFrameSize, initFrameFromEmacs)
8652 (toggleFullScreen, handleFS): Don't set resizeIncrements.
8653
8654 Redesign the NS trace system. The call structure is represented
8655 using indentations and vertical lines. The NSTRACE macro accepts
8656 printf-style arguments. New macros for printing various
8657 information.
8658
8659 * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
8660 (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
8661 block (typically a function), accept printf-style arguments.
8662 (NSTRACE_MSG): Macro for extra information, accepts
8663 printf-style arguments.
8664 (NSTRACE_what): Macros for printing various types.
8665 (NSTRACE_FMT_what): Macro with printf format string snippets.
8666 (NSTRACE_ARG_what): Macros for passing printf-style arguments,
8667 corresponds to NSTRACE_FMT_what.
8668 (NSTRACE_RETURN): Macro to print return value, accept
8669 printf-style arguments.
8670 (NSTRACE_RETURN_what): Macros to print return value for
8671 various types.
8672
8673 * nsterm.m: Remove old NSTRACE macro
8674 * src/nsterm.m (nstrace_num): Trace counter.
8675 (nstrace_depth): Current call depth.
8676 (nstrace_leave): NSTRACE support function, called when the
8677 local variable "nstrace_enabled" goes out of scope using the
8678 "cleanup" extension.
8679 (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
8680 (constrain_frame_rect, ns_constrain_all_frames)
8681 (ns_update_auto_hide_menu_bar, ns_update_begin)
8682 (ns_update_window_begin, update_window_end, ns_update_end)
8683 (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
8684 (ns_frame_rehighlight, x_make_frame_visible)
8685 (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
8686 (x_destroy_window, x_set_offset, x_set_window_size)
8687 (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
8688 (ns_defined_color, frame_set_mouse_pixel_position)
8689 (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
8690 (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
8691 (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
8692 (ns_after_update_window_line, ns_shift_glyphs_for_insert)
8693 (dumpcursor, ns_draw_vertical_window_border)
8694 (ns_draw_window_divider, ns_draw_relief)
8695 (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
8696 (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
8697 (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
8698 (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
8699 (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
8700 (ns_create_terminal, ns_term_init, sendEvent)
8701 (applicationDidFinishLaunching, applicationDidBecomeActive)
8702 (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
8703 (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
8704 (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
8705 (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
8706 (mouse_autoselect_window, in_window, mouseDragged)
8707 (rightMouseDragged, otherMouseDragged, windowShouldClose)
8708 (updateFrameSize, windowWillResize, windowDidResize)
8709 (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
8710 (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
8711 (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
8712 (windowDidEnterFullScreen, windowWillExitFullScreen)
8713 (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
8714 (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
8715 (draggingEntered, performDragOperation, validRequestorForSendType)
8716 (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
8717 (EmacsScroller_initFrame, EmacsScroller_setFrame)
8718 (EmacsScroller_dealloc, condemn, reprieve, judge)
8719 (resetCursorRects, setPosition, EmacsScroller_mouseDown)
8720 (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
8721
8722 * nsfns.m: Remove old NSTRACE macro
8723 * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
8724 (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
8725 (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
8726
8727 * nsimage.m: Remove old NSTRACE macro
8728 * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
8729 (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
8730
8731 * nsmenu.m: Remove old NSTRACE macro
8732 * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
8733 Use new trace system.
8734
8735 2015-10-22 Katsumi Yamaoka <yamaoka@jpl.org>
8736
8737 No need to use eval-and-compile
8738
8739 * lisp/gnus/auth-source.el: Do require epg (when compiling) before
8740 autoload epg functions.
8741
8742 2015-10-22 Katsumi Yamaoka <yamaoka@jpl.org>
8743
8744 Fix auth-source-epa-make-gpg-token compilation (bug#21724)
8745
8746 * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
8747 epg-context-set-passphrase-callback, epg-decrypt-string, and
8748 epg-encrypt-string; require epg when compiling for the setf-method
8749 for epg-context-armor. (bug#21724)
8750
8751 2015-10-22 Eli Zaretskii <eliz@gnu.org>
8752
8753 Include file cleanup for w32 files in src directory
8754
8755 * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
8756 fontset.h, blockinput.h.
8757 * src/w32uniscribe.c: Don't include dispextern.h, character.h,
8758 charset.h, fontset.h.
8759 * src/w32term.c: Don't include systty.h, systime.h, charset.h,
8760 character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
8761 process.h, atimer.h, keymap.h, w32heap.h. Include bitmap/gray.xbm
8762 in an ifdef-ed away block.
8763 Include fcntl.h for CYGWIN.
8764 (set_frame_param): Remove unused function.
8765 * src/w32select.c: Don't include charset.h and composite.h.
8766 (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
8767 due to pointer signedness mismatches.
8768 * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
8769 due to pointer signedness mismatches.
8770 * src/w32proc.c: Include unistd.h. Don't include systime.h,
8771 process.h, dispextern.h.
8772 (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
8773 (Fw32_application_type): Avoid compiler warnings due to pointer
8774 signedness mismatches.
8775 * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
8776 character.h, charset.h, dispextern.h.
8777 (simple_dialog_show, add_menu_item): Avoid compiler warnings due
8778 to pointer signedness mismatches.
8779 * src/w32inevt.c: Don't include dispextern.h, window.h,
8780 termhooks.h, w32heap.h.
8781 * src/w32font.c: Don't include dispextern.h, character.h,
8782 charset.h, fontset.h, font.h.
8783 (intern_font_name, add_font_entity_to_list)
8784 (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
8785 (list_all_matching_fonts): Avoid compiler warnings due to pointer
8786 signedness mismatches.
8787 * src/w32fns.c: Don't include character.h, intervals.h,
8788 dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
8789 termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
8790 (w32_color_map_lookup, add_system_logical_colors_to_map)
8791 (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
8792 (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
8793 (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
8794 (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
8795 compiler warnings, mainly due to pointer signedness mismatches.
8796 (unwind_create_frame_1): Remove unused function.
8797 * src/w32console.c: Don't include character.h, disptab.h, frame.h,
8798 window.h, termhooks.h, dispextern.h.
8799 (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
8800 signedness mismatch.
8801 * src/w32.c: Include c-strcase.h and systty.h. Don't include
8802 w32heap.h.
8803
8804 2015-10-22 Tassilo Horn <tsdh@gnu.org>
8805
8806 Improve doc-view wrt. auto-revert-mode
8807
8808 * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
8809 is corrupted (bug#21729).
8810 (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
8811
8812 2015-10-22 Oleh Krehel <ohwoeowho@gmail.com>
8813
8814 Describe dired-do-compress-to in the manual
8815
8816 * etc/NEWS: Update.
8817
8818 * lisp/dired-aux.el: Fix typo.
8819
8820 * doc/emacs/dired.texi: Add entry.
8821
8822 2015-10-22 Jürgen Hötzel <juergen@archlinux.org>
8823
8824 Further fix for proper locale handling in tramp-gvfs.el
8825
8826 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
8827 Just suppress LC_MESSAGES locale category settings.
8828
8829 2015-10-21 Paul Eggert <eggert@cs.ucla.edu>
8830
8831 New lispref section “Security Considerations”
8832
8833 This attempts to document some of the issues recently discussed
8834 on emacs-devel, and to indicate other such issues. The section
8835 could be a lot longer.
8836 * doc/lispref/os.texi (Security Considerations):
8837 New node.
8838 * doc/lispref/elisp.texi (Top):
8839 * doc/lispref/processes.texi (Shell Arguments):
8840 * lisp/subr.el (shell-quote-argument):
8841 * src/callproc.c (syms_of_callproc):
8842 Reference it.
8843
8844 2015-10-21 Paul Eggert <eggert@cs.ucla.edu>
8845
8846 Merge from gnulib
8847
8848 This incorporates:
8849 2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
8850 2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
8851 * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
8852 Copy from gnulib.
8853
8854 2015-10-21 Katsumi Yamaoka <yamaoka@jpl.org>
8855
8856 * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
8857 (mailcap-viewer-passes-test): Do it instead. Thanks to Stefan Monnier.
8858
8859 2015-10-21 Ken Brown <kbrown@cornell.edu>
8860
8861 Further include-file cleanup
8862
8863 * src/sheap.c: Include stdlib.h.
8864 * src/unexcw.c: Include string.h.
8865
8866 2015-10-21 Eli Zaretskii <eliz@gnu.org>
8867
8868 Fix logic in 'server-kill-emacs-query-function'
8869
8870 * lisp/server.el (server-kill-emacs-query-function): Correct the
8871 logic that controls whether the user is asked for confirmation.
8872 (Bug#21723)
8873
8874 2015-10-21 Artur Malabarba <bruce.connor.am@gmail.com>
8875
8876 * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
8877 (isearch--lax-regexp-function-p): New function.
8878
8879 2015-10-21 Artur Malabarba <bruce.connor.am@gmail.com>
8880
8881 * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
8882 (isearch-search-fun-default): Let-bind `search-spaces-regexp'
8883 around `isearch-regexp-function'.
8884
8885 2015-10-21 Artur Malabarba <bruce.connor.am@gmail.com>
8886
8887 * lisp/isearch.el: Rename word search to regexp-function search.
8888 `isearch-word' went well beyond its original purpose, and the name
8889 no longer makes sense. It is now called
8890 `isearch-regexp-function', and its value should always be a function
8891 that converts a string to a regexp (though setting it to t is still
8892 supported for now).
8893 (isearch-word): Make obsolete.
8894 (isearch-regexp-function): New variable.
8895 (isearch-mode, isearch-done, isearch--state, isearch--set-state)
8896 (with-isearch-suspended, isearch-toggle-regexp)
8897 (isearch-toggle-word, isearch-toggle-symbol)
8898 (isearch-toggle-character-fold, isearch-query-replace)
8899 (isearch-occur, isearch-highlight-regexp)
8900 (isearch-search-and-update, isearch-message-prefix)
8901 (isearch-search-fun-default, isearch-search)
8902 (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
8903 Use it.
8904 (isearch-lazy-highlight-regexp-function): New var.
8905 (isearch-lazy-highlight-word): Make obsolete.
8906 (isearch--describe-regexp-mode): New function.
8907 (isearch--describe-word-mode): Make obsolete.
8908
8909 * lisp/info.el (Info-isearch-search):
8910 * lisp/replace.el (replace-search, replace-highlight):
8911 * lisp/obsolete/longlines.el (longlines-search-function):
8912 * lisp/hexl.el (hexl-isearch-search-function):
8913 * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
8914 Use the new var.
8915
8916 2015-10-21 Oleh Krehel <ohwoeowho@gmail.com>
8917
8918 Add dired-do-compress-to command bound to "c"
8919
8920 * lisp/dired-aux.el (dired-shell-command): Use the caller's
8921 `default-directory', return the result of `process-file'.
8922 (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
8923 used by default.
8924 (dired-compress-files-alist): New defvar.
8925 (dired-do-compress-to): New command.
8926
8927 * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
8928 (dired-do-compress-to): Add an autoload entry.
8929
8930 * etc/NEWS: Add two entries.
8931
8932 2015-10-21 Tassilo Horn <tsdh@gnu.org>
8933
8934 Make RefTeX work with LaTeX subfiles package
8935
8936 * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
8937 document class argument as master file for referencing purposes.
8938
8939 2015-10-21 Katsumi Yamaoka <yamaoka@jpl.org>
8940
8941 * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
8942
8943 2015-10-20 Paul Eggert <eggert@cs.ucla.edu>
8944
8945 Include-file cleanup for src directory
8946
8947 Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
8948 In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
8949 but does not include it directly. As a general rule, a source
8950 file should include foo.h if it needs the interfaces that foo.h
8951 defines.
8952 * src/alloc.c: Don’t include process.h. Include dispextern.h,
8953 systime.h.
8954 * src/atimer.c: Don’t include blockinput.h.
8955 * src/buffer.c: Include coding.h, systime.h. Don’t include
8956 keyboard.h, coding.h.
8957 * src/callint.c: Don’t include commands.h, keymap.h.
8958 * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
8959 systty.h, termhooks.h.
8960 * src/casetab.c: Don’t include character.h.
8961 * src/category.c: Don’t include charset.h, keymap.h.
8962 * src/ccl.h: Don’t include character.h.
8963 * src/character.c: Don’t include charset.h.
8964 * src/charset.c: Don’t include disptab.h.
8965 * src/chartab.c: Don’t include ccl.h.
8966 * src/cm.c: Don’t include frame.h, termhooks.h.
8967 * src/cmds.c: Don’t include window.h, dispextern.h.
8968 * src/coding.c: Don’t include window.h, frame.h.
8969 * src/composite.c: Include composite.h. Don’t include window.h,
8970 font.h.
8971 * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
8972 * src/dbusbind.c: Don’t include frame.h.
8973 * src/decompress.c: Don’t include character.h.
8974 * src/dired.c: Don’t include character.h, commands.h, charset.h.
8975 * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
8976 process.h, timespec.h. Include systime.h.
8977 * src/doc.c: Include coding.h. Don’t include keyboard.h.
8978 * src/editfns.c: Include composite.h. Don’t include frame.h.
8979 * src/emacs.c: Include fcntl.h, coding.h. Don’t include
8980 commands.h, systty.h..
8981 * src/fileio.c: Don’t include intervals.h, dispextern.h.
8982 Include composite.h.
8983 * src/filelock.c: Don’t include character.h, systime.h.
8984 * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
8985 keymap.h, frame.h, blockinput.h, xterm.h. Include composite.h.
8986 * src/font.c: Include termhooks.h.
8987 * src/font.h: Don’t include ccl.h, frame.h. Add forward decls of
8988 struct composition_it, struct face, struct glyph_string.
8989 * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
8990 intervals.h, window.h, termhooks.h.
8991 * src/frame.c: Don’t include character.h, commands.h, font.h.
8992 * src/frame.h: Don’t include dispextern.h.
8993 * src/fringe.c: Don’t include character.h.
8994 * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
8995 character.h, charset.h, fontset.h.
8996 * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
8997 fontset.h.
8998 * src/ftxfont.c: Don’t include dispextern.h, character.h,
8999 charset.h, fontset.h.
9000 * src/gfilenotify.c: Don’t include frame.h, process.h.
9001 * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
9002 Don’t include syssignal.h, buffer.h, charset.h, font.h.
9003 * src/gtkutil.h: Don’t include frame.h.
9004 * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
9005 Don’t include character.h.
9006 * src/indent.c: Don’t include keyboard.h, termchar.h.
9007 * src/inotify.c: Don’t include character.h, frame.h.
9008 * src/insdel.c: Include composite.h. Don’t include blockinput.h.
9009 * src/intervals.c: Don’t include character.h, keyboard.h.
9010 * src/intervals.h: Don’t include dispextern.h, composite.h.
9011 * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
9012 Include coding.h.
9013 * src/keyboard.h: Don’t incldue systime.h.
9014 * src/keymap.c: Don’t include charset.h, frame.h.
9015 * src/lread.c: Include dispextern.h and systime.h.
9016 Don’t include frame.h. Include systime.h.
9017 * src/macros.c: Don’t include commands.h, character.h, buffer.h.
9018 * src/menu.c: Include character.h, coding.h. Don’t include
9019 dispextern.h.
9020 * src/menu.h: Don’t include systime.h.
9021 * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
9022 intervals.h, termhooks.h.
9023 * src/print.c: Include coding.h. Don’t include keyboard.h,
9024 window.h, dispextern.h, termchar.h, termhooks.h, font.h.
9025 Add forward decl of struct terminal.
9026 * src/process.c: Don’t include termhooks.h, commands.h,
9027 dispextern.h, composite.h.
9028 * src/region-cache.c: Don’t include character.h.
9029 * src/scroll.c: Don’t include keyboard.h, window.h.
9030 * src/search.c: Don’t include category.h, commands.h.
9031 * src/sound.c: Don’t include dispextern.h.
9032 * src/syntax.c: Don’t include command.h, keymap.h.
9033 * src/sysdep.c: Don’t include window.h, dispextern.h.
9034 * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
9035 * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
9036 * src/terminal.c: Include character.h.
9037 Don’t include charset.h, coding.h.
9038 * src/textprop.c: Don’t include character.h.
9039 * src/undo.c: Don’t include character.h, commands.h, window.h.
9040 * src/unexsol.c: Don’t include character.h, charset.h.
9041 * src/widget.c: Include widget.h. Don’t include keyboard.h,
9042 window.h, dispextern.h, blockinput.h, character.h, font.h.
9043 * src/widgetprv.h: Don’t include widget.h.
9044 * src/window.c: Don’t include character.h, menu.h, intervals.h.
9045 * src/xdisp.c: Include composite.h, systime.h. Don’t include
9046 macros.h, process.h.
9047 * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
9048 intervals.h.
9049 * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
9050 epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
9051 * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
9052 * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
9053 * src/xgselect.c: Don’t include timespec.h, frame.h.
9054 Include systime.h.
9055 * src/xgselect.h: Don’t include time.h.
9056 Use a forward decl to struct timespec instead.
9057 * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
9058 dispextern.h. Include systime.h.
9059 * src/xml.c: Don’t include character.h.
9060 * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
9061 * src/xselect.c: Don’t include dispextern.h, character.h,
9062 buffer.h, process.h.
9063 * src/xsmfns.c: Don’t include systime.h, sysselect.h.
9064 * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
9065 intervals.h process.h, keymap.h, xgselect.h. Include composite.h.
9066
9067 2015-10-20 Paul Eggert <eggert@cs.ucla.edu>
9068
9069 (/ N) now returns the reciprocal of N
9070
9071 This is more compatible with Common Lisp and XEmacs (Bug#21690). See:
9072 http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
9073 * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
9074 (color-xyz-to-srgb, color-xyz-to-lab):
9075 * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
9076 * lisp/net/shr-color.el (shr-color-hue-to-rgb)
9077 (shr-color-hsl-to-rgb-fractions):
9078 Exploit the change to simplify the code a bit.
9079 * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
9080 Don’t complain about single-argument calls to ‘/’.
9081 * src/data.c (arith_driver, float_arith_driver):
9082 Implement the change.
9083
9084 2015-10-20 Dmitry Gutov <dgutov@yandex.ru>
9085
9086 Call vc-dir-refresh after stash operations
9087
9088 * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
9089 (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
9090
9091 * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
9092 since it can be abbreviated (as returned by vc-find-root).
9093
9094 2015-10-20 Dmitry Gutov <dgutov@yandex.ru>
9095
9096 * lisp/vc/vc-svn.el:
9097 * lisp/vc/vc-mtn.el:
9098 * lisp/vc/vc-hg.el:
9099 * lisp/vc/vc-cvs.el:
9100 * lisp/vc/vc-git.el:
9101 * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
9102 Its usages have been replaced with vc-run-delayed.
9103
9104 2015-10-20 Dima Kogan <dima@secretsauce.net>
9105
9106 Fix memory leak in fontset handling
9107
9108 * src/font.c (copy_font_spec): Make a deep copy of the input
9109 argument FONT. (Bug#21651)
9110
9111 2015-10-20 Michael Sperber <mike@xemacs.org>
9112
9113 * lisp/gnus/mailcap.el (mailcap-mime-data):
9114 Conditonalize `doc-view-mode', which does not exist on XEmacs.
9115
9116 2015-10-20 Oleh Krehel <ohwoeowho@gmail.com>
9117
9118 Update the way directories are compressed
9119
9120 * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
9121 for *.tar.gz decompression to use a pipe.
9122 Add an entry for the default directory compression (to *.tar.g).
9123 (dired-compress-file): Update.
9124
9125 See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
9126
9127 2015-10-20 Michael Sperber <mike@xemacs.org>
9128
9129 Unbreak `group' option for `mail-sources'
9130
9131 * nnml.el (nnml-retrieve-groups, nnml-request-scan):
9132 * nnmail.el (nnmail-get-new-mail-per-group)
9133 (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
9134
9135 2015-10-19 Nicolas Petton <nicolas@petton.fr>
9136
9137 New function seq-position
9138
9139 * lisp/emacs-lisp/seq.el (seq-position): New function.
9140 * test/automated/seq-tests.el: New tests for seq-position.
9141 * doc/lispref/sequences.texi: Add documentation for `seq-position'.
9142
9143 2015-10-19 Ken Brown <kbrown@cornell.edu>
9144
9145 Enable --with-wide-int build on 32-bit Cygwin
9146
9147 * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
9148 and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
9149
9150 2015-10-19 Glenn Morris <rgm@gnu.org>
9151
9152 * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
9153
9154 2015-10-19 Eli Zaretskii <eliz@gnu.org>
9155
9156 Resurrect image loading under auto-image-file-mode
9157
9158 * src/image.c (x_find_image_fd): Handle the case of -2 returned by
9159 'openp' specially. This special case was lost in the changes on
9160 2015-08-18. (Bug#21685)
9161
9162 2015-10-19 Eli Zaretskii <eliz@gnu.org>
9163
9164 Fix return value of 'set-file-extended-attributes'
9165
9166 * lisp/files.el (set-file-extended-attributes): Return non-nil
9167 when setting either ACLs or SELinux context succeeds. Document
9168 the return value. (Bug#21699)
9169
9170 * doc/lispref/files.texi (Changing Files): Document the return
9171 value of set-file-extended-attributes.
9172
9173 2015-10-19 Eli Zaretskii <eliz@gnu.org>
9174
9175 Improve documentation of functions that change files
9176
9177 * doc/lispref/files.texi (Changing Files): Document that these
9178 functions signal an error on failure.
9179
9180 2015-10-18 Eli Zaretskii <eliz@gnu.org>
9181
9182 Fix doc string of 'shell-quote-argument'
9183
9184 * lisp/subr.el (shell-quote-argument): Doc fix. (Bug#21702)
9185
9186 2015-10-18 Michael Albinus <michael.albinus@gmx.de>
9187
9188 Some minor Tramp changes
9189
9190 * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
9191
9192 * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
9193 Expand `tramp-auto-save-directory'.
9194
9195 2015-10-18 Michael Albinus <michael.albinus@gmx.de>
9196
9197 Minor edits in Tramp
9198
9199 * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
9200 Declare it.
9201
9202 * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
9203 Remove declaration.
9204
9205 2015-10-17 Mark Oteiza <mvoteiza@udel.edu>
9206
9207 * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
9208
9209 2015-10-17 Eli Zaretskii <eliz@gnu.org>
9210
9211 Avoid crashes when redisplayng a window changes faces or fonts
9212
9213 * src/xdisp.c (redisplay_internal): If redisplaying the selected
9214 window or one of the frames turns on the frame's 'redisplay' flag,
9215 redisplay again. (Bug#21428)
9216
9217 * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
9218
9219 2015-10-17 Michael Albinus <michael.albinus@gmx.de>
9220
9221 Solve timimg issues in file-notify-tests.el
9222
9223 * test/automated/file-notify-tests.el (file-notify-test02-events):
9224 Rectify `attribute-change' tests. There are timing issues with
9225 gfilenotify. (Bug#21669)
9226
9227 2015-10-16 Paul Eggert <eggert@cs.ucla.edu>
9228
9229 Fix quoting of data within htmlfontify doc
9230
9231 * doc/misc/htmlfontify.texi (Data Structures, Customization):
9232 Fix quoting of data structures. A Lisp quote is needed only
9233 when data appears within Lisp code.
9234
9235 2015-10-16 Artur Malabarba <bruce.connor.am@gmail.com>
9236
9237 * lisp/emacs-lisp/package.el: Reload archive-contents if
9238 priorities change.
9239 (package--old-archive-priorities): New variable.
9240 (package-read-all-archive-contents, package-menu--refresh): Use it
9241 to decide when the `package-archive-contents' needs to be read
9242 again.
9243
9244 2015-10-16 Paul Eggert <eggert@cs.ucla.edu>
9245
9246 Make src headers idempotent and standalone
9247
9248 Redo src/*.h so that each include file is idempotent (that is, can
9249 be included multiple times with the latter inclusions having no
9250 effect) and standalone (that is, can be included by itself,
9251 with no include file other than config.h needed as a prerequisite).
9252 This is standard practice in GNU programs nowadays.
9253 * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
9254 * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
9255 * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
9256 * src/regex.h [emacs]:
9257 * src/syntax.h, src/systty.h, src/termhooks.h:
9258 Include lisp.h, for Lisp_Object.
9259 * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
9260 * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
9261 * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
9262 * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
9263 * src/termopts.h, src/tparam.h, src/unexec.h:
9264 Protect against multiple inclusion.
9265 * src/buffer.h: Include character.h, for STRING_CHAR.
9266 * src/emacsgtkfixed.h (struct frame):
9267 * src/fontset.h (struct face):
9268 * src/region-cache.h (struct buffer):
9269 * src/termhooks.h (struct glyph):
9270 * src/xsettings.h (struct x_display_info):
9271 Add possibly-forward decl.
9272 * src/syntax.h: Include buffer.h, for BVAR.
9273 * src/sysselect.h: Include lisp.h, for eassume.
9274 * src/termchar.h: Include <stdio.h>, for FILE.
9275 * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
9276 * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
9277
9278 2015-10-16 Jürgen Hötzel <juergen@archlinux.org>
9279
9280 Handle symlink targets containing spaces in tramp-gvfs.el
9281
9282 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
9283 Handle symlink targets containing spaces.
9284
9285 2015-10-16 Artur Malabarba <bruce.connor.am@gmail.com>
9286
9287 * lisp/custom.el (custom-theme-load-path): Demote to defvar.
9288
9289 `custom-theme-load-path' was a defcustom, but it shouldn't be for the
9290 same reason that `load-path' shouldn't. Setting it via the customize
9291 interface is a trap for the user.
9292
9293 Installed themes commonly add themselves to this variable, which means
9294 its value is not fit for being saved (it will permanently remember dirs
9295 that don't exist anymore).
9296
9297 This is aggravated by the fact that Emacs always applies the `user'
9298 theme on top of any theme that's loaded, since this will apply the old
9299 variable value and remove any new directories that had been recently
9300 added by themes themselves.
9301
9302 Not to mention, we already have `custom-theme-directory', which is safe
9303 to customize.
9304
9305 2015-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
9306
9307 * lisp/mpc.el: Rename the new toggling commands.
9308 (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
9309 (mpc-toggle-shuffle): Add "-toggle" in the name.
9310
9311 2015-10-16 Eli Zaretskii <eliz@gnu.org>
9312
9313 Improve the doc string of 'completion-boundaries'
9314
9315 * lisp/minibuffer.el (completion-boundaries): Rename the argument
9316 TABLE to COLLECTION, for consistency with other high-level
9317 completion functions. Document how COLLECTION is called if it
9318 is a function. (Bug#21644)
9319
9320 2015-10-16 Oleh Krehel <ohwoeowho@gmail.com>
9321
9322 * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
9323
9324 2015-10-16 Oleh Krehel <ohwoeowho@gmail.com>
9325
9326 Make dired-do-compress work for *.zip files
9327
9328 * lisp/dired-aux.el (dired-check-process): Transform the top-level
9329 comment into a docstring.
9330 (dired-shell-command): New command. This mirrors
9331 `dired-check-process', but is more user-friendly for passing
9332 arguments.
9333 (dired-compress-file-suffixes): Allow to specify the command switches
9334 along with input (%i) and output (%o) inside the PROGRAM part.
9335 Add an entry for *.zip files, and update the entry for *.tar.gz files
9336 to the new style. Update the docstring.
9337 (dired-compress-file): When PROGRAM matches %i or %o, use the new
9338 logic.
9339 (dired-update-file-line): Avoid an error when at end of buffer.
9340
9341 Fixes bug#21637.
9342
9343 2015-10-16 Eli Zaretskii <eliz@gnu.org>
9344
9345 Minor improvement in documentation of internals
9346
9347 * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
9348
9349 2015-10-16 Eli Zaretskii <eliz@gnu.org>
9350
9351 Improve documentation of COLLECTION in completion functions
9352
9353 * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
9354 cross-reference to "Programmed Completion".
9355
9356 * src/minibuf.c (Fcompleting_read): Improve the doc string.
9357 (Bug#21644)
9358
9359 2015-10-16 Eli Zaretskii <eliz@gnu.org>
9360
9361 Add more release info to etc/HISTORY
9362
9363 * etc/HISTORY: Add more release information about 19.x and 20.x
9364 versions.
9365
9366 2015-10-15 Paul Eggert <eggert@cs.ucla.edu>
9367
9368 New file etc/HISTORY
9369
9370 * admin/FOR-RELEASE: Procedure for etc/HISTORY.
9371 * etc/HISTORY: New file.
9372 * etc/NEWS: Mention it.
9373
9374 2015-10-15 Dmitry Gutov <dgutov@yandex.ru>
9375
9376 js-mode: Don't misindent generator methods
9377
9378 * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
9379 generator methods from multiplication operator
9380 (https://github.com/mooz/js2-mode/issues/275).
9381
9382 2015-10-15 Paul Eggert <eggert@cs.ucla.edu>
9383
9384 Fix animation timeout delay calculation
9385
9386 * lisp/image.el (image-animate-timeout):
9387 Don’t assume speed is floating-point.
9388
9389 2015-10-15 Mark Oteiza <mvoteiza@udel.edu>
9390
9391 Add commands for controlling MPD modes
9392
9393 * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
9394 (mpc-cmd-single): New functions.
9395 (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
9396 (mpc-mode-menu): Add new commands as menu items.
9397
9398 2015-10-15 Dmitry Gutov <dgutov@yandex.ru>
9399
9400 Refer to `(elisp)Basic Completion' in completing-read docstring
9401
9402 * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
9403 Completion' in the docstring (bug#21644).
9404
9405 2015-10-14 Mark Oteiza <mvoteiza@udel.edu>
9406
9407 * lisp/mpc.el (mpc-format): Always push form to pred
9408
9409 2015-10-14 Paul Eggert <eggert@cs.ucla.edu>
9410
9411 Spelling fixes
9412
9413 * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
9414 * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
9415 Fix misspelling of nonexistent file name.
9416
9417 2015-10-14 Mark Oteiza <mvoteiza@udel.edu>
9418
9419 * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
9420
9421 2015-10-14 Michael Albinus <michael.albinus@gmx.de>
9422
9423 Some editing fixes in Tramp
9424
9425 * lisp/net/tramp-gvfs.el:
9426 * doc/misc/tramp.texi: "customer option" -> "custom option".
9427
9428 * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
9429
9430 2015-10-14 Jürgen Hötzel <juergen@archlinux.org>
9431
9432 Use proper localization in tramp-gvfs.el
9433
9434 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
9435 Suppress localized settings in order to proper parse gfvs output.
9436
9437 2015-10-14 Warren Lynn <wrn.lynn@gmail.com> (tiny change)
9438
9439 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
9440 Quote argument in proper order. (Bug#21562)
9441
9442 2015-10-14 Nicolas Petton <nicolas@petton.fr>
9443
9444 Fix typos in docstrings
9445
9446 * lisp/emacs-lisp/map.el:
9447 * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
9448 macros.
9449
9450 2015-10-14 Mark Oteiza <mvoteiza@udel.edu>
9451
9452 * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
9453
9454 2015-10-14 Oleh Krehel <ohwoeowho@gmail.com>
9455
9456 Make dired-jump work with tar-subfile-mode
9457
9458 * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
9459 emitting an error, switch to `tar-superior-buffer'.
9460
9461 2015-10-14 Juanma Barranquero <lekktu@gmail.com>
9462
9463 * .gitignore: Add build-aux/ar-lib.
9464
9465 2015-10-14 Nicolas Petton <nicolas@petton.fr>
9466
9467 Better docstrings in seq.el and map.el
9468
9469 * lisp/emacs-lisp/map.el:
9470 * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
9471
9472 2015-10-14 Paul Eggert <eggert@cs.ucla.edu>
9473
9474 Merge from gnulib
9475
9476 This incorporates:
9477 2015-10-13 binary-io, u64, unistd: port to strict C
9478 2015-09-26 c-ctype: do not worry about EBCDIC + char signed
9479 2015-09-25 c-ctype: port better to z/OS EBCDIC
9480 2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
9481 * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
9482 * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
9483 Copy from gnulib.
9484
9485 2015-10-14 Paul Eggert <eggert@cs.ucla.edu>
9486
9487 Take XPNTR private
9488
9489 * src/alloc.c (PURE_POINTER_P): Remove.
9490 All uses replaced with PURE_P.
9491 (XPNTR_OR_SYMBOL_OFFSET): New function.
9492 (XPNTR): Move here from lisp.h.
9493 Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
9494 (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
9495 Remove unnecessary cast.
9496 (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
9497 to avoid an unnecessary runtime test for symbols.
9498 * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
9499 Only alloc.c needs XPNTR now.
9500
9501 2015-10-13 Mark Oteiza <mvoteiza@udel.edu>
9502
9503 Add MPC play/pause command
9504
9505 * lisp/mpc.el (mpc-toggle-play): New command.
9506 (mpc-mode-map): Bind it to "s".
9507 (mpc-mode-menu): Add corresponding menu item.
9508
9509 2015-10-13 Mark Oteiza <mvoteiza@udel.edu>
9510
9511 Add bindings and menu items for prev and next tracks
9512
9513 * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
9514 "<" to mpc-prev.
9515 (mpc-mode-menu): Add corresponding menu items
9516
9517 2015-10-13 Ken Raeburn <raeburn@raeburn.org>
9518
9519 Reduce face-related consing during frame creation.
9520
9521 * faces.el (face--attributes-unspecified): Compute the "unspecified"
9522 attribute list once.
9523 (face-spec-reset-face): Use it instead of building the list.
9524
9525 2015-10-13 Ken Raeburn <raeburn@permabit.com>
9526
9527 Do process ConfigureNotify events indicating size changes.
9528
9529 * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
9530 events don't have the same size, process each one.
9531
9532 2015-10-13 Mark Oteiza <mvoteiza@udel.edu>
9533
9534 Derive mpc-mode from special-mode
9535
9536 lisp/mpc.el (mpc-mode-map): Make from sparse keymap. Unbind g.
9537 (mpc-mode): Derive from special mode.
9538 (mpc-songs-mode-map): Don't set parent keymap.
9539
9540 2015-10-13 Mark Oteiza <mvoteiza@udel.edu>
9541
9542 Fix error messages for when covers are not found.
9543
9544 The last change to mpc-format let the binding to file call
9545 mpc-file-local-copy with nil argument. Instead, employ if-let here
9546 so nil bindings don't result in needless computation and errors.
9547 * lisp/mpc.el: Require 'subr-x at compile time.
9548 * lisp/mpc.el (mpc-format): Use if-let.
9549
9550 2015-10-13 Oleh Krehel <ohwoeowho@gmail.com>
9551
9552 Make dired-do-compress work for *.tar.gz files
9553
9554 * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
9555 "tar -zxvf" to *.tar.gz; update docstring.
9556
9557 (dired-compress-file): Allow to specify switches after the command in
9558 `dired-compress-file-suffixes'.
9559
9560 2015-10-13 Oleh Krehel <ohwoeowho@gmail.com>
9561
9562 Make dired-do-compress work for directories
9563
9564 * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
9565 instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
9566 Also convert the top comment into a docstring.
9567
9568 2015-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
9569
9570 * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
9571
9572 ... since it might come straight from the memoizing table.
9573
9574 2015-10-13 Juanma Barranquero <lekktu@gmail.com>
9575
9576 * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
9577
9578 2015-10-13 Mark Oteiza <mvoteiza@udel.edu>
9579
9580 Use special-mode in eww list modes
9581
9582 * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
9583 (eww-buffers-mode): Derive from special-mode and remove redundant
9584 setting of buffer-read-only.
9585 (eww-mode-map): Remove redundant keymap parent setting.
9586 (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
9587 Remove redundant keymap suppressions and mappings.
9588
9589 2015-10-13 Martin Rudalics <rudalics@gmx.at>
9590
9591 Allow setting frame pixel sizes from frame parameters (Bug#21415)
9592
9593 Also fix some misfeatures in frame (re-)sizing code, add more
9594 debugging information and remove some dead code.
9595
9596 * lisp/frame.el (frame-notice-user-settings, make-frame): Change
9597 parameter names when setting `frame-size-history'.
9598 (frame--size-history): New function.
9599
9600 * src/frame.c (frame_inhibit_resize): If frame has not been made
9601 yet, return t if inhibit_horizontal_resize or
9602 inhibit_vertical_resize bit have been set.
9603 (adjust_frame_size): Simplify.
9604 (make_frame): Initialize inhibit_horizontal_resize,
9605 inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
9606 (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
9607 inhibit_vertical_resize slots.
9608 (x_set_frame_parameters): Handle `text-pixels' specification for
9609 width and height parameters. Don't consider new_height or
9610 new_width changes. Call adjust_frame_size instead of
9611 Fset_frame_size.
9612 (x_figure_window_size): Two new arguments x_width and y_width
9613 returning frame's figures width and height. Calculate tool bar
9614 height before frame sizes so SET_FRAME_HEIGHT can pick it up.
9615 Handle `text-pixels' specification for width and height
9616 parameters.
9617 (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
9618 (Qx_set_window_size_1, Qx_set_window_size_2)
9619 (Qx_set_window_size_3, Qx_set_menu_bar_lines)
9620 (Qupdate_frame_menubar, Qfree_frame_menubar_1)
9621 (Qfree_frame_menubar_2): New symbols.
9622 * src/frame.h (structure frame): New booleans
9623 tool_bar_redisplayed, tool_bar_resized,
9624 inhibit_horizontal_resize, inhibit_vertical_resize.
9625 (x_figure_window_size): Update external declaration.
9626 * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
9627 calling gtk_window_resize.
9628 (update_frame_tool_bar): Make inhibiting of frame resizing more
9629 discriminative. Set tool_bar_resized bit.
9630 * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
9631 resizing more discriminative. Call adjust_frame_size instead of
9632 x_set_window_size.
9633 (Fx_create_frame): Handle x_width and x_height if
9634 set by x_figure_window_size.
9635 * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
9636 subtract 3 from tool bar height.
9637 (x_set_window_size): Add frame_size_history_add call.
9638 (x_new_font): Call adjust_frame_size instead of
9639 x_set_window_size.
9640 * src/w32fns.c (x_change_tool_bar_height): Reset
9641 tool_bar_redisplayed and tool_bar_resized bits when adding tool
9642 bar. Make inhibiting of frame resizing more discriminative.
9643 (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
9644 (Fx_create_frame): Handle x_width and x_height if set by
9645 x_figure_window_size. Set size hints before adjusting frame size.
9646 (x_create_tip_frame): Adjust x_figure_window_size call.
9647 * src/w32term.c (x_set_window_size): Add frame_size_history_add
9648 call.
9649 * src/widget.c (set_frame_size): Remove dead code. Add
9650 frame_size_history_add call. When frame_resize_pixelwise is t
9651 use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
9652 pixel_width and pixel_height.
9653 (update_various_frame_slots): Remove dead code.
9654 (EmacsFrameResize): Add more information in
9655 frame_size_history_add call.
9656 (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
9657 is not set.
9658 * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
9659 * src/xfns.c (x_set_menu_bar_lines): Change argument name.
9660 (x_change_tool_bar_height): Reset tool_bar_redisplayed and
9661 tool_bar_resized bits when adding tool bar. Make inhibiting of
9662 frame resizing more discriminative.
9663 (Fx_create_frame): Handle x_width and x_height if set by
9664 x_figure_window_size. Set size hints before adjusting frame size.
9665 (x_create_tip_frame): Adjust x_figure_window_size call.
9666 * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
9667 (set_frame_menubar): On Lucid never add core-border-width to
9668 avoid that adding XtNinternalBorderWidth adds it again.
9669 (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
9670 * src/xterm.c (x_new_font): In non-toolkit case handle size
9671 change of menu bar.
9672 (x_set_window_size_1): Fix calls to frame_size_history_add.
9673 (x_wm_set_size_hint): Remove dead code. Set
9674 size_hints.min_width and size_hints.min_height to base_width and
9675 base_height.
9676
9677 2015-10-13 Michael Albinus <michael.albinus@gmx.de>
9678
9679 * test/automated/file-notify-tests.el (file-notify--test-timeout):
9680 Add docstring. Increase to 10 seconds for remote
9681 directories. (Bug#21669)
9682
9683 2015-10-12 Paul Eggert <eggert@cs.ucla.edu>
9684
9685 Unmacroize ebrowse.c and etags.c a bit
9686
9687 * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
9688 (streq, filename_eq, set_flag, has_flag): Now inline functions.
9689 (set_flag): First arg is now an address, not an lvalue.
9690 All callers changed.
9691 (filename_eq, set_flag, has_flag):
9692 Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
9693 All callers changed.
9694 * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
9695 Now inline functions. Remove asserts that are unnecessary these
9696 days (and in some cases were too-generous anyway).
9697
9698 2015-10-12 Mark Oteiza <mvoteiza@udel.edu>
9699
9700 Use highlight for current items
9701
9702 * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
9703 Apply highlight face instead of region face.
9704
9705 2015-10-12 Mark Oteiza <mvoteiza@udel.edu>
9706
9707 Search for more cover image names in MPC
9708
9709 * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
9710 case insensitively
9711
9712 2015-10-12 Juanma Barranquero <lekktu@gmail.com>
9713
9714 Remove or comment out unused variables
9715
9716 * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
9717 nontext_cursor, mode_cursor, hand_cursor and count.
9718 (x_change_tool_bar_height): Remove variable old_text_height.
9719 (deliver_wm_chars): Remove variable strip_Alt.
9720 (Fw32_shell_execute): Remove variable document_a.
9721 (Fw32_frame_geometry): Remove variable fullboth.
9722 * src/w32term.c (w32_setup_relief_color): Comment out variable
9723 w32_display_info.
9724 (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
9725 (w32_read_socket): Comment out variables rows, columns.
9726 * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
9727
9728 2015-10-12 Juanma Barranquero <lekktu@gmail.com>
9729
9730 * src/w32proc.c (sys_select): Fix bitwise test.
9731
9732 2015-10-12 Eli Zaretskii <eliz@gnu.org>
9733
9734 Minor typo corrections in doc strings
9735
9736 * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
9737 Doc fixes.
9738
9739 2015-10-12 Eli Zaretskii <eliz@gnu.org>
9740
9741 * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
9742
9743 2015-10-12 Eli Zaretskii <eliz@gnu.org>
9744
9745 Attempt to avoid crashes in plist-member
9746
9747 * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
9748 and a call to XCDR. (Bug#21655)
9749
9750 2015-10-12 Mike FABIAN <mfabian@redhat.com>
9751
9752 * lisp/select.el (gui-get-primary-selection): In
9753 gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
9754
9755 2015-10-12 Tassilo Horn <tsdh@gnu.org>
9756
9757 Support RTF in doc-view
9758
9759 * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
9760
9761 2015-10-12 Juanma Barranquero <lekktu@gmail.com>
9762
9763 * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
9764
9765 2015-10-11 Nicolas Petton <nicolas@petton.fr>
9766
9767 Replace the usage of an obsolete function in auth-source.el
9768
9769 * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
9770 Replace an usage of `epg-context-set-armor' with `setf'.
9771
9772 2015-10-11 Nicolas Petton <nicolas@petton.fr>
9773
9774 * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
9775
9776 2015-10-11 Jay Belanger <jay.p.belanger@gmail.com>
9777
9778 Have calc-yank recognize numbers in different bases.
9779
9780 * lisp/calc/calc-yank.el (math-number-regexp): New function.
9781 (calc-yank): Use `math-number-regexp' to recognize numbers.
9782
9783 2015-10-11 Ken Raeburn <raeburn@raeburn.org>
9784
9785 Handle an opaque-move X11 window manager operation more efficiently
9786
9787 * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
9788 followed by more ConfigureNotify events for the same window, process
9789 only the last one.
9790
9791 2015-10-11 Ken Raeburn <raeburn@raeburn.org>
9792
9793 Fix cursor setting for tip frame; re-enable cursor generation
9794
9795 * src/xfns.c (x_create_tip_frame): Include the cursor in the window
9796 attributes sent when creating the new X window. Don't skip setting
9797 the pointerColor parameter.
9798
9799 2015-10-11 Ken Raeburn <raeburn@raeburn.org>
9800
9801 Rewrite x_set_mouse_color to sync less
9802
9803 We can track serial numbers of X requests and correlate error events
9804 with the associated requests. This way we can identify errors for
9805 specific calls without having to use XSync after every one.
9806
9807 * src/xfns.c (enum mouse_cursor): New type.
9808 (struct mouse_cursor_types, struct mouse_cursor_data): New types.
9809 (mouse_cursor_types): New array listing the Lisp variables and default
9810 cursor appearances for each cursor type.
9811 (x_set_mouse_color_handler): New function; checks error event serial
9812 number against submitted requests.
9813 (x_set_mouse_color): Updated to use the new error handler callback,
9814 and to be more table-driven, to simplify repetitious code.
9815
9816 2015-10-11 Ken Raeburn <raeburn@raeburn.org>
9817
9818 Add x_catch_errors_with_handler
9819
9820 * src/xterm.c (struct x_error_message_stack): Add new fields for a
9821 callback function and associated data pointer.
9822 (x_error_catcher): If the callback function is set, call it after
9823 saving the error message string.
9824 (x_catch_errors_with_handler): Renamed from x_catch_errors but now
9825 accepts a callback function and data pointer.
9826 (x_catch_errors): Now a wrapper function.
9827 * src/xterm.h (x_special_error_handler): New typedef.
9828 (x_catch_errors_with_handler): Declare.
9829
9830 2015-10-11 Ken Raeburn <raeburn@raeburn.org>
9831
9832 Introduce x_uncatch_errors_after_check to reduce XSync calls
9833
9834 Both x_had_errors_p and x_check_errors call XSync, so if they're
9835 immediately followed by x_uncatch_errors, its XSync call will be
9836 redundant, resulting in a wasted round trip to the X server.
9837
9838 * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
9839 x_uncatch_errors without the XSync call.
9840 (XTmouse_position, x_wm_supports):
9841 * src/xfns.c (x_set_mouse_color):
9842 * src/xmenu.c (Fx_menu_bar_open_internal):
9843 * src/xselect.c (x_own_selection, x_get_foreign_selection):
9844 (Fx_get_atom_name): Call it instead of x_uncatch_errors.
9845 * src/xterm.h (x_uncatch_errors_after_check): Declare.
9846
9847 2015-10-10 Jay Belanger <jay.p.belanger@gmail.com>
9848
9849 Document the optional prefix to `calc-yank'
9850
9851 * doc/misc/calc.texi (Yanking into the Stack): Document the optional
9852 prefix to `calc-yank'.
9853 * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
9854 the Calc buffer are yanked back unchanged.
9855
9856 2015-10-10 Mark Oteiza <mvoteiza@udel.edu>
9857
9858 * lisp/calendar/calendar.el: Display buffer before executing body.
9859
9860 In each use of this macro, the modeline is derived from a window width
9861 calculation, which will be wrong if (display-buffer) splits the window
9862 horizontally.
9863
9864 2015-10-10 Paul Eggert <eggert@cs.ucla.edu>
9865
9866 Use ‘echo’ safely with ‘\’ or leading ‘-’
9867
9868 POSIX says that ‘echo FOO’ produces implementation-defined output
9869 if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
9870 behavior in that case.
9871 * Makefile.in (removenullpaths): Remove.
9872 (epaths-force): Rewrite to avoid the need for ‘echo’.
9873 (install-etc): Be clearer about escaping the shell metacharacters
9874 ‘\’ and ‘$’.
9875 * Makefile.in (install-arch-indep, install-etcdoc):
9876 * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
9877 * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
9878 * configure.ac, lib-src/rcs2log, make-dist:
9879 * src/Makefile.in (lisp.mk):
9880 Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
9881 For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
9882 if $foo can contain arbitrary characters.
9883 * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
9884 * doc/lispref/two-volume.make (vol1.pdf):
9885 * test/etags/make-src/Makefile (web ftp publish):
9886 Use ‘printf’ rather than ‘echo -e’.
9887
9888 2015-10-10 Kaushal Modi <kaushal.modi@gmail.com>
9889
9890 Allow numbers with different radixes to be yanked.
9891
9892 * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
9893 default base 10.
9894
9895 2015-10-10 Paul Eggert <eggert@cs.ucla.edu>
9896
9897 Improve CHECK_IMPURE and PURE_P speedup
9898
9899 * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
9900
9901 2015-10-10 Jay Belanger <jay.p.belanger@gmail.com>
9902
9903 Use events instead of chars to keep track of steps.
9904
9905 * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
9906 to keep track of steps.
9907
9908 2015-10-10 Paul Eggert <eggert@cs.ucla.edu>
9909
9910 Fix --enable-gcc-warnings problem with older GCC
9911
9912 * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
9913 This is for building with --enable-gcc-warnings with
9914 GCC 4.6 through 5.0.
9915
9916 2015-10-10 Eli Zaretskii <eliz@gnu.org>
9917
9918 Fix vertical-motion in truncated lines that end in a stretch
9919
9920 * src/indent.c (Fvertical_motion): Expect overshoot when point is
9921 beyond window margin and lines are truncated, even if we have a
9922 stretch at point. (Bug#21468)
9923
9924 2015-10-10 Eli Zaretskii <eliz@gnu.org>
9925
9926 Avoid link-time errors due to inline functions
9927
9928 * src/emacs.c: Include puresize.h, to avoid link-time errors in
9929 unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
9930 inline functions.
9931
9932 2015-10-10 Andreas Schwab <schwab@linux-m68k.org>
9933
9934 * src/data.c (Faset): Fix last change.
9935
9936 2015-10-10 Paul Eggert <eggert@cs.ucla.edu>
9937
9938 CHECK_IMPURE and PURE_P speedup
9939
9940 * src/intervals.c (create_root_interval):
9941 Do CHECK_IMPURE only for strings; not needed for buffers.
9942 Prefer ! STRINGP to BUFFERP, for a tad more speed.
9943 * src/puresize.h (CHECK_IMPURE, PURE_P):
9944 Now inline functions instead of macros.
9945 (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
9946 All callers changed.
9947 (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
9948 All callers changed.
9949
9950 2015-10-09 Noah Friedman <friedman@splode.com>
9951
9952 (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
9953
9954 2015-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
9955
9956 * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
9957
9958 our after-change-function, rather than re-adding it if it was removed.
9959
9960 2015-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
9961
9962 * lisp/cedet/ede: Silence some compiler warnings
9963
9964 * lisp/cedet/ede.el: Require cl-lib. Silence some compiler warnings.
9965 (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
9966 (ede-apply-object-keymap, ede-reset-all-buffers)
9967 (ede-auto-add-to-target): Use dolist.
9968 (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
9969 Use field names rather than initarg names in `oref'.
9970 (ede-load-project-file): Remove unused var `file'.
9971 (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
9972 (ede-set): Remove unused var `a'.
9973
9974 * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
9975 (ede-project-autoload): Avoid the old-style "name" argument.
9976 (ede-emacs-find-matching-target): Use field names rather than initarg
9977 names in `oref'.
9978
9979 * lisp/cedet/ede/linux.el: Silence some compiler warnings.
9980 (ede-linux-load, ede-project-autoload): Avoid the old-style
9981 "name" argument.
9982 (ede-linux-find-matching-target): Use field names rather than initarg
9983 names in `oref'.
9984
9985 2015-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
9986
9987 * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
9988
9989 2015-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
9990
9991 * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
9992 indenting too far after ":-".
9993
9994 2015-10-09 Eli Zaretskii <eliz@gnu.org>
9995
9996 Update case-table and categories of recently added characters
9997
9998 * lisp/international/characters.el: Update information about Latin
9999 Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
10000 Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
10001 blocks. (Byug#21654)
10002
10003 2015-10-09 Martin Rudalics <rudalics@gmx.at>
10004
10005 * src/frame.c (adjust_frame_size): In minibuffer-only windows
10006 don't count minibuffer height twice. (Bug#21643)
10007
10008 2015-10-09 Eli Zaretskii <eliz@gnu.org>
10009
10010 Avoid inflooping in font-lock
10011
10012 * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
10013 inhibit-field-text-motion around the call to
10014 line-beginning-position, to avoid inflooping. (Bug#21615)
10015
10016 2015-10-09 Tassilo Horn <tsdh@gnu.org>
10017
10018 Refactor duplicated code; ensure default is in completions
10019
10020 * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
10021 New function.
10022 (reftex-extract-bib-entries): Use it.
10023 (reftex-extract-bib-entries-from-thebibliography): Use it.
10024
10025 2015-10-09 Vincent Belaïche <vincentb1@users.sourceforge.net>
10026
10027 * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
10028 in the example.
10029
10030 2015-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
10031
10032 * lisp/calc/calc.el: Silence byte-compiler warnings.
10033 (calc-scan-for-dels): Use ignore-errors.
10034 (calc-dispatch, calc-do-dispatch): Make unused arg optional.
10035 (calc-read-key-sequence): Remove unused var `prompt2'.
10036 (calc-kill-stack-buffer): Remove unused var `buflist'.
10037 (calc): Remove unused var `oldbuf'.
10038 (calc-refresh): Use inhibit-read-only.
10039 (calc-can-abbrev-vectors): Declare.
10040 (calc-record): Remove unused var `mainbuf'.
10041 (math-sub-bignum): Remove unused var `sum'.
10042 (math-svo-c, math-svo-wid, math-svo-off): Declare.
10043
10044 2015-10-08 Daiki Ueno <ueno@gnu.org>
10045
10046 Use g_clear_error instead of g_error_free
10047
10048 * src/image.c: Define g_clear_error instead of g_error_free.
10049 (init_svg_functions): Resolve symbol g_clear_error instead of
10050 g_error_free.
10051 (svg_load_image): Use g_clear_error instead of g_error_free, to
10052 suppress GLib warnings when ERR is not set. See bug#21641.
10053
10054 2015-10-08 Paul Eggert <eggert@cs.ucla.edu>
10055
10056 * src/image.c (image_size_error): Simplify.
10057
10058 2015-10-08 Paul Eggert <eggert@cs.ucla.edu>
10059
10060 Fix problems caught with --enable-gcc-warnings
10061
10062 * src/image.c (lookup_rgb_color):
10063 * src/xfns.c (x_defined_color):
10064 * src/xterm.c (x_parse_color):
10065 Remove unused locals.
10066
10067 2015-10-08 Jay Belanger <jay.p.belanger@gmail.com>
10068
10069 * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
10070
10071 2015-10-08 Jay Belanger <jay.p.belanger@gmail.com>
10072
10073 Format initial input uniformly
10074
10075 * lisp/calc/calc.el (calc-digit-start-entry): New function.
10076 * lisp/calc/calc.el (calcDigit-start):
10077 * lisp/calc/calc-aent.el (calc-alg-digit-entry):
10078 Use `calc-digit-start-entry' to format input.
10079
10080 2015-10-08 Ken Raeburn <raeburn@raeburn.org>
10081
10082 Disable non-working pointerColor setting for X tooltip frame
10083
10084 It generates a bunch of server traffic, but there's some bug wherein
10085 the new mouse cursor settings don't seem to get used. In most
10086 situations the cursor isn't likely to be seen anyway, so it's not
10087 urgent to fix.
10088
10089 * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
10090
10091 2015-10-08 Ken Raeburn <raeburn@raeburn.org>
10092
10093 Reduce some unnecessary X calls
10094
10095 * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
10096 call. If border width is wanted, get it from the XGetGeometry call
10097 instead of calling XGetWindowAttributes on the same window. Skip some
10098 X calls if we've already detected an error from the X server.
10099 * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
10100 (handle_one_xevent): Delete XSync call before x_uncatch_errors.
10101
10102 2015-10-08 Ken Raeburn <raeburn@raeburn.org>
10103
10104 Reduce color allocation/query traffic in the TrueColor case
10105
10106 When working with an X visual with TrueColor class, pixel values can
10107 be generated from the RGB values according to mask value provided by
10108 the server on connection. Some of the image-handling code was already
10109 doing this.
10110
10111 * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
10112 lookup_rgb_color.
10113 (x_mutable_colormap): New function.
10114 * src/image.c (lookup_rgb_color): Move pixel composition code to
10115 x_make_truecolor_pixel.
10116 (x_kill_gs_process): Call x_mutable_colormap.
10117 * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
10118 x_mutable_colormap.
10119 * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
10120 * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
10121 pixel value into RGB values directly, and don't send a request to the
10122 server.
10123 (x_alloc_nearest_color): For a TrueColor display, construct the pixel
10124 value with x_make_truecolor_pixel.
10125 (x_copy_color): For an immutable color map, just return the provided
10126 pixel value.
10127
10128 2015-10-08 Ken Raeburn <raeburn@raeburn.org>
10129
10130 Cache XParseColor results in the X display info structure
10131
10132 With repeated lookups of foreground and background colors for multiple
10133 faces per frame, we issue a lot of redundant color name lookups to the
10134 X server, waiting every time for the response. On a remote network
10135 with, say, 30ms round-trip time, this can add nearly a full second to
10136 creation of a new frame.
10137
10138 * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
10139 * src/image.c (get_spec_bg_or_alpha_as_argb):
10140 (xpm_init_color_cache, xpm_lookup_color):
10141 * src/xfns.c (x_defined_color):
10142 * src/xterm.c (x_parse_color): New function; caches color names not
10143 starting with "#" in the display-info structure.
10144 (x_delete_display): Delete the cache content.
10145 * src/xterm.h (struct color_name_cache_entry): New type.
10146 (x_parse_color): Declare.
10147 (struct x_display_info): Add a new field for the cache.
10148
10149 2015-10-07 Stefan Monnier <monnier@iro.umontreal.ca>
10150
10151 * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
10152
10153 2015-10-07 Eli Zaretskii <eliz@gnu.org>
10154
10155 Fix segfault in image_size_error
10156
10157 * src/image.c (image_size_error): Pass a Lisp string to
10158 image_error, not a C string. (Bug#21641)
10159
10160 2015-10-07 Simen Heggestøyl <simenheg@gmail.com>
10161
10162 Highlight CSS variable definitions
10163
10164 * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
10165 CSS variables. (Bug#21638)
10166
10167 2015-10-07 Artur Malabarba <bruce.connor.am@gmail.com>
10168
10169 * test/automated/tabulated-list-test.el: New file.
10170 Test bug#21639 and some basic functionality.
10171
10172 2015-10-07 Artur Malabarba <bruce.connor.am@gmail.com>
10173
10174 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
10175 Check if column can be sorted before trying. (Bug#21639)
10176
10177 2015-10-07 Nicolas Richard <youngfrog@members.fsf.org>
10178
10179 Add test for `self-insert-command' (bug#21633)
10180
10181 * test/automated/cmds-tests.el: New file.
10182
10183 2015-10-07 Martin Rudalics <rudalics@gmx.at>
10184
10185 * src/window.c (resize_frame_windows): Don't set root window's
10186 top position when resizing horizontally.
10187
10188 2015-10-07 Artur Malabarba <bruce.connor.am@gmail.com>
10189
10190 * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
10191 Document more possible values.
10192
10193 2015-10-06 Stefan Monnier <monnier@iro.umontreal.ca>
10194
10195 * lisp/textmodes/tex-mode.el: Use lexical-binding.
10196
10197 2015-10-06 Stefan Monnier <monnier@iro.umontreal.ca>
10198
10199 * lisp/indent.el (indent--default-inside-comment): New function.
10200 (indent-for-tab-command): Use it for `noindent' indentation.
10201
10202 2015-10-06 Paul Eggert <eggert@cs.ucla.edu>
10203
10204 Fix bug in GC_CHECK_MARKED_OBJECTS check
10205
10206 * src/alloc.c (mark_object): Fix bug in checking code.
10207 When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
10208 CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
10209 CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
10210 bucket. The bug did not affect behavior either in the normal case
10211 where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
10212 not have an internal error that a properly-written
10213 CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
10214
10215 2015-10-06 Tassilo Horn <tsdh@gnu.org>
10216
10217 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
10218 Add prettified version for \\Bbb{Q}.
10219
10220 2015-10-06 Artur Malabarba <bruce.connor.am@gmail.com>
10221
10222 * test/automated/package-test.el (package-test-install-single):
10223 Add a test for bug#21625.
10224
10225 2015-10-06 Aaron Ecay <aaronecay@gmail.com>
10226
10227 * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
10228 not a package-desc object. Also clarify documentation. (Bug#21625)
10229
10230 2015-10-06 Eli Zaretskii <eliz@gnu.org>
10231
10232 Fix display of characters adjacent to ZWJ and ZWNJ
10233
10234 * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
10235 characters the same as directional formatting controls.
10236 (bidi_level_of_next_char): Include all Bn characters in rule L1,
10237 as mandated by the UBA.
10238
10239 2015-10-06 Andreas Schwab <schwab@suse.de>
10240
10241 * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
10242 number. (Bug#21633)
10243
10244 2015-10-05 Xue Fuqiao <xfq.free@gmail.com>
10245
10246 * doc/lispref/objects.texi (Window Type): Add a cross reference.
10247
10248 * src/buffer.c (syms_of_buffer): Typo fix. (Bug#21622)
10249
10250 2015-10-05 Eli Zaretskii <eliz@gnu.org>
10251
10252 * lisp/language/misc-lang.el (composition-function-table):
10253 Fix entries for Arabic and Syriac.
10254
10255 2015-10-05 Damien Cassou <damien@cassou.me>
10256
10257 Add first unit tests for auth-source.el
10258
10259 * test/automated/auth-source-tests.el: New file.
10260
10261 2015-10-05 Eli Zaretskii <eliz@gnu.org>
10262
10263 Remove redundant redisplay code
10264
10265 * src/xdisp.c (redisplay_internal, try_cursor_movement)
10266 (try_window_reusing_current_matrix, try_window_id): Remove
10267 redundant restrictions on redisplay optimizations based on the
10268 frame's 'redisplay' flag. See
10269 http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
10270 discussions.
10271
10272 2015-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
10273
10274 * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
10275
10276 2015-10-04 Xue Fuqiao <xfq.free@gmail.com>
10277
10278 Update tutorials/TUTORIAL.cn
10279
10280 * etc/tutorials/TUTORIAL.cn: Improve translation.
10281
10282 2015-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10283
10284 * src/macfont.m (macfont_encode_char, syms_of_macfont):
10285 Remove unused vars.
10286
10287 2015-10-04 Stefan Merten <stefan@merten-home.de>
10288
10289 Pull in version numbers from rst.el upstream release.
10290
10291 * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
10292 (rst-svn-timestamp, rst-official-version)
10293 (rst-official-cvs-rev, rst-package-emacs-version-alist):
10294 Update version numbers.
10295
10296 2015-10-04 Eli Zaretskii <eliz@gnu.org>
10297
10298 * test/automated/coding-tests.el: New file.
10299
10300 2015-10-04 Michael Albinus <michael.albinus@gmx.de>
10301
10302 Improve XEmacs compatibility of Tramp
10303
10304 * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
10305 Declare if it doesn't exist.
10306 (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
10307 (redisplay): Make it an alias if it doesn't exist.
10308
10309 * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
10310 `file-remote-p' (due to XEmacs compatibility).
10311
10312 * lisp/net/trampver.el (locate-dominating-file)
10313 (tramp-compat-replace-regexp-in-string): Autoload.
10314 (tramp-repository-get-version): Do not dupe byte-compiler.
10315
10316 2015-09-02 K. Handa <handa@gnu.org>
10317
10318 fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
10319
10320 * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
10321 Adjusted for the change of type of elements in the array
10322 MFLTGlyphString.glyphs.
10323
10324 2015-10-04 Eli Zaretskii <eliz@gnu.org>
10325 Michael Heerdegen <michael_heerdegen@web.de>
10326
10327 shr: fix too long lines in rendered buffers (Bug#21012)
10328
10329 * lisp/net/shr.el (shr-insert-document, shr-fill-text):
10330 Correct calculation of available width.
10331 (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
10332 is nil.
10333
10334 2015-10-04 Vincent Belaïche <vincentb1@users.sourceforge.net>
10335
10336 Restore blank line before next section, erroneously erased
10337 in my previous commit
10338
10339 * etc/compilation.txt (symbol ant): Add an additional trailing blank
10340 line to this section, so that there are two of them immediately before
10341 the next section.
10342
10343 2015-10-04 Vincent Belaïche <vincentb1@users.sourceforge.net>
10344
10345 Support MSW filename style for ant compilation error regexp
10346
10347 * etc/compilation.txt (symbol ant):
10348 * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
10349 Support MSW filename style.
10350
10351 2015-10-03 Paul Eggert <eggert@cs.ucla.edu>
10352
10353 * nt/INSTALL: Minor spelling and quote fixes.
10354
10355 * lisp/ibuffer.el: Fix docstring length (Bug#21541).
10356
10357 2015-10-03 Simen Heggestøyl <simenheg@gmail.com>
10358
10359 Maintain ordering of JSON object keys by default
10360
10361 * lisp/json.el (json-object-type): Mention order handling in doc-string.
10362 (json--plist-reverse): New utility function.
10363 (json-read-object): Maintain ordering for alists and plists.
10364 (json-pretty-print): Ensure that ordering is maintained.
10365
10366 * test/automated/json-tests.el (test-json-plist-reverse): New test for
10367 `json--plist-reverse'.
10368 (json-read-simple-alist): Update test to accommodate for changes in
10369 `json-read-object'.
10370
10371 * etc/NEWS: Document the new behavior of the pretty printing functions.
10372
10373 2015-10-03 Andreas Schwab <schwab@linux-m68k.org>
10374
10375 * src/coding.c (complement_process_encoding_system): Revert last change.
10376
10377 2015-10-03 Ulf Jasper <ulf.jasper@web.de>
10378
10379 * admin/MAINTAINERS: Add entry for Ulf Jasper.
10380
10381 2015-10-03 Xue Fuqiao <xfq.free@gmail.com>
10382
10383 Doc fix for `defmacro'
10384
10385 * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
10386
10387 2015-10-03 Andreas Schwab <schwab@linux-m68k.org>
10388
10389 More validatation of coding systems
10390
10391 * src/fileio.c (Finsert_file_contents): Remove redundant
10392 coding-system check.
10393 (choose_write_coding_system): Likewise.
10394 * src/coding.c (complement_process_encoding_system): Check argument
10395 for valid coding system.
10396
10397 2015-10-03 Eli Zaretskii <eliz@gnu.org>
10398
10399 Avoid crashes in coding_inherit_eol_type
10400
10401 * src/coding.c (coding_inherit_eol_type): Check the validity of
10402 the arguments. Suggested by Andreas Schwab <schwab@linux-m68k.org>.
10403 (Bug#21602)
10404
10405 2015-10-03 Eli Zaretskii <eliz@gnu.org>
10406
10407 More validatation of coding system in 'write-region'
10408
10409 * src/coding.c (choose_write_coding_system): More validation of
10410 coding-system from various sources. Suggested by Andreas Schwab
10411 <schwab@linux-m68k.org>. (Bug#21602)
10412
10413 2015-10-03 Eli Zaretskii <eliz@gnu.org>
10414
10415 Avoid crashes due to invalid coding-system
10416
10417 * src/fileio.c (choose_write_coding_system)
10418 (Finsert_file_contents): Check validity of coding-system-for-write
10419 and coding-system-for-read bound by the caller. (Bug#21602)
10420
10421 2015-10-03 Tassilo Horn <tsdh@gnu.org>
10422
10423 Adapt to new prettify-symbols-unprettify-at-point default
10424
10425 * etc/NEWS: Mention that unprettication of symbol at point is off
10426 by default.
10427
10428 2015-10-03 Tassilo Horn <tsdh@gnu.org>
10429
10430 Revert my two recent process.c changes
10431
10432 Revert "Improve last commit to process.c" and "Remove callback-handled
10433 channels from Available set" because they did not fix bug#21313.
10434
10435 This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
10436 27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
10437
10438 2015-10-02 Markus Triska <triska@metalevel.at>
10439
10440 * lisp/progmodes/prolog.el: Update and extend operator table.
10441 (prolog-smie-grammar): Add multifile, public etc.
10442
10443 2015-10-02 Paul Eggert <eggert@cs.ucla.edu>
10444
10445 Allow autogen even when Git is not installed
10446
10447 * autogen.sh: Test ‘git status’ before trying to use Git.
10448
10449 2015-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
10450
10451 * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
10452 Adjust lto/lfrom when we have uncommitted changes.
10453
10454 2015-10-02 Paul Eggert <eggert@cs.ucla.edu>
10455
10456 Fix problems found by clang 3.5.0
10457
10458 * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
10459 * src/font.c (font_parse_family_registry):
10460 Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
10461
10462 2015-10-02 Eli Zaretskii <eliz@gnu.org>
10463
10464 * nt/INSTALL: Update instructions for running autogen.sh.
10465
10466 * nt/INSTALL: Point to ezwinports for libXpm binaries.
10467
10468 2015-10-02 Daniel Colascione <dancol@dancol.org>
10469
10470 Fix winner in cl-lib not loaded case
10471
10472 * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
10473 without requiring CL
10474
10475 2015-10-02 Paul Eggert <eggert@cs.ucla.edu>
10476
10477 Fix a few problems with directed quotes
10478
10479 This is in response to a problem report by Kaushal Modi in:
10480 http://bugs.gnu.org/21588#25
10481 * lisp/cedet/mode-local.el (describe-mode-local-overload):
10482 * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
10483 * lisp/info-xref.el (info-xref-check-all-custom):
10484 * lisp/mail/emacsbug.el (report-emacs-bug-hook):
10485 Prefer directed to undirected single quotes in diagnostics.
10486
10487 2015-10-01 Eli Zaretskii <eliz@gnu.org>
10488
10489 Revert "Attempt to fix slow redisplay caused by last changes"
10490
10491 * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
10492 (try_cursor_movement): Don't relax requirements for redisplay
10493 optimizations for the selected frame. (Bug#21597)
10494
10495 This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
10496
10497 2015-10-01 Eli Zaretskii <eliz@gnu.org>
10498
10499 Fix slow redisplay when daemon frame exists
10500
10501 * src/xdisp.c (redisplay_internal): Don't consider daemon frames
10502 when looking for frames that need to be redisplayed. (Bug#21597)
10503
10504 2015-10-01 Eli Zaretskii <eliz@gnu.org>
10505
10506 Attempt to fix slow redisplay caused by last changes
10507
10508 * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
10509 (try_cursor_movement): Relax requirements for redisplay
10510 optimizations for the selected frame. (Bug#21597)
10511
10512 2015-10-01 Stephen Leake <stephen_leake@stephe-leake.org>
10513
10514 * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
10515 Improve doc string.
10516
10517 2015-10-01 Stephen Leake <stephen_leake@stephe-leake.org>
10518
10519 * lisp/minibuffer.el (minibuffer-completion-help):
10520 Set default base-size, in case completion table does not set it.
10521
10522 2015-10-01 Eli Zaretskii <eliz@gnu.org>
10523
10524 Fix GUD display of GDB output with non-ASCII text
10525
10526 * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
10527 (gdb-mi-decode): New function.
10528 (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
10529 decode octal escapes in GDB output. (Bug#21572)
10530
10531 2015-10-01 Eli Zaretskii <eliz@gnu.org>
10532
10533 * nt/INSTALL: Document where to find XPM support files.
10534
10535 2015-10-01 Tassilo Horn <tsdh@gnu.org>
10536
10537 Un- and re-prettification are not exclusive
10538
10539 * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
10540 Re-apply prettification to previous symbol also when unprettifying
10541 next one.
10542
10543 2015-10-01 Tassilo Horn <tsdh@gnu.org>
10544
10545 Don't unprettify symbol at point by default
10546
10547 * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
10548 Default to disabled (nil).
10549
10550 2015-09-30 Artur Malabarba <bruce.connor.am@gmail.com>
10551
10552 * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
10553 Support unprettifying when point is after a symbol.
10554
10555 * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
10556
10557 2015-09-30 Eli Zaretskii <eliz@gnu.org>
10558
10559 Avoid assertion violations in push_prefix_prop
10560
10561 * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
10562 a line that has a line-prefix defined starts with an image. (Bug#21428)
10563
10564 2015-09-30 Eli Zaretskii <eliz@gnu.org>
10565
10566 Disable some display optimizations when frames need redisplay
10567
10568 These optimizations were previously disabled by the
10569 windows_or_buffers_changed flag, which now is not set
10570 when only some frames need to be redrawn.
10571 * src/xdisp.c (redisplay_internal): Redisplay any frame whose
10572 'redisplay' flag is set.
10573 (try_window_reusing_current_matrix, try_window_id)
10574 (try_cursor_movement): Disable these optimizations when the
10575 frame's 'redisplay' flag is set.
10576
10577 2015-09-30 Tassilo Horn <tsdh@gnu.org>
10578
10579 Don't modify buffer by unprettification
10580
10581 * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
10582 (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
10583 modify buffer when setting/removing custom prettify-symbols-start/end
10584 text properties. Add them to font-lock-extra-managed-props, too.
10585
10586 2015-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
10587
10588 Try to avoid redisplaying all frames when creating a new one
10589
10590 * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
10591 * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10592 (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
10593 * src/frame.c (x_set_screen_gamma): Set the specific frame's
10594 `redisplay' bit rather than windows_or_buffers_changed.
10595
10596 * src/window.c (apply_window_adjustment): Remove redundant setting of
10597 windows_or_buffers_changed.
10598
10599 * src/xdisp.c (redisplay_internal): Set the specific frame's
10600 `redisplay' bit rather than update_mode_lines in response to
10601 cursor_type_changed.
10602 (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
10603 (AINC): Adjust accordingly.
10604
10605 2015-09-30 Tassilo Horn <tsdh@gnu.org>
10606
10607 Implement unprettification of symbol at point
10608
10609 * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
10610 symbol at point.
10611 (prettify-symbols--current-symbol-bounds): New variable.
10612 (prettify-symbols--post-command-hook): New function.
10613 (prettify-symbols-unprettify-at-point): New defcustom.
10614 (prettify-symbols-mode): Use it.
10615 (prettify-symbols--compose-symbol): Use them.
10616
10617 2015-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10618
10619 * src/macfont.m (mac_font_descriptor_supports_languages):
10620 Regard "zh" as synonym of "zh-Hans".
10621
10622 2015-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10623
10624 Work around crash when displaying etc/HELLO on OS X 10.11
10625
10626 * src/macfont.m (mac_font_get_weight)
10627 (mac_font_descriptor_get_adjusted_weight): New functions.
10628 (macfont_store_descriptor_attributes): Adjust weight.
10629
10630 2015-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10631
10632 * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
10633
10634 2015-09-30 Nicolas Petton <nicolas@petton.fr>
10635
10636 * lisp/arc-mode.el (archive-rar-summarize): Better alignment
10637 of the columns.
10638
10639 2015-09-30 Nicolas Petton <nicolas@petton.fr>
10640
10641 Use unar and lsar to handle RAR archives in arc-mode
10642
10643 * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
10644 on unar and lsar instead of unrar-free for RAR archives (bug#17663).
10645
10646 2015-09-30 Wieland Hoffmann <themineo@gmail.com> (tiny change)
10647
10648 Clarify :create in auth-source's docs
10649
10650 * lisp/gnus/auth-source.el (auth-source-search):
10651 Clarify :create's meaning.
10652
10653 2015-09-30 Phil Sainty <psainty@orcon.net.nz>
10654
10655 Avoid empty -path arguments in rgrep
10656
10657 * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
10658 the list produced according to grep-find-ignored-directories,
10659 before passing it to Find/Grep invocation. (Bug#21548)
10660
10661 2015-09-30 Eli Zaretskii <eliz@gnu.org>
10662
10663 Clarify documentation of pos-visible-in-window-p
10664
10665 * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
10666 t for POS. See
10667 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
10668 for the original report.
10669
10670 * doc/lispref/windows.texi (Window Start and End): Clarify the
10671 meaning of t for the POSITION argument of pos-visible-in-window-p.
10672
10673 2015-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
10674
10675 * lisp/progmodes/prolog.el: Fix various indentation cases.
10676 (prolog-operator-chars): New const (add \\).
10677 (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
10678 (prolog-smie-rules): Add rules according to bug#21526.
10679
10680 2015-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
10681
10682 * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
10683 (sh-indent-after-continuation): Add new value `always' (bug#17620)
10684 (sh-smie-sh-rules): Remove old handling of continued lines.
10685 (sh-smie--indent-continuation): New function.
10686 (sh-set-shell): Use it.
10687
10688 2015-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
10689
10690 * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
10691 Remove redundant :group keyword args.
10692 (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
10693 Remove variables.
10694 (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
10695 turn them into compile-time variables.
10696 Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
10697 Add rules for break, continue, return, global, and persistent.
10698 Refine the rule for "until".
10699 (octave-smie--funcall-p, octave-smie--end-index-p)
10700 (octave-smie--in-parens-p): New functions.
10701 (octave-smie-backward-token, octave-smie-forward-token): Use them to
10702 distinguish the "enumeration" function and the "end" index from
10703 their corresponding keywords.
10704 (octave--block-offset-keywords): New constant.
10705 (octave-smie-rules): Use it. Adjust rules for new global/persistent
10706 parsing.
10707 (octave-reserved-words): Redefine using octave-smie-grammar.
10708 (octave-font-lock-keywords): Use octave-smie--funcall-p and
10709 octave-smie--end-index-p.
10710
10711 2015-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
10712
10713 * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
10714
10715 2015-09-29 Eli Zaretskii <eliz@gnu.org>
10716
10717 * nt/INSTALL: Remove references to GTK site.
10718 That site no longer offers Windows downloads.
10719
10720 2015-09-29 Eli Zaretskii <eliz@gnu.org>
10721
10722 * nt/INSTALL: Add instructions for installing Git.
10723
10724 2015-09-29 Katsumi Yamaoka <yamaoka@jpl.org>
10725
10726 * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
10727 use colors. Suggested by Eli Zaretskii.
10728
10729 2015-09-28 Katsumi Yamaoka <yamaoka@jpl.org>
10730
10731 * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
10732 not supporting 256 above colors (bug#21557).
10733
10734 2015-09-28 Dmitry Gutov <dgutov@yandex.ru>
10735
10736 Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
10737
10738 This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
10739
10740 2015-09-28 Nicolas Petton <nicolas@petton.fr>
10741
10742 Add documentation for seq.el
10743
10744 * doc/lispref/sequences.texi: Add documentation regarding extending
10745 seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
10746 seq-do and seq-map.
10747
10748 2015-09-28 Nicolas Petton <nicolas@petton.fr>
10749
10750 Better documentation for seq-some
10751
10752 * doc/lispref/sequences.texi:
10753 * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
10754 guarantee that the returned value is the first non-nil value that
10755 resulted from applying the predicate.
10756
10757 2015-09-28 Nicolas Petton <nicolas@petton.fr>
10758
10759 * lisp/arc-mode.el: Sharp-quote function arguments.
10760
10761 2015-09-28 Eli Zaretskii <eliz@gnu.org>
10762
10763 Avoid redisplay error in ediff-regions-wordwise
10764
10765 * lisp/vc/ediff-util.el
10766 (ediff-clone-buffer-for-region-comparison): Make sure the mark is
10767 set before activating it. (Bug#21567)
10768
10769 2015-09-28 Eli Zaretskii <eliz@gnu.org>
10770
10771 Another attempt to fix crashes due to prematurely freed faces
10772
10773 * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
10774 faces for as long as we might have desired matrices that reference
10775 those faces. (Bug#21428)
10776
10777 2015-09-28 Tassilo Horn <tsdh@gnu.org>
10778
10779 Add auctex development list email address
10780
10781 2015-09-28 Tassilo Horn <tsdh@gnu.org>
10782
10783 * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
10784
10785 2015-09-28 Arash Esbati <esbati@gmx.de> (tiny change)
10786
10787 Improve wrapfig package support and caption parsing
10788
10789 * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
10790 Correct description string and add wraptable environment.
10791 (reftex-default-context-regexps): Improve caption regexp.
10792
10793 2015-09-28 Anders Lindgren <andlind@gmail.com>
10794
10795 Respect value of frame_resize_pixelwise when handling fullscreen state
10796
10797 * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
10798 setting size increments.
10799
10800 2015-09-27 Michael Albinus <michael.albinus@gmx.de>
10801
10802 * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
10803
10804 2015-09-27 Simen Heggestøyl <simenheg@gmail.com>
10805
10806 Add prettify-symbols-alist for js-mode
10807
10808 * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
10809 (js-mode): Use it.
10810
10811 2015-09-27 Eli Zaretskii <eliz@gnu.org>
10812
10813 * nt/subdirs.el: File deleted (no longer used).
10814
10815 2015-09-26 Alan Mackenzie <acm@muc.de>
10816
10817 Fix follow-scroll-up/down, making them replacements for scroll-up/down
10818
10819 1. Allow point to move between follow windows in scroll operations.
10820 2. Fix bug where `right-char' just before EOB caused spurious scrolling,
10821 when EOB was isolated in the last follow window.
10822
10823 * lisp/follow.el (follow-fixed-window): New variable.
10824 (follow-get-scrolled-point): New function.
10825 (follow-scrol-up, follow-scroll-down): Add autoload cookies.
10826 Reformulate the code. Put `scroll-command' properties on the functions.
10827 Correct minor errors in ...-down's doc string and code.
10828 (follow-calc-win-end): Amend incomplete doc string. Use
10829 `pos-visible-in-window-p' to check whether EOB is in the window.
10830 (follow-estimate-first-window-start): Correct an off-by-1 error.
10831 (follow-adjust-window): Add handling for explicit scrolling operations.
10832
10833 2015-09-26 Paul Eggert <eggert@cs.ucla.edu>
10834
10835 * admin/MAINTAINERS: Add self, plus list some more files
10836 sans maintaners.
10837
10838 2015-09-26 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
10839
10840 New DWIM commands for changing letter-case
10841
10842 * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
10843 New functions. (Bug#21501)
10844
10845 2015-09-26 Eli Zaretskii <eliz@gnu.org>
10846
10847 * etc/PROBLEMS: Document problems with pasting on MS-Windows.
10848
10849 2015-09-26 Eli Zaretskii <eliz@gnu.org>
10850
10851 Make face realization be more frame-specific
10852
10853 * src/frame.h (struct f): New flag face_change.
10854 * src/xfaces.c (Finternal_make_lisp_face)
10855 (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
10856 (update_face_from_frame_parameter): Set the face_change flag only
10857 for the frame whose faces are affected.
10858 * src/xdisp.c (init_iterator): If a frame's face_change flag is
10859 set, free faces only on that frame.
10860 (redisplay_internal): Disable "display optimization 1" if the
10861 frame's face_change flag is set.
10862 (redisplay_window): Don't allow skipping a window's redisplay if
10863 its frame's face_change flag is set.
10864 * src/frame.c (x_set_screen_gamma): Instead of calling
10865 Fclear_face_cache, call clear_face_cache and set
10866 windows_or_buffers_changed to a non-zero value. This avoids
10867 setting the global face_change flag that triggers face realization
10868 on all frames and thorough redisplay of all of them.
10869
10870 * lisp/term/tty-colors.el (tty-register-default-colors): Don't
10871 clear face cache if the selected frame is a GUI frame.
10872
10873 2015-09-26 Tassilo Horn <tsdh@gnu.org>
10874
10875 Remove font-latex specific check
10876
10877 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
10878 Use syntax-ppss data to identify verbatim contents.
10879
10880 2015-09-25 Tassilo Horn <tsdh@gnu.org>
10881
10882 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
10883 Fix some false negatives.
10884
10885 2015-09-25 Eli Zaretskii <eliz@gnu.org>
10886
10887 Reorder Windows version in Emacs manifests
10888
10889 * nt/emacs-x64.manifest:
10890 * nt/emacs-x86.manifest: Reorder Windows version from lowest to
10891 highest.
10892
10893 2015-09-25 Eli Zaretskii <eliz@gnu.org>
10894
10895 Update Emacs manifest files for Windows 10
10896
10897 * nt/emacs-x86.manifest:
10898 * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
10899
10900 2015-09-25 Eli Zaretskii <eliz@gnu.org>
10901
10902 Avoid non-ASCII decoding errors in C src files
10903
10904 * src/nsterm.m:
10905 * src/lisp.h:
10906 * src/editfns.c:
10907 * src/doprnt.c: Add 'coding' cookies -- these files include
10908 Unicode characters and should be decoded as UTF-8.
10909
10910 2015-09-25 Alan Mackenzie <acm@muc.de>
10911
10912 Resurrect edebug-set-initial-mode, repurposing it to set the global mode
10913
10914 * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
10915 amend to match current modes and functions.
10916 (edebug-set-initial-mode): Uncomment and change from setting a defun's
10917 `edebug-initial-mode''s property to setting the variable
10918 `edebug-initial-mode'.
10919 (top level): Create new binding C-x C-a C-m for
10920 `edebug-set-initial-mode'.
10921
10922 * doc/lispref/edebug.texi (Edebug Execution Modes): Document
10923 `edebug-set-initial-mode' and its new key binding.
10924 (Edebug Options): Mention the new command in the pertinent place.
10925
10926 * etc/NEWS: Write entry for this change.
10927
10928 2015-09-25 Eli Zaretskii <eliz@gnu.org>
10929
10930 Avoid non-ASCII decoding errors in Texinfo files
10931
10932 * doc/misc/tramp.texi:
10933 * doc/lispref/strings.texi:
10934 * doc/lispref/positions.texi:
10935 * doc/lispref/help.texi:
10936 * doc/lispref/functions.texi:
10937 * doc/lispintro/emacs-lisp-intro.texi:
10938 * doc/emacs/text.texi:
10939 * doc/emacs/modes.texi:
10940 * doc/emacs/mini.texi:
10941 * doc/emacs/display.texi:
10942 * doc/emacs/custom.texi:
10943 * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
10944 Unicode characters and should be decoded as UTF-8.
10945 * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
10946 apostrophe unnecessarily.
10947
10948 2015-09-25 Paul Eggert <eggert@cs.ucla.edu>
10949
10950 Merge from gnulib
10951
10952 This incorporates:
10953 2015-09-25 c-ctype: rewrite to use inline functions
10954 2015-09-24 maint: add coding cookies to non-ASCII sources
10955 2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
10956 * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
10957 * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
10958 * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
10959 * lib/set-permissions.c:
10960 Copy from gnulib.
10961
10962 2015-09-24 Paul Eggert <eggert@cs.ucla.edu>
10963
10964 Update publicsuffix.txt from upstream
10965
10966 * etc/publicsuffix.txt: Update from
10967 https://publicsuffix.org/list/effective_tld_names.dat
10968 dated 2015-09-24 17:29:21 UTC.
10969
10970 2015-09-24 Eli Zaretskii <eliz@gnu.org>
10971
10972 Prevent timers from messing up TTY menus
10973
10974 * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
10975 the TTY menu is open. (Bug#21530)
10976
10977 2015-09-24 Paul Eggert <eggert@cs.ucla.edu>
10978
10979 No need to mention K&R C in c-mode intro
10980
10981 2015-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
10982
10983 Fix recent bootstrap problems
10984
10985 * src/syntax.c (parse_sexp_propertize): Fix last fix.
10986 * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
10987 * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
10988
10989 2015-09-24 Michael Albinus <michael.albinus@gmx.de>
10990
10991 * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
10992
10993 2015-09-23 Ivan Andrus <darthandrus@gmail.com>
10994
10995 Properly quote nested xml comments (Bug#6267) (Bug#20001)
10996
10997 * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
10998 (nxml-mode): Set comment-quote-nested-function.
10999
11000 2015-09-23 Ivan Andrus <darthandrus@gmail.com>
11001
11002 Allow major-modes full control over quoting nested comments
11003
11004 * lisp/newcomment.el (comment-quote-nested-function): New variable.
11005 (comment-quote-nested-default): New function.
11006 (comment-quote-nested): Use `comment-quote-nested-function'.
11007
11008 2015-09-23 Paul Eggert <eggert@cs.ucla.edu>
11009
11010 Prefer CALLN in a few more places
11011
11012 * src/macfont.m (macfont_set_family_cache):
11013 * src/nsterm.m (append2):
11014 * src/xterm.c (x_cr_export_frames):
11015 Prefer CALLN to allocating the arg arrays by hand.
11016
11017 2015-09-23 Michael Albinus <michael.albinus@gmx.de>
11018
11019 Adapt file-notify-test02-events test case
11020
11021 * test/automated/file-notify-tests.el (file-notify-test02-events):
11022 Create a new watch for every test.
11023
11024 2015-09-23 Michael Albinus <michael.albinus@gmx.de>
11025
11026 Continue gfilenotify.c implementation of missing parts
11027
11028 * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
11029 `gfile-add-watch' call.
11030 (file-notify-rm-watch): Modify `file-notify-descriptors' only
11031 after calling the low level functions.
11032
11033 * src/gfilenotify.c (dir_monitor_callback): Check, whether
11034 event_type is expected.
11035 (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
11036 (Fgfile_rm_watch): Fix typo.
11037 (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
11038
11039 2015-09-23 Stefan Monnier <monnier@iro.umontreal.ca>
11040
11041 * src/syntax.c (parse_sexp_propertize): Handle spurious
11042 e_property_truncated flag.
11043 (update_syntax_table_forward): Remove invalid assertion.
11044
11045 2015-09-23 Eli Zaretskii <eliz@gnu.org>
11046
11047 * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
11048 space display spec on text-mode terminals, by calling
11049 PRODUCE_GLYPHS instead of x_produce_glyphs. Remove the
11050 HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
11051 test for a GUI frame.
11052
11053 2015-09-23 Oleh Krehel <ohwoeowho@gmail.com>
11054
11055 Move let-when-compile to lisp-mode.el
11056
11057 This fixes the bootstrapping problem of `let-when-compile' using
11058 `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
11059
11060 2015-09-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
11061
11062 * lisp/url/url-http.el (url-http-parse-headers): Do not
11063 automatically include Authorization header in redirect.
11064 (Bug#21350)
11065
11066 2015-09-22 Eli Zaretskii <eliz@gnu.org>
11067
11068 Clarify documentation of ':relative-width'
11069
11070 * doc/lispref/display.texi (Specified Space): Document that
11071 ':relative-width' is only supported on GUI frames.
11072
11073 2015-09-22 Eli Zaretskii <eliz@gnu.org>
11074
11075 Fix 'current-column' in presence of :relative-width
11076
11077 * src/indent.c (check_display_width): Support ':relative-width'
11078 in a display spec that specifies a stretch glyph. (Bug#21533)
11079
11080 2015-09-22 Ken Manheimer <ken.manheimer@gmail.com>
11081
11082 Reformat the pdbtrack remote-file fix ChangeLog.2 entry
11083
11084 ... to conform better to CONTRIBUTE guidelines.
11085
11086 2015-09-22 Stefan Monnier <monnier@iro.umontreal.ca>
11087
11088 * lisp/progmodes/prolog.el: Fix indentation of empty line
11089
11090 * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
11091 `empty-line-token' element.
11092 (smie-indent-empty-line): New function.
11093 (smie-indent-functions): Add it.
11094
11095 * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
11096 behavior and use the new `empty-line-token' element (bug#21526).
11097 (prolog-mode-variables): Fix comment-start-skip setting to match
11098 comment-start.
11099
11100 * test/indent/prolog.prolog: Add nested indentation tests.
11101
11102 * lisp/newcomment.el (comment-normalize-vars): Fix default value of
11103 comment-start-skip not to misuse submatch 1.
11104
11105 2015-09-22 Alan Mackenzie <acm@muc.de>
11106
11107 Make description of `edebug-initial-mode' user friendly
11108
11109 Fixes bug#21365.
11110
11111 * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
11112 description of `edebug-initial-mode' from that of its implementation
11113 to that of its visual effect and use. Move the paragraph higher up.
11114
11115 2015-09-22 Eli Zaretskii <eliz@gnu.org>
11116
11117 lisp/progmodes/gud.el (gud-format-command): Fix last commit
11118
11119 * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
11120 functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
11121
11122 2015-09-22 Tassilo Horn <tsdh@gnu.org>
11123
11124 Improve last commit to process.c
11125
11126 2015-09-22 Michael Albinus <michael.albinus@gmx.de>
11127
11128 Implement gfile-valid-p
11129
11130 * lisp/filenotify.el (file-notify-callback): Fix typo.
11131 (gfile-valid-p): Remove defalias.
11132
11133 * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
11134 the file or directory to be watched is deleted.
11135 (Fgfile_add_watch): Make watch_object a triple.
11136 (Fgfile_rm_watch): Check, whether watch is cancelled already.
11137 (Fgfile_valid_p): New defun.
11138 (syms_of_gfilenotify): Declare Sgfile_valid_p.
11139
11140 2015-09-22 Tassilo Horn <tsdh@gnu.org>
11141
11142 Remove callback-handled channels from Available set
11143
11144 * src/process.c (wait_reading_process_output): Remove channel from
11145 Available set if it is handled by a callback, e.g., dbus or
11146 inotify (bug#21313).
11147
11148 2015-09-21 Mark Oteiza <mvoteiza@udel.edu>
11149
11150 Use lunate epsilon for TeX \epsilon
11151
11152 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
11153 Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
11154 \epsilon to use GREEK LUNATE EPSILON SYMBOL
11155
11156 2015-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
11157
11158 * lisp/progmodes/prolog.el: Fix nested electric if-then-else
11159
11160 * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
11161 rather than outermost paren (bug#21526).
11162
11163 2015-09-21 Paul Eggert <eggert@cs.ucla.edu>
11164
11165 Improve git diff hunk headers for .el, .texi
11166
11167 Problem reported by Alan Mackenzie in:
11168 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
11169 * .gitattributes (*.el, *.texi): New patterns.
11170 * autogen.sh: Configure diff.elisp.xfuncname and
11171 diff.texinfo.xfuncname if using Git.
11172
11173 2015-09-21 Eli Zaretskii <eliz@gnu.org>
11174
11175 Don't rely on defaults in decoding UTF-8 encoded Lisp files
11176
11177 * lisp/replace.el:
11178 * lisp/textmodes/rst.el:
11179 * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
11180
11181 2015-09-21 Paul Eggert <eggert@cs.ucla.edu>
11182
11183 Clarify or replace a few \u escapes
11184
11185 * doc/lispref/nonascii.texi (Character Properties)
11186 More-detailed commentary for \u escapes.
11187 * lisp/progmodes/python.el (python--prettify-symbols-alist):
11188 * lisp/replace.el (query-replace-from-to-separator):
11189 * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
11190 (rst-mode-syntax-table):
11191 * lisp/whitespace.el (whitespace-display-mappings):
11192 Prefer actual character to \u escape when this makes the code
11193 easier to follow in the usual case where Unicode chars can be
11194 displayed.
11195
11196 2015-09-21 Paul Eggert <eggert@cs.ucla.edu>
11197
11198 Pacify GCC -Wmaybe-uninitialized in xdisp.c
11199
11200 * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
11201 than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
11202 charpos. The loop should always execute at least once anyway.
11203
11204 2015-09-21 Tassilo Horn <tsdh@gnu.org>
11205
11206 Signal error on invalid regexp
11207
11208 * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
11209 Signal an error when the user tries searching with a regexp
11210 matching the empty string.
11211
11212 2015-09-21 Eli Zaretskii <eliz@gnu.org>
11213
11214 Another fix of file-notify-tests for w32notify
11215
11216 * test/automated/file-notify-tests.el (file-notify-test02-events):
11217 Further adaptation for w32notify: reduce the number of expected
11218 'changed' events. (Bug#21435)
11219
11220 2015-09-21 Michael Albinus <michael.albinus@gmx.de>
11221
11222 Adapt tests and manual for w32notify
11223
11224 * doc/lispref/os.texi (File Notifications): w32notify does not
11225 send `attribute-changed' events.
11226
11227 * test/automated/file-notify-tests.el (file-notify--test-with-events):
11228 Simplify parameters. Adapt all callees.
11229 (file-notify-test02-events): w32notify does not send
11230 `attribute-changed' events.
11231 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
11232 Do not skip in case of w32notify. Simply ignore this part of the test.
11233
11234 2015-09-21 Dima Kogan <dima@secretsauce.net>
11235
11236 Fix setting breakpoints when remote-debugging
11237
11238 * lisp/progmodes/gud.el (gud-format-command): Send localized file
11239 names to the debugger running on the remote. (Bug#13304)
11240
11241 2015-09-21 Nicolas Petton <nicolas@petton.fr>
11242
11243 Better docstring and parameter name for seq-find
11244
11245 * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
11246 the parameter `sentinel' to `default'.
11247
11248 * doc/lispref/sequences.texi (Sequence Functions): Update the
11249 documentation for `seq-find' accordingly.
11250
11251 2015-09-21 Eli Zaretskii <eliz@gnu.org>
11252
11253 Avoid infinite recursion while displaying box face
11254
11255 * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
11256 the previous string/buffer character position under bidi
11257 iteration. (Bug#21428)
11258
11259 2015-09-21 Anders Lindgren <andlind@gmail.com>
11260
11261 Keep upper edge unchanged when changing size of NS frame
11262
11263 * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
11264 (Bug#21415).
11265
11266 2015-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
11267
11268 * lisp/progmodes/prolog.el: Improve handling of if/then/else.
11269 (prolog-smie-rules): Accommodate standard if/then/else special
11270 indentation.
11271 (prolog-mode): Add . to electric-indent-chars.
11272 (prolog-electric--if-then-else): Re-indent the line before adding space
11273 after the new char (bug#21526).
11274
11275 2015-09-20 Mark Oteiza <mvoteiza@udel.edu>
11276
11277 Add prettify symbols to python-mode
11278
11279 * lisp/progmodes/python.el (python-prettify-symbols-alist):
11280 New variable.
11281 (python-mode): Use it
11282
11283 2015-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
11284
11285 * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
11286
11287 2015-09-20 Jostein Kjønigsen <jostein@secure.kjonigsen.net> (tiny change)
11288
11289 (compilation-error-regexp-alist-alist): Tone down guile-file
11290
11291 * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
11292 Make guile-file a bit less enthusiastic (bug#21496).
11293
11294 2015-09-20 Drew Csillag <drew@thecsillags.com>
11295
11296 * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
11297 Fix m4_* highlighting.
11298
11299 * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
11300 of commands when they have a "m4_" prefix.
11301
11302 2015-09-20 Paul Eggert <eggert@cs.ucla.edu>
11303
11304 '.' -> `.' in doc string
11305
11306 * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
11307 individual chars with grave quotes instead of straight quotes, as
11308 this works better when they are translated to curved quotes.
11309
11310 2015-09-20 Michael Albinus <michael.albinus@gmx.de>
11311
11312 Improve file notifications, especially for Tramp
11313
11314 * doc/lispref/files.texi (Magic File Names):
11315 Mention `file-notify-valid-p'.
11316
11317 * doc/lispref/os.texi (File Notifications):
11318 Describe `file-notify-valid-p'.
11319
11320 * etc/NEWS: Add `file-notify-valid-p'.
11321
11322 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
11323 Improve implementation.
11324 (tramp-gvfs-monitor-file-process-filter): Rename from
11325 `tramp-gvfs-file-gvfs-monitor-file-process-filter'. Delete
11326 process if appropriate.
11327
11328 * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
11329 Improve implementation.
11330 (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
11331 `tramp-sh-file-gvfs-monitor-dir-process-filter'. Delete process
11332 if appropriate.
11333 (tramp-sh-inotifywait-process-filter): Rename from
11334 `tramp-sh-file-inotifywait-process-filter'. Delete process if
11335 appropriate.
11336
11337 * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
11338 Use `delete-process'.
11339 (tramp-handle-file-notify-valid-p): Check also, that file or
11340 directory to be watched still exists.
11341
11342 * test/automated/file-notify-tests.el (file-notify--test-timeout):
11343 New defun. Use it at all places a timeout is needed.
11344 (file-notify--test-cleanup): Delete directories recursively.
11345 Cleanup also Tramp connections.
11346 (file-notify-test02-events): Add tests for `attribute-change'.
11347 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
11348 Add tests for `file-notify-rm-watch'.
11349
11350 2015-09-20 Paul Eggert <eggert@cs.ucla.edu>
11351
11352 Use %s to format strings instead of splicing them
11353
11354 If FOO might contain quotes that are part of a file or variable
11355 name, the quotes should not be translated when showing FOO’s name
11356 in a diagnostic. So, for example, (message (concat (FOO ": bar")))
11357 is not quite right, as it would translate FOO’s quotes.
11358 Change it to (message "%s: bar" FOO) instead.
11359 * lisp/allout.el (allout-process-exposed):
11360 * lisp/calc/calc-ext.el (calc-do-prefix-help):
11361 * lisp/calc/calc-store.el (calc-store-into):
11362 * lisp/calendar/todo-mode.el (todo-category-completions):
11363 * lisp/cedet/semantic/complete.el (semantic-completion-message):
11364 * lisp/org/ob-latex.el (convert-pdf):
11365 * lisp/org/org-crypt.el (org-crypt-check-auto-save):
11366 * lisp/org/ox-latex.el (org-latex-compile):
11367 * lisp/org/ox-man.el (org-man-compile):
11368 * lisp/org/ox-odt.el (org-odt--export-wrap):
11369 * lisp/org/ox-texinfo.el (org-texinfo-compile):
11370 * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
11371 * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
11372 (verilog-signals-combine-bus, verilog-read-defines)
11373 (verilog-getopt-file, verilog-expand-dirnames)
11374 (verilog-modi-lookup, verilog-modi-modport-lookup-one):
11375 * lisp/term/ns-win.el (ns-spi-service-call):
11376 Use %s to avoid translating quotes of file names etc. in diagnostics.
11377
11378 2015-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
11379
11380 * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
11381 (js-mode): Don't set syntax-begin-function.
11382
11383 2015-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
11384
11385 * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
11386 syntax-begin-function is a symbol.
11387
11388 2015-09-20 Eli Zaretskii <eliz@gnu.org>
11389
11390 Improve documentation of 'run-at-time'
11391 * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
11392 In particular, don't refer to 'diary-entry-time', because it is
11393 unavailable until diary-lib is loaded. Also, refer to
11394 'timer-duration-words', not 'timer-duration', as the latter's doc
11395 string says nothing about the accepted strings.
11396
11397 2015-09-19 Jay Belanger <jay.p.belanger@gmail.com>
11398
11399 * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
11400
11401 2015-09-19 Ken Manheimer <ken.manheimer@gmail.com>
11402
11403 Repair pdbtrack remote file tracking
11404 * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
11405 Rectify pdbtrack so it follows transitions from one remote source
11406 file to the next.
11407
11408 2015-09-19 Artur Malabarba <bruce.connor.am@gmail.com>
11409
11410 * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
11411
11412 2015-09-19 Eli Zaretskii <eliz@gnu.org>
11413
11414 Adapt vc-src to the old-new vc-checkin API
11415 * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
11416 additional optional parameter.
11417
11418 2015-09-19 Simen Heggestøyl <simenheg@gmail.com>
11419
11420 Add overflow module to CSS property list
11421 * lisp/textmodes/css-mode.el (css-property-ids): Add properties
11422 from CSS Overflow Module Level 3.
11423
11424 2015-09-19 Eli Zaretskii <eliz@gnu.org>
11425
11426 Fix documentation of "C-u C-x v v"
11427 * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
11428 documentation of "C-u C-x v v" match what the code does.
11429
11430 Resurrect the ability to specify a revision in vc-next-action
11431 * lisp/vc/vc-bzr.el (vc-bzr-checkin):
11432 * lisp/vc/vc-dav.el (vc-dav-checkin):
11433 * lisp/vc/vc-git.el (vc-git-checkin):
11434 * lisp/vc/vc-hg.el (vc-hg-checkin):
11435 * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
11436 an additional optional argument, the revision to checkin.
11437 * lisp/vc/vc-sccs.el (vc-sccs-checkin):
11438 * lisp/vc/vc-cvs.el (vc-cvs-checkin):
11439 * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
11440 a revision to checkin.
11441 * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
11442 revision when checking in files.
11443 See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
11444 for the details.
11445
11446 2015-09-18 Wilson Snyder <wsnyder@wsnyder.org>
11447
11448 * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
11449 (verilog-decls-princ, verilog-modport-princ)
11450 (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
11451
11452 2015-09-17 Jay Belanger <jay.p.belanger@gmail.com>
11453
11454 Fix the routine for help on Calc's prefixes
11455 * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
11456 (calc-do-prefix-help): Use `read-char' to determine the next Calc
11457 command.
11458
11459 2015-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
11460
11461 * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
11462 (font-lock-fontify-block): Don't let-bind it.
11463 (font-lock-compile-keywords): Don't use it.
11464 (font-lock-set-defaults): Don't set it. Allow the variable alist to
11465 start one slot earlier, instead.
11466 * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
11467 Don't declare.
11468 (syntax-ppss): Don't use it either.
11469 * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
11470 from docstring.
11471 * doc/emacs/display.texi (Font Lock): Don't mention
11472 font-lock-beginning-of-syntax-function.
11473 * doc/lispref/modes.texi (Font Lock Basics): Update description of
11474 font-lock-defaults.
11475 (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
11476 * lisp/loadhist.el (unload-feature-special-hooks):
11477 Remove font-lock-beginning-of-syntax-function.
11478 * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
11479 * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
11480 font-lock-beginning-of-syntax-function.
11481
11482 2015-09-17 Paul Eggert <eggert@cs.ucla.edu>
11483
11484 Backslash cleanup in Elisp source files
11485 This patch should not change behavior. It typically omits backslashes
11486 where they are redundant (e.g., in the string literal "^\$").
11487 In a few places, insert backslashes where they make regular
11488 expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
11489 "^\\*", which has the same effect as a regular expression.
11490 Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
11491 and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
11492 RCS IDs, as that makes it clearer that the backslash is intended.
11493
11494 Some more minor backslash fixes
11495 * test/automated/compile-tests.el (compile-tests--test-regexps-data):
11496 * test/automated/info-xref.el (info-xref-test-write-file):
11497 Double backslashes in strings.
11498
11499 Fix several backslash typos in Elisp strings
11500 * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
11501 (todo-find-filtered-items-file, todo-reset-nondiary-marker)
11502 (todo-reset-done-string, todo-reset-comment-string)
11503 (todo-reset-highlight-item):
11504 * lisp/erc/erc-networks.el (erc-networks-alist):
11505 * lisp/gnus/gnus-art.el (gnus-button-handle-library):
11506 * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
11507 * lisp/gnus/nntp.el (nntp-via-shell-prompt)
11508 (nntp-telnet-shell-prompt):
11509 * lisp/gnus/spam-report.el (spam-report-gmane-regex):
11510 * lisp/image-dired.el (image-dired-rotate-original):
11511 (image-dired-get-exif-file-name):
11512 * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
11513 * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
11514 * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
11515 * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
11516 * lisp/net/shr-color.el (shr-color->hexadecimal):
11517 * lisp/org/org-bibtex.el (org-bibtex-fields):
11518 * lisp/org/org-docview.el (org-docview-export):
11519 * lisp/org/org-entities.el (org-entities):
11520 * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
11521 * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
11522 * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
11523 (ebnf-style-database):
11524 * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
11525 * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
11526 * lisp/progmodes/sql.el (sql-product-alist):
11527 * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
11528 (verilog-error-font-lock-keywords)
11529 (verilog-assignment-operator-re):
11530 * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
11531 * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
11532 * lisp/vc/add-log.el (change-log-version-number-regexp-list):
11533 Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
11534 For example, to get the regular expression ‘\.’ use the string
11535 literal "\\.", not "\." (which is equivalent to ".").
11536 * lisp/emulation/viper-util.el (viper-glob-unix-files):
11537 Remove stray ‘\j’ from string.
11538 * lisp/gnus/nntp.el (nntp-via-shell-prompt)
11539 (nntp-telnet-shell-prompt):
11540 Treat > like $ when matching a shell prompt.
11541 * lisp/progmodes/make-mode.el (makefile-browse):
11542 Properly quote a diagnostic.
11543
11544 Fix minor quoting problems in diagnostics
11545 * lisp/tutorial.el (tutorial--describe-nonstandard-key):
11546 * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
11547 Follow text-quoting-style in diagnostic, and quote a file name.
11548
11549 2015-09-17 Eli Zaretskii <eliz@gnu.org>
11550
11551 * doc/lispref/frames.texi (Cursor Parameters):
11552 Document 'x-stretch-cursor'.
11553
11554 2015-09-16 Paul Eggert <eggert@cs.ucla.edu>
11555
11556 Omit unnecessary \ before paren in C docstrings
11557 Although \( is needed in docstrings in Elisp code, it is not needed in
11558 docstrings in C code, since C function definitiions do not start with
11559 a parenthesis. The backslashes made the docstrings a bit harder to
11560 read and to format in columns. Also, some C docstrings had ( in
11561 column 1 and this did not appear to be causing any problems. So,
11562 simplify C docstrings by replacing \( with ( and \) with ).
11563
11564 A few more minor quoting fixes in a script and a text file
11565
11566 Minor quoting fixes in scripts and doc
11567 Prefer straight quotes in random script files, as they are not
11568 converted. Prefer grave quotes in a couple of places in the manual
11569 that were missed earlier, as these quotes are converted.
11570
11571 Minor backslash fixes in manuals and scripts
11572 * Makefile.in (install-arch-indep):
11573 * admin/charsets/compact.awk:
11574 * admin/charsets/gb180302.awk (gb_to_index):
11575 * admin/charsets/gb180304.awk (gb_to_index):
11576 Avoid undefined behavior in Awk regular expression backslashes.
11577 * doc/misc/efaq.texi (Matching parentheses):
11578 Omit unnecessary backslashes.
11579 * doc/misc/gnus-faq.texi (FAQ 5-8):
11580 Avoid undefined behavior in suggested sed backslash usage.
11581
11582 Add -Wswitch to --enable-gcc-warnings
11583 Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
11584 * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
11585 * lib-src/etags.c (main, consider_token, C_entries):
11586 * src/coding.c (encode_invocation_designation):
11587 * src/data.c (Ftype_of):
11588 * src/eval.c (Fdefvaralias, default_toplevel_binding)
11589 (Fbacktrace__locals, mark_specpdl):
11590 * src/lisp.h (record_xmalloc):
11591 * src/syntax.c (scan_lists, scan_sexps_forward):
11592 * src/window.c (window_relative_x_coord):
11593 * src/xdisp.c (push_it, pop_it):
11594 * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
11595 Error out or do nothing (as appropriate) if a switch statement
11596 with an enum value does not cover all of the enum.
11597 * src/dispextern.h (struct iterator_stack_entry.u.comp):
11598 Remove unused member discovered by using -Wswitch.
11599 * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
11600 * src/vm-limit.c (check_memory_limits):
11601 Simplify warning-diagnostic computation by using a table.
11602
11603 etags ‘fatal’ function is now printf-like
11604 * lib-src/etags.c (fatal): Now printf-like. All callers changed.
11605 Also, now static; not clear why it needed to be extern.
11606 (verror): New function, with most of the old contents of ‘error’.
11607 (fatal, error): Use it.
11608
11609 2015-09-16 Eli Zaretskii <eliz@gnu.org>
11610
11611 More adaptations in file-notify-tests.el
11612 * test/automated/file-notify-tests.el
11613 (file-notify-test05-dir-validity): Skip for w32notify in
11614 batch-mode. (Bug#21432)
11615
11616 2015-09-16 Michael Albinus <michael.albinus@gmx.de>
11617
11618 Adapt test in file-notify-tests.el
11619 * test/automated/file-notify-tests.el
11620 (file-notify-test04-file-validity): Skip for w32notify in
11621 batch-mode. Add test lost last commit.
11622
11623 2015-09-16 Dima Kogan <dima@secretsauce.net>
11624
11625 winner no longer holds on to dead frames
11626 * lisp/winner.el (winner-change-fun): Cull dead frames.
11627 This prevents a potentially massive memory leak. See:
11628 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
11629
11630 2015-09-16 Michael Albinus <michael.albinus@gmx.de>
11631
11632 Use common report_file_notify_error function
11633 * src/fileio.c (report_file_notify_error): New function.
11634 * src/inotify.c (report_inotify_error): Remove function.
11635 (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
11636 (Finotify_rm_watch): Use report_file_notify_error.
11637 * src/lisp.h (report_file_notify_error): Declare external function.
11638 * src/w32notify.c (report_w32notify_error): Remove function.
11639 (Fw32notify_add_watch, Fw32notify_rm_watch):
11640 Use report_file_notify_error.
11641
11642 2015-09-16 Jay Belanger <jay.p.belanger@gmail.com>
11643
11644 Fix documentation.
11645 * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
11646 the documentation of the root mean square.
11647
11648 2015-09-16 Martin Rudalics <rudalics@gmx.at>
11649
11650 Remove tool_bar_redisplayed_once and associated code.
11651 * src/frame.h (tool_bar_redisplayed_once): Remove slot.
11652 * src/frame.c (make_frame, x_set_font): Remove initialization of
11653 f->tool_bar_redisplayed_once.
11654 * src/w32fns.c (x_change_tool_bar_height):
11655 * src/xfns.c (x_change_tool_bar_height): Don't check for
11656 f->tool_bar_redisplayed_once.
11657 * src/xdisp.c (redisplay_internal): Remove handling of
11658 f->tool_bar_redisplayed_once.
11659
11660 2015-09-16 Eli Zaretskii <eliz@gnu.org>
11661
11662 Restore some of the quoting in the manuals
11663 * doc/lispref/windows.texi (Coordinates and Windows)
11664 (Coordinates and Windows):
11665 * doc/lispref/variables.texi (Lexical Binding)
11666 (File Local Variables):
11667 * doc/lispref/text.texi (Format Properties):
11668 * doc/lispref/symbols.texi (Symbol Components):
11669 * doc/lispref/strings.texi (Creating Strings):
11670 * doc/lispref/sequences.texi (Sequence Functions):
11671 * doc/lispref/searching.texi (Regexp Special, Regexp Search)
11672 (Search and Replace):
11673 * doc/lispref/processes.texi (Bindat Spec):
11674 * doc/lispref/os.texi (Idle Timers):
11675 * doc/lispref/objects.texi (Basic Char Syntax):
11676 * doc/lispref/numbers.texi (Float Basics, Random Numbers):
11677 * doc/lispref/nonascii.texi (Character Properties):
11678 * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
11679 (Mode Line Variables):
11680 * doc/lispref/minibuf.texi (Text from Minibuffer):
11681 * doc/lispref/loading.texi (Autoload):
11682 * doc/lispref/keymaps.texi (Controlling Active Maps):
11683 * doc/lispref/frames.texi (Frame Layout, Size and Position)
11684 (Size Parameters, Implied Frame Resizing):
11685 * doc/lispref/files.texi (Changing Files, Magic File Names):
11686 * doc/lispref/eval.texi (Self-Evaluating Forms):
11687 * doc/lispref/display.texi (Progress, Abstract Display)
11688 (Abstract Display Example, Bidirectional Display):
11689 * doc/lispref/commands.texi (Event Mod):
11690 * doc/emacs/windows.texi (Displaying Buffers):
11691 * doc/emacs/trouble.texi (Bug Criteria, Checklist):
11692 * doc/emacs/text.texi (Enriched Text):
11693 * doc/emacs/programs.texi (MixedCase Words):
11694 * doc/emacs/picture-xtra.texi (Insert in Picture)
11695 (Tabs in Picture):
11696 * doc/emacs/misc.texi (Emacs Server, Printing):
11697 * doc/emacs/mini.texi (Minibuffer History):
11698 * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
11699 (Pulling / Pushing):
11700 * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
11701 * doc/emacs/help.texi (Help, Help Echo):
11702 * doc/emacs/glossary.texi (Glossary):
11703 * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
11704 (Frame Commands):
11705 * doc/emacs/files.texi (Reverting, Saving, Directories):
11706 * doc/emacs/entering.texi (Exiting):
11707 * doc/emacs/emacs.texi (Top):
11708 * doc/emacs/cmdargs.texi (Window Size X, Icons X):
11709 * doc/emacs/anti.texi (Antinews): Restore quoting of text where
11710 appropriate or replace quoting with @dfn.
11711 * doc/misc/ediff.texi (Window and Frame Configuration):
11712 * doc/lispref/processes.texi (Network Feature Testing):
11713 * doc/lispref/display.texi (Display Margins): Quote the phrase
11714 after "a.k.a." where appropriate.
11715
11716 2015-09-16 Tassilo Horn <tsdh@gnu.org>
11717
11718 Clarify reftex-extra-bindings docs
11719 * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
11720 * doc/misc/reftex.texi (Key Bindings): Document that the variable
11721 only has an effect at load-time.
11722
11723 2015-09-16 Daniel McClanahan <danieldmcclanahan@gmail.com> (tiny change)
11724
11725 * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
11726 search argument. (Bug#21492) (Bug#21493)
11727
11728 2015-09-16 Tassilo Horn <tsdh@gnu.org>
11729
11730 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
11731 Add pretty symbols for \qquad and \varrho.
11732
11733 2015-09-15 Jay Belanger <jay.p.belanger@gmail.com>
11734
11735 Add new functions for the root mean square of a (Calc) vector
11736 * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
11737 New functions.
11738 * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
11739 `calc-vector-rms', add autoloads for `calc-vector-rms' and
11740 `calcFunc-rms'.
11741 * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
11742 `calcFunc-rms'.
11743 * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
11744 `calc-vector-rms'.
11745 * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
11746 command.
11747
11748 2015-09-15 Stephen Leake <stephen_leake@stephe-leake.org>
11749
11750 Add monotone EDE generic project
11751 * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
11752 Add monotone generic project.
11753
11754 Revert premature commit
11755 * doc/lispref/files.texi: Revert premature commit of change to
11756 file-name-all-completions.
11757
11758 Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
11759 * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
11760 with cl-generic defaults.
11761 (elisp--xref-find-references): Add doc string.
11762 * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
11763 tests to find bug.
11764
11765 Fix bugs in eieio-oref-default related to class symbols
11766 * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
11767 (eieio-oref-default): Handle class properly.
11768
11769 2015-09-15 Paul Eggert <eggert@cs.ucla.edu>
11770
11771 Quote “fullboth” when defining it
11772 * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
11773 and rewrite the containing paragraph, which was awkward. (Bug#21472).
11774
11775 2015-09-15 Eli Zaretskii <eliz@gnu.org>
11776
11777 Minor doc fix in emacs/ack.texi
11778 * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
11779 first argument.
11780
11781 2015-09-15 Michael Albinus <michael.albinus@gmx.de>
11782
11783 Adapt tests in auto-revert-tests.el
11784 * test/automated/auto-revert-tests.el (auto-revert--timeout):
11785 Make it a defconst.
11786 (auto-revert--wait-for-revert): New defun.
11787 (auto-revert-test00-auto-revert-mode)
11788 (auto-revert-test01-auto-revert-tail-mode)
11789 (auto-revert-test02-auto-revert-mode-dired): Use it.
11790
11791 2015-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
11792
11793 * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
11794 Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
11795 (cl-lib-fdefs): Add defgeneric.
11796 (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
11797 (eieio-kw, cl-lib-kw, el-kw): Remove.
11798
11799 2015-09-15 Paul Eggert <eggert@cs.ucla.edu>
11800
11801 Quote less in manuals
11802 The manuals often used quotes ``...'' when it is better to use @dfn or
11803 @code or capitalized words or no quoting at all. For example, there is
11804 no need for the `` and '' in “if a variable has one effect for
11805 @code{nil} values and another effect for ``non-@code{nil}'' values”.
11806 Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
11807 unnecessary quoting like this, and to use @dfn etc. instead when called
11808 for (Bug#21472).
11809
11810 2015-09-15 Mark Oteiza <mvoteiza@udel.edu>
11811
11812 * lisp/custom.el (load-theme): Only compute hash when needed.
11813
11814 2015-09-15 Paul Eggert <eggert@cs.ucla.edu>
11815
11816 Pacify --enable-gcc-warnings
11817 * src/inotify.c (report_inotify_error): Declare it _Noreturn.
11818
11819 2015-09-15 Michael Albinus <michael.albinus@gmx.de>
11820
11821 Improve error reports in inotify.c
11822 * src/inotify.c (report_inotify_error): New function. Clone of
11823 report_w32notify_error.
11824 (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
11825 (Finotify_rm_watch): Use it.
11826
11827 2015-09-15 Eli Zaretskii <eliz@gnu.org>
11828
11829 Fix the file-notify tests for watch validation on w32
11830 * test/automated/file-notify-tests.el
11831 (file-notify-test04-file-validity): Move the directory deletion
11832 out of the file-notify--test-with-events macro.
11833 (file-notify-test04-file-validity)
11834 (file-notify-test05-dir-validity): Enlarge the timeout of
11835 read-event to 0.5, as 0.1 is borderline on w32. (Bug#21432)
11836
11837 2015-09-15 Tassilo Horn <tsdh@gnu.org>
11838
11839 Use OPEN BOX instead of space for \quad.
11840 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
11841 character for \quad instead of a space.
11842
11843 2015-09-15 Eli Zaretskii <eliz@gnu.org>
11844
11845 Add missing *.pbm images
11846 * etc/images/connect.pbm: New file.
11847 * etc/images/custom/down-pushed.pbm: New file.
11848 * etc/images/custom/down.pbm: New file.
11849 * etc/images/custom/right-pushed.pbm: New file.
11850 * etc/images/custom/right.pbm: New file.
11851 * etc/images/describe.pbm: New file.
11852 * etc/images/disconnect.pbm: New file.
11853 * etc/images/ezimage/bits.pbm: New file.
11854 * etc/images/ezimage/bitsbang.pbm: New file.
11855 * etc/images/ezimage/box-minus.pbm: New file.
11856 * etc/images/ezimage/box-plus.pbm: New file.
11857 * etc/images/ezimage/box.pbm: New file.
11858 * etc/images/ezimage/checkmark.pbm: New file.
11859 * etc/images/ezimage/dir-minus.pbm: New file.
11860 * etc/images/ezimage/dir-plus.pbm: New file.
11861 * etc/images/ezimage/dir.pbm: New file.
11862 * etc/images/ezimage/doc-minus.pbm: New file.
11863 * etc/images/ezimage/doc-plus.pbm: New file.
11864 * etc/images/ezimage/doc.pbm: New file.
11865 * etc/images/ezimage/info.pbm: New file.
11866 * etc/images/ezimage/key.pbm: New file.
11867 * etc/images/ezimage/label.pbm: New file.
11868 * etc/images/ezimage/lock.pbm: New file.
11869 * etc/images/ezimage/mail.pbm: New file.
11870 * etc/images/ezimage/page-minus.pbm: New file.
11871 * etc/images/ezimage/page-plus.pbm: New file.
11872 * etc/images/ezimage/page.pbm: New file.
11873 * etc/images/ezimage/tag-gt.pbm: New file.
11874 * etc/images/ezimage/tag-minus.pbm: New file.
11875 * etc/images/ezimage/tag-plus.pbm: New file.
11876 * etc/images/ezimage/tag-type.pbm: New file.
11877 * etc/images/ezimage/tag-v.pbm: New file.
11878 * etc/images/ezimage/tag.pbm: New file.
11879 * etc/images/ezimage/unlock.pbm: New file.
11880 * etc/images/gnus/important.pbm: New file.
11881 * etc/images/gnus/mail-send.pbm: New file.
11882 * etc/images/gnus/receipt.pbm: New file.
11883 * etc/images/gnus/toggle-subscription.pbm: New file.
11884 * etc/images/gnus/unimportant.pbm: New file.
11885 * etc/images/gud/all.pbm: New file.
11886 * etc/images/gud/rcont.pbm: New file.
11887 * etc/images/gud/recstart.pbm: New file.
11888 * etc/images/gud/recstop.pbm: New file.
11889 * etc/images/gud/rfinish.pbm: New file.
11890 * etc/images/gud/rnext.pbm: New file.
11891 * etc/images/gud/rnexti.pbm: New file.
11892 * etc/images/gud/rstep.pbm: New file.
11893 * etc/images/gud/rstepi.pbm: New file.
11894 * etc/images/gud/thread.pbm: New file.
11895 * etc/images/lock-broken.pbm: New file.
11896 * etc/images/lock-ok.pbm: New file.
11897 * etc/images/lock.pbm: New file.
11898 * etc/images/mail/copy.pbm: New file.
11899 * etc/images/mail/forward.pbm: New file.
11900 * etc/images/mail/not-spam.pbm: New file.
11901 * etc/images/mail/outbox.pbm: New file.
11902 * etc/images/mail/preview.pbm: New file.
11903 * etc/images/mail/save-draft.pbm: New file.
11904 * etc/images/mh-logo.pbm: New file.
11905 * etc/images/mpc/add.pbm: New file.
11906 * etc/images/mpc/ffwd.pbm: New file.
11907 * etc/images/mpc/next.pbm: New file.
11908 * etc/images/mpc/pause.pbm: New file.
11909 * etc/images/mpc/play.pbm: New file.
11910 * etc/images/mpc/prev.pbm: New file.
11911 * etc/images/mpc/rewind.pbm: New file.
11912 * etc/images/mpc/stop.pbm: New file.
11913 * etc/images/redo.pbm: New file.
11914 * etc/images/smilies/braindamaged.pbm: New file.
11915 * etc/images/smilies/cry.pbm: New file.
11916 * etc/images/smilies/dead.pbm: New file.
11917 * etc/images/smilies/evil.pbm: New file.
11918 * etc/images/smilies/forced.pbm: New file.
11919 * etc/images/smilies/grin.pbm: New file.
11920 * etc/images/smilies/indifferent.pbm: New file.
11921 * etc/images/sort-ascending.pbm: New file.
11922 * etc/images/sort-column-ascending.pbm: New file.
11923 * etc/images/sort-criteria.pbm: New file.
11924 * etc/images/sort-descending.pbm: New file.
11925 * etc/images/sort-row-ascending.pbm: New file.
11926 * etc/images/unchecked.pbm: New file.
11927 * etc/images/zoom-in.pbm: New file.
11928 * etc/images/README: Update instructions for PBM files.
11929
11930 Add separator.pbm tool-bar image
11931 * etc/images/separator.pbm: New file. Having it avoids the side
11932 effect of changing the tool-bar height when the default font's size
11933 changes and XPM image support is not available, due to the SPC
11934 characters that are left in the Lisp string used to display the tool
11935 bar, because there are no images to display instead of those SPC
11936 characters.
11937
11938 Make show-paren-match face visible on mono-color displays
11939 * lisp/faces.el (show-paren-match): Use the underline face for
11940 mono-color displays. (Bug#21481)
11941
11942 2015-09-14 Paul Eggert <eggert@cs.ucla.edu>
11943
11944 Don’t double-encode non-ASCII mail clipboard
11945 * lisp/mail/mailclient.el (mailclient-send-it):
11946 Also fix the case when mailclient-place-body-on-clipboard-flag
11947 is non-nil. Problem reported by Eli Zaretskii (Bug#21471#37).
11948
11949 2015-09-14 Michael Albinus <michael.albinus@gmx.de>
11950
11951 Adapt file-notify-tests.el test cases
11952 * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
11953 * src/inotify.c (Finotify_valid_p): Adapt docstring.
11954 * test/automated/file-notify-tests.el
11955 (file-notify-test03-autorevert)
11956 (file-notify-test04-file-validity)
11957 (file-notify-test04-file-validity-remote)
11958 (file-notify-test05-dir-validity)
11959 (file-notify-test05-dir-validity-remote): Adapt docstring.
11960 (file-notify-test04-file-validity): Let events arrive before
11961 calling final `file-notify-valid-p'. Do not ignore errors.
11962 (file-notify-test05-dir-validity): Do not manipulate
11963 `temporary-file-directory', it isn't necessary. Let events arrive
11964 before calling final `file-notify-valid-p'. Do not ignore errors.
11965
11966 2015-09-14 Paul Eggert <eggert@cs.ucla.edu>
11967
11968 Don’t double-encode non-ASCII for mail client
11969 * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
11970 Use RFC 6068’s list of unreserved characters.
11971 (mailclient-send-it): When encoding the body as a URL,
11972 first decode it as per Content-Type: and Content-Transfer-Encoding:,
11973 as URLs must use percent-encoded UTF-8 (Bug#21471).
11974 * doc/misc/url.texi (mailto): Update RFC number.
11975
11976 2015-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
11977
11978 * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
11979
11980 2015-09-14 Alan Mackenzie <acm@muc.de>
11981
11982 Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
11983 (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
11984 `cadr/car'.
11985
11986 2015-09-14 Eli Zaretskii <eliz@gnu.org>
11987
11988 Clarify documentation of char-table extra slots
11989 * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
11990 slot numbers are zero-based. (Bug#21467)
11991
11992 2015-09-14 Alan Mackenzie <acm@muc.de>
11993
11994 Elisp mode: Make font-lock and imenu handle escaped characters in symbols
11995 Fixes bug#21449.
11996 * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
11997 (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
11998 (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
11999 (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
12000 Insert "\\|\\\\." into regexps which match symbols.
12001
12002 2015-09-14 Eli Zaretskii <eliz@gnu.org>
12003
12004 Improve the doc string of w32notify-valid-p
12005 * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
12006 that removing a watch makes its object invalid.
12007
12008 2015-09-14 Tassilo Horn <tsdh@gnu.org>
12009
12010 Fix tests for file-notify-valid-p
12011 * test/automated/file-notify-tests.el (file-notify--test-cleanup):
12012 Use delete-directory to delete file-notify--test-tmpfile if it is
12013 a directory. Likewise for file-notify--test-tmpfile1.
12014 (file-notify-test04-file-validity)
12015 (file-notify-test05-dir-validity): Delete the parent directory of
12016 the test. Ignore errors when cleaning up after the test.
12017
12018 2015-09-14 Eli Zaretskii <eliz@gnu.org>
12019
12020 Report file-notify-error in w32notify.c
12021 * src/w32notify.c (report_w32notify_error): New function.
12022 (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
12023 errors, instead of calling report_file_error. (Bug#21432)
12024
12025 Implement w32notify-valid-p
12026 * src/w32notify.c (Fw32notify_valid_p): New function. (Bug#21432)
12027 * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
12028 'identity'.
12029
12030 2015-09-14 Tassilo Horn <tsdh@gnu.org>
12031
12032 Test file-notify-valid-p
12033 * test/automated/file-notify-tests.el
12034 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
12035 New tests.
12036
12037 2015-09-13 Eli Zaretskii <eliz@gnu.org>
12038
12039 Fix markup in ELisp manual
12040 * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
12041 of the 'alpha' parameter value. (Bug#21470)
12042
12043 2015-09-13 Michael Albinus <michael.albinus@gmx.de>
12044
12045 Introduce `file-notify-valid-p'
12046 * lisp/filenotify.el (file-notify-valid-p): New defun.
12047 (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
12048 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
12049 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
12050 * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
12051 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
12052 <file-notify-valid-p>: Add handler.
12053 * lisp/net/tramp.el (tramp-file-name-for-operation):
12054 Add `file-notify-valid-p'.
12055 (tramp-handle-file-notify-valid-p): New defun.
12056 * src/inotify.c (Finotify_valid_p): New defun.
12057 (syms_of_inotify): Declare Sinotify_valid_p.
12058
12059 2015-09-13 Paul Eggert <eggert@cs.ucla.edu>
12060
12061 Port Unicode char detection to FreeBSD+svgalib
12062 Problem reported by Ashish SHUKLA in:
12063 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
12064 * configure.ac: Check for struct unipair.unicode instead of for
12065 <linux/kd.h>, since that’s more specific to what the code
12066 actually needs.
12067 * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
12068
12069 * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
12070
12071 2015-09-13 Eli Zaretskii <eliz@gnu.org>
12072
12073 Fix vertical cursor motion across overlay strings with newlines
12074 * src/indent.c (Fvertical_motion): Don't leave point in the middle
12075 of an overlay string with newlines, as that will position the
12076 cursor after the string at whatever column is there. (Bug#21468)
12077
12078 2015-09-12 Michael Albinus <michael.albinus@gmx.de>
12079
12080 Fix tests in file-notify-tests.el
12081 * test/automated/file-notify-tests.el: Remove Tramp declarations.
12082 (file-notify-test00-availability): Print remote command w/o Tramp
12083 internal functions.
12084 (file-notify-test02-events, file-notify-test02-events-remote):
12085 Adapt docstring.
12086 (file-notify-test03-autorevert): Use `format-message' when
12087 inspecting *Messages* buffer.
12088
12089 2015-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
12090
12091 Bind inhibit-modification-hooks rather than a/b-c-f
12092 * lisp/wid-edit.el (widget-editable-list-insert-before)
12093 (widget-editable-list-delete-at):
12094 * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
12095 (cperl-font-lock-unfontify-region-function):
12096 * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
12097 * lisp/obsolete/longlines.el (longlines-mode):
12098 * lisp/obsolete/fast-lock.el (save-buffer-state):
12099 * lisp/mouse.el (mouse-save-then-kill-delete-region):
12100 * lisp/gnus/message.el (message-hide-headers):
12101 * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
12102 * lisp/ibuffer.el (ibuffer-update-title-and-summary)
12103 (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
12104 than after/before-change-functions to nil.
12105
12106 2015-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
12107
12108 (jit-lock-deferred-fontify): Pay attention to skipped redisplays
12109 * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
12110 the buffers, even if the forced redisplay is interrupted.
12111
12112 * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
12113
12114 Merge syntax-propertize--done and parse-sexp-propertize-done
12115 * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
12116 (syntax-propertize): Set syntax-propertize--done even if
12117 syntax-propertize-function is nil. Avoid recursive invocations.
12118 (syntax-propertize-chunks): New var.
12119 (internal--syntax-propertize): Use it. Rename from syntax--jit-propertize.
12120 Simplify.
12121 (parse-sexp-propertize-function): Don't set any more.
12122 * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
12123 (parse_sexp_propertize): Don't assume charpos is not yet propertized.
12124 Call Qinternal__syntax_propertize instead of
12125 Vparse_sexp_propertize_function. Truncate e_property if needed.
12126 (update_syntax_table_forward): Streamline.
12127 (syms_of_syntax): Define Qinternal__syntax_propertize.
12128 (syntax_propertize__done): Rename from parse_sexp_propertize_done.
12129
12130 2015-09-11 Paul Eggert <eggert@cs.ucla.edu>
12131
12132 Prefer straight quoting in some text files
12133 Mostly this just changes ` to ' in static text. Some exceptions:
12134 * INSTALL.REPO: Use curved quotes, as the diagnostic in question
12135 typically does that now.
12136 * admin/quick-install-emacs (TRY, top level):
12137 Use straight quoting in diagnostics.
12138 * src/README: Fix working-directory confusion.
12139
12140 * CONTRIBUTE: Move send-email here from git-workflow.
12141
12142 2015-09-11 Michael Albinus <michael.albinus@gmx.de>
12143
12144 Improve file notifications in Tramp
12145 * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
12146 Set proper events to watch for.
12147 (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
12148 watched events.
12149
12150 2015-09-11 Eli Zaretskii <eliz@gnu.org>
12151
12152 Fix NS build with --enable-checking='glyphs'
12153 * src/nsfns.m (unwind_create_frame): Make the preprocessor
12154 conditionals for referencing 'dpyinfo' consistent throughout the
12155 function. (Bug#21426)
12156
12157 2015-09-10 Nicolas Petton <nicolas@petton.fr>
12158
12159 Add seq-find
12160 This function is similar to `seq-some' but returns the found element.
12161 In the cases where nil can be the found element, a sentinel optional
12162 argument can be provided to avoid ambiguities.
12163 * lisp/emacs-lisp/seq.el (seq-find): New function.
12164 * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
12165 * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
12166 seq-find.
12167
12168 2015-09-10 Tassilo Horn <tsdh@gnu.org>
12169
12170 Document file-notify--test-with-events.
12171 * test/automated/file-notify-tests.el (file-notify--test-with-events):
12172 Add docstring.
12173
12174 2015-09-10 Michael Albinus <michael.albinus@gmx.de>
12175
12176 Report used native library in file-notify-tests.el
12177 * test/automated/file-notify-tests.el
12178 (tramp-get-remote-gvfs-monitor-dir)
12179 (tramp-get-remote-inotifywait): Declare them.
12180 (file-notify-test00-availability): Print used native library.
12181
12182 2015-09-10 Mark Oteiza <mvoteiza@udel.edu>
12183
12184 * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
12185 (mpc-file-local-copy): Check for absolute path. Check more config
12186 locations.
12187
12188 2015-09-10 Eli Zaretskii <eliz@gnu.org>
12189
12190 Improve documentation of categories
12191 * doc/lispref/syntax.texi (Categories): Clarify the example of
12192 using define-category and modify-category-entry. (Bug#21448)
12193
12194 2015-09-10 Paul Eggert <eggert@cs.ucla.edu>
12195
12196 Revert some stray curved quotes I missed earlier
12197 Problem reported by David Kastrup in:
12198 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
12199 * lisp/international/mule-cmds.el (leim-list-header):
12200 Use format-message with an ASCII-only format.
12201
12202 Prefer NUMBERP to spelling it out
12203 * src/editfns.c (styled_format):
12204 * src/frame.h (NUMVAL):
12205 * src/image.c (parse_image_spec):
12206 * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
12207 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
12208 * src/process.c (Fsignal_process):
12209 * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
12210 * src/xfaces.c (check_lface_attrs):
12211 * src/xselect.c (x_fill_property_data, x_send_client_event):
12212 Use NUMBERP rather than INTEGERP || FLOATP.
12213
12214 2015-09-10 Tassilo Horn <tsdh@gnu.org>
12215
12216 Improve file-notify-tests
12217 * test/automated/file-notify-tests.el: Use lexical-binding.
12218 (file-notify--test-cleanup): New function.
12219 (file-notify-test00-availability, file-notify-test01-add-watch)
12220 (file-notify-test02-events, file-notify-test03-autorevert): Use it.
12221 (file-notify--test-with-events): New macro.
12222 (file-notify-test02-events): Use it.
12223
12224 2015-09-10 Paul Eggert <eggert@cs.ucla.edu>
12225
12226 Add patch-sending instructions to git-workflow
12227 From a suggestion by Mitchel Humpherys in:
12228 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
12229 * admin/notes/git-workflow (Sending patches): New section.
12230
12231 Port to GIFLIB 5.0.6 and later
12232 Problem reported by Mitchel Humpherys in:
12233 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
12234 * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
12235 (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
12236 (gif_load) [HAVE_GIF]: Use it.
12237
12238 2015-09-10 Glenn Morris <rgm@gnu.org>
12239
12240 * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
12241
12242 2015-09-09 Glenn Morris <rgm@gnu.org>
12243
12244 * test/automated/file-notify-tests.el (file-notify-test02-events):
12245 Fix recent change.
12246
12247 2015-09-09 Paul Eggert <eggert@cs.ucla.edu>
12248
12249 Refix movemail GCC pacification
12250 Problem reported by Ken Brown in:
12251 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
12252 * lib-src/movemail.c (main): Fix previous change.
12253
12254 2015-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
12255
12256 * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
12257 Mark unused vars with underscore.
12258
12259 * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
12260 (parse_sexp_propertize): ...from here.
12261
12262 * lisp/filenotify.el: Use lexical-binding
12263 (file-notify-add-watch): Avoid add-to-list.
12264
12265 2015-09-09 Tassilo Horn <tsdh@gnu.org>
12266
12267 Start checking event types in file-notify tests
12268 * test/automated/file-notify-tests.el (file-notify--test-events):
12269 New variable.
12270 (file-notify--test-event-handler): Append received event to
12271 file-notify--test-events for later analysis.
12272 (file-notify-test02-events): Assert that the expected notifications have
12273 arrived in the expected order.
12274
12275 2015-09-09 Paul Eggert <eggert@cs.ucla.edu>
12276
12277 Merge from gnulib and texinfo
12278 This incorporates:
12279 2015-08-03 Improve port of stdalign to C++11
12280 * lib/stdalign.in.h: Copy from gnulib.
12281 * doc/misc/texinfo.tex: Copy from texinfo.
12282
12283 2015-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
12284
12285 Make syntax.c call syntax-propertize on demand
12286 * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
12287 (parse-sexp-propertize-function): Use it.
12288 (syntax-propertize): Disable parse-sexp-propertize-function.
12289 * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
12290 New functions.
12291 (syms_of_syntax): New vars `parse-sexp-propertize-done' and
12292 `parse-sexp-propertize-function'.
12293 * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
12294 (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
12295 (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
12296 * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
12297 Don't assume `point' is set.
12298
12299 2015-09-09 Eli Zaretskii <eliz@gnu.org>
12300
12301 Fix indentation of an @example in ELisp manual
12302 * doc/lispref/syntax.texi (Categories): Untabify the example.
12303 (Bug#21448)
12304
12305 2015-09-09 Paul Eggert <eggert@cs.ucla.edu>
12306
12307 Define internal-char-font even if --without-x
12308 The function is used now even in non-graphical environments.
12309 Problem reported by Glenn Morris in:
12310 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
12311 * src/font.c (Finternal_char_font): Move here ...
12312 * src/fontset.c (Finternal_char_font): ... from here.
12313
12314 2015-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
12315
12316 * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
12317 Remove warning.
12318
12319 2015-09-09 Eli Zaretskii <eliz@gnu.org>
12320
12321 Fix display of complex local data types in GDB-MI
12322 * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
12323 variable has no value, display "<complex data type>" as a
12324 placeholder, instead of a confusing "nil". (Bug#21438)
12325
12326 2015-09-09 Oleh Krehel <ohwoeowho@gmail.com>
12327
12328 Remove redundant redefinition of seq-drop-while from seq.el
12329 * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
12330
12331 2015-09-09 Phil Sainty <psainty@orcon.net.nz>
12332
12333 * lisp/emacs-lisp/package.el (package--ensure-init-file):
12334 More robust check for `package-initialize' calls in init file.
12335 This function accepts an optional argument, but calls passing
12336 an argument would not have been detected.
12337
12338 2015-09-09 Paul Eggert <eggert@cs.ucla.edu>
12339
12340 Port movemail to RHEL 6 with --enable-gcc-warnings
12341 * lib-src/movemail.c (main): Declare local only if needed.
12342
12343 Port recent Linux console changes to RHEL 6
12344 * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
12345
12346 Improvements for curved quotes on Linux consule
12347 This should help Emacs work better out-of-the-box on Linux consoles,
12348 which have only limited support for displaying Unicode characters.
12349 Also, undo the recent change that caused text-quoting-style to
12350 affect quote display on terminals, so that the two features are
12351 independent. See Alan Mackenzie in:
12352 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
12353 Finally, add a style parameter to startup--setup-quote-display,
12354 so that this function can also be invoked after startup, with
12355 different styles depending on user preference at the time.
12356 * configure.ac: Check for linux/kd.h header.
12357 * doc/emacs/display.texi (Text Display): Document quote display.
12358 * doc/lispref/display.texi (Active Display Table):
12359 * etc/NEWS:
12360 * lisp/startup.el (startup--setup-quote-display, command-line):
12361 text-quoting-style no longer affects quote display.
12362 * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
12363 * lisp/international/mule-util.el (char-displayable-p):
12364 * lisp/startup.el (startup--setup-quote-display):
12365 On a text terminal supporting glyph codes, use the reported
12366 glyph codes instead of the terminal coding system, as this
12367 is more accurate on the Linux console.
12368 * lisp/startup.el (startup--setup-quote-display):
12369 New optional arg STYLE.
12370 * src/fontset.c (Finternal_char_font):
12371 Report glyph codes for a text terminal, if they are available.
12372 Currently this is supported only for the Linux console.
12373 * src/termhooks.h (struct terminal): New member glyph-code-table.
12374 * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
12375 (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
12376 (terminal_glyph_code): New function.
12377
12378 2015-09-08 Juri Linkov <juri@linkov.net>
12379
12380 * lisp/info.el (Info-fontify-node): Don't stop at the non-title
12381 underline. (Bug#21433)
12382
12383 2015-09-08 Stefan Monnier <monnier@iro.umontreal.ca>
12384
12385 * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
12386
12387 2015-09-08 Tassilo Horn <tsdh@gnu.org>
12388
12389 Fix double-reporting of rename events with inotify
12390 * lisp/filenotify.el (file-notify-callback): Fix double-reporting
12391 of rename events with inotify (bug#21435).
12392
12393 2015-09-08 Vasilij Schneidermann <v.schneidermann@gmail.com> (tiny change)
12394
12395 * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
12396 (tetris-mode-map): Use it.
12397
12398 2015-09-08 Stefan Monnier <monnier@iro.umontreal.ca>
12399
12400 Remove a few simple cases of global redisplay
12401 * src/dispnew.c (redraw_frame): Don't redisplay all frames.
12402 * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
12403 rather than returning a "resized_p" boolean.
12404 (redisplay_internal): Adjust call accordingly.
12405 * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
12406 (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
12407 tracking of this undesirable situation.
12408
12409 * src/process.c (status_notify): Avoid global redisplay (bug#11822)
12410 * src/process.c (status_notify): Only set the update_mode_line on the
12411 relevant buffers rather than setting it globally.
12412
12413 2015-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
12414
12415 * lisp/electric.el (electric-quote-post-self-insert-function):
12416 Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
12417 (electric-quote-mode): Activate everywhere in message-mode.
12418
12419 2015-09-07 Paul Eggert <eggert@cs.ucla.edu>
12420
12421 Go back to grave quoting in source-code docstrings etc.
12422 This reverts almost all my recent changes to use curved quotes
12423 in docstrings and/or strings used for error diagnostics.
12424 There are a few exceptions, e.g., Bahá’í proper names.
12425 * admin/unidata/unidata-gen.el (unidata-gen-table):
12426 * lisp/abbrev.el (expand-region-abbrevs):
12427 * lisp/align.el (align-region):
12428 * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
12429 (outlineify-sticky):
12430 * lisp/apropos.el (apropos-library):
12431 * lisp/bookmark.el (bookmark-default-annotation-text):
12432 * lisp/button.el (button-category-symbol, button-put)
12433 (make-text-button):
12434 * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
12435 * lisp/calc/calc-embed.el (calc-do-embedded):
12436 * lisp/calc/calc-ext.el (calc-user-function-list):
12437 * lisp/calc/calc-graph.el (calc-graph-show-dumb):
12438 * lisp/calc/calc-help.el (calc-describe-key)
12439 (calc-describe-thing, calc-full-help):
12440 * lisp/calc/calc-lang.el (calc-c-language)
12441 (math-parse-fortran-vector-end, math-parse-tex-sum)
12442 (math-parse-eqn-matrix, math-parse-eqn-prime)
12443 (calc-yacas-language, calc-maxima-language, calc-giac-language)
12444 (math-read-giac-subscr, math-read-math-subscr)
12445 (math-read-big-rec, math-read-big-balance):
12446 * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
12447 * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
12448 (calc-auto-recompute):
12449 * lisp/calc/calc-prog.el (calc-fix-token-name)
12450 (calc-read-parse-table-part, calc-user-define-invocation)
12451 (math-do-arg-check):
12452 * lisp/calc/calc-store.el (calc-edit-variable):
12453 * lisp/calc/calc-units.el (math-build-units-table-buffer):
12454 * lisp/calc/calc-vec.el (math-read-brackets):
12455 * lisp/calc/calc-yank.el (calc-edit-mode):
12456 * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
12457 * lisp/calendar/appt.el (appt-display-message):
12458 * lisp/calendar/diary-lib.el (diary-check-diary-file)
12459 (diary-mail-entries, diary-from-outlook):
12460 * lisp/calendar/icalendar.el (icalendar-export-region)
12461 (icalendar--convert-float-to-ical)
12462 (icalendar--convert-date-to-ical)
12463 (icalendar--convert-ical-to-diary)
12464 (icalendar--convert-recurring-to-diary)
12465 (icalendar--add-diary-entry):
12466 * lisp/calendar/time-date.el (format-seconds):
12467 * lisp/calendar/timeclock.el (timeclock-mode-line-display)
12468 (timeclock-make-hours-explicit, timeclock-log-data):
12469 * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
12470 (todo-item-mark, todo-check-format)
12471 (todo-insert-item--next-param, todo-edit-item--next-key)
12472 (todo-mode):
12473 * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
12474 * lisp/cedet/mode-local.el (describe-mode-local-overload)
12475 (mode-local-print-binding, mode-local-describe-bindings-2):
12476 * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
12477 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
12478 * lisp/cus-start.el (standard):
12479 * lisp/cus-theme.el (describe-theme-1):
12480 * lisp/custom.el (custom-add-dependencies, custom-check-theme)
12481 (custom--sort-vars-1, load-theme):
12482 * lisp/descr-text.el (describe-text-properties-1, describe-char):
12483 * lisp/dired-x.el (dired-do-run-mail):
12484 * lisp/dired.el (dired-log):
12485 * lisp/emacs-lisp/advice.el (ad-read-advised-function)
12486 (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
12487 (ad-disable-advice, ad-remove-advice, ad-set-argument)
12488 (ad-set-arguments, ad--defalias-fset, ad-activate)
12489 (ad-deactivate):
12490 * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
12491 (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
12492 (byte-optimize-while, byte-optimize-apply):
12493 * lisp/emacs-lisp/byte-run.el (defun, defsubst):
12494 * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
12495 (byte-compile-log-file, byte-compile-format-warn)
12496 (byte-compile-nogroup-warn, byte-compile-arglist-warn)
12497 (byte-compile-cl-warn)
12498 (byte-compile-warn-about-unresolved-functions)
12499 (byte-compile-file, byte-compile--declare-var)
12500 (byte-compile-file-form-defmumble, byte-compile-form)
12501 (byte-compile-normal-call, byte-compile-check-variable)
12502 (byte-compile-variable-ref, byte-compile-variable-set)
12503 (byte-compile-subr-wrong-args, byte-compile-setq-default)
12504 (byte-compile-negation-optimizer)
12505 (byte-compile-condition-case--old)
12506 (byte-compile-condition-case--new, byte-compile-save-excursion)
12507 (byte-compile-defvar, byte-compile-autoload)
12508 (byte-compile-lambda-form)
12509 (byte-compile-make-variable-buffer-local, display-call-tree)
12510 (batch-byte-compile):
12511 * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
12512 * lisp/emacs-lisp/chart.el (chart-space-usage):
12513 * lisp/emacs-lisp/check-declare.el (check-declare-scan)
12514 (check-declare-warn, check-declare-file)
12515 (check-declare-directory):
12516 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
12517 (checkdoc-message-text-engine):
12518 * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
12519 (cl--describe-class):
12520 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
12521 (cl--generic-describe, cl-generic-generalizers):
12522 * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
12523 (cl-symbol-macrolet):
12524 * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
12525 * lisp/emacs-lisp/copyright.el (copyright)
12526 (copyright-update-directory):
12527 * lisp/emacs-lisp/edebug.el (edebug-read-list):
12528 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
12529 * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
12530 (eieio-oref):
12531 * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
12532 * lisp/emacs-lisp/eieio-speedbar.el:
12533 (eieio-speedbar-child-make-tag-lines)
12534 (eieio-speedbar-child-description):
12535 * lisp/emacs-lisp/eieio.el (defclass, change-class):
12536 * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
12537 (elint-init-form, elint-check-defalias-form)
12538 (elint-check-let-form):
12539 * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
12540 (ert-results-pop-to-backtrace-for-test-at-point)
12541 (ert-results-pop-to-messages-for-test-at-point)
12542 (ert-results-pop-to-should-forms-for-test-at-point)
12543 (ert-describe-test):
12544 * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
12545 (find-function-library):
12546 * lisp/emacs-lisp/generator.el (iter-yield):
12547 * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
12548 * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
12549 * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
12550 * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
12551 * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
12552 (advice--make, define-advice):
12553 * lisp/emacs-lisp/package-x.el (package-upload-file):
12554 * lisp/emacs-lisp/package.el (package-version-join)
12555 (package-disabled-p, package-activate-1, package-activate)
12556 (package--download-one-archive)
12557 (package--download-and-read-archives)
12558 (package-compute-transaction, package-install-from-archive)
12559 (package-install, package-install-selected-packages)
12560 (package-delete, package-autoremove, describe-package-1)
12561 (package-install-button-action, package-delete-button-action)
12562 (package-menu-hide-package, package-menu--list-to-prompt)
12563 (package-menu--perform-transaction)
12564 (package-menu--find-and-notify-upgrades):
12565 * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
12566 * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
12567 * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
12568 * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
12569 (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
12570 (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
12571 (rx-form):
12572 * lisp/emacs-lisp/smie.el (smie-config-save):
12573 * lisp/emacs-lisp/subr-x.el (internal--check-binding):
12574 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
12575 * lisp/emacs-lisp/testcover.el (testcover-1value):
12576 * lisp/emacs-lisp/timer.el (timer-event-handler):
12577 * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
12578 (viper-toggle-search-style, viper-kill-buffer)
12579 (viper-brac-function):
12580 * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
12581 * lisp/env.el (setenv):
12582 * lisp/erc/erc-button.el (erc-nick-popup):
12583 * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
12584 * lisp/eshell/em-dirs.el (eshell/cd):
12585 * lisp/eshell/em-glob.el (eshell-glob-regexp)
12586 (eshell-glob-entries):
12587 * lisp/eshell/em-pred.el (eshell-parse-modifiers):
12588 * lisp/eshell/esh-opt.el (eshell-show-usage):
12589 * lisp/facemenu.el (facemenu-add-new-face)
12590 (facemenu-add-new-color):
12591 * lisp/faces.el (read-face-name, read-face-font, describe-face)
12592 (x-resolve-font-name):
12593 * lisp/files-x.el (modify-file-local-variable):
12594 * lisp/files.el (locate-user-emacs-file, find-alternate-file)
12595 (set-auto-mode, hack-one-local-variable--obsolete)
12596 (dir-locals-set-directory-class, write-file, basic-save-buffer)
12597 (delete-directory, copy-directory, recover-session)
12598 (recover-session-finish, insert-directory)
12599 (file-modes-char-to-who, file-modes-symbolic-to-number)
12600 (move-file-to-trash):
12601 * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
12602 * lisp/find-cmd.el (find-generic, find-to-string):
12603 * lisp/finder.el (finder-commentary):
12604 * lisp/font-lock.el (font-lock-fontify-buffer):
12605 * lisp/format.el (format-write-file, format-find-file)
12606 (format-insert-file):
12607 * lisp/frame.el (get-device-terminal, select-frame-by-name):
12608 * lisp/fringe.el (fringe--check-style):
12609 * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
12610 * lisp/help-fns.el (help-fns--key-bindings)
12611 (help-fns--compiler-macro, help-fns--parent-mode)
12612 (help-fns--obsolete, help-fns--interactive-only)
12613 (describe-function-1, describe-variable):
12614 * lisp/help.el (describe-mode)
12615 (describe-minor-mode-from-indicator):
12616 * lisp/image.el (image-type):
12617 * lisp/international/ccl.el (ccl-dump):
12618 * lisp/international/fontset.el (x-must-resolve-font-name):
12619 * lisp/international/mule-cmds.el (prefer-coding-system)
12620 (select-safe-coding-system-interactively)
12621 (select-safe-coding-system, activate-input-method)
12622 (toggle-input-method, describe-current-input-method)
12623 (describe-language-environment):
12624 * lisp/international/mule-conf.el (code-offset):
12625 * lisp/international/mule-diag.el (describe-character-set)
12626 (list-input-methods-1):
12627 * lisp/mail/feedmail.el (feedmail-run-the-queue):
12628 * lisp/mouse.el (minor-mode-menu-from-indicator):
12629 * lisp/mpc.el (mpc-playlist-rename):
12630 * lisp/msb.el (msb--choose-menu):
12631 * lisp/net/ange-ftp.el (ange-ftp-shell-command):
12632 * lisp/net/imap.el (imap-interactive-login):
12633 * lisp/net/mairix.el (mairix-widget-create-query):
12634 * lisp/net/newst-backend.el (newsticker--sentinel-work):
12635 * lisp/net/newst-treeview.el (newsticker--treeview-load):
12636 * lisp/net/rlogin.el (rlogin):
12637 * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
12638 * lisp/obsolete/otodo-mode.el (todo-more-important-p):
12639 * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
12640 * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
12641 * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
12642 * lisp/org/ob-core.el (org-babel-goto-named-src-block)
12643 (org-babel-goto-named-result):
12644 * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
12645 * lisp/org/ob-ref.el (org-babel-ref-resolve):
12646 * lisp/org/org-agenda.el (org-agenda-prepare):
12647 * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
12648 (org-clock-resolve):
12649 * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
12650 * lisp/org/org-feed.el (org-feed-parse-atom-entry):
12651 * lisp/org/org-habit.el (org-habit-parse-todo):
12652 * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
12653 (org-mouse-context-menu):
12654 * lisp/org/org-table.el (org-table-edit-formulas):
12655 * lisp/org/ox.el (org-export-async-start):
12656 * lisp/proced.el (proced-log):
12657 * lisp/progmodes/ada-mode.el (ada-get-indent-case)
12658 (ada-check-matching-start, ada-goto-matching-start):
12659 * lisp/progmodes/ada-prj.el (ada-prj-display-page):
12660 * lisp/progmodes/ada-xref.el (ada-find-executable):
12661 * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
12662 * lisp/progmodes/etags.el (etags-tags-apropos-additional):
12663 * lisp/progmodes/flymake.el (flymake-parse-err-lines)
12664 (flymake-start-syntax-check-process):
12665 * lisp/progmodes/python.el (python-shell-get-process-or-error)
12666 (python-define-auxiliary-skeleton):
12667 * lisp/progmodes/sql.el (sql-comint):
12668 * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
12669 * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
12670 * lisp/recentf.el (recentf-open-files):
12671 * lisp/replace.el (query-replace-read-from)
12672 (occur-after-change-function, occur-1):
12673 * lisp/scroll-bar.el (scroll-bar-columns):
12674 * lisp/server.el (server-get-auth-key):
12675 * lisp/simple.el (execute-extended-command)
12676 (undo-outer-limit-truncate, list-processes--refresh)
12677 (compose-mail, set-variable, choose-completion-string)
12678 (define-alternatives):
12679 * lisp/startup.el (site-run-file, tty-handle-args, command-line)
12680 (command-line-1):
12681 * lisp/subr.el (noreturn, define-error, add-to-list)
12682 (read-char-choice, version-to-list):
12683 * lisp/term/common-win.el (x-handle-xrm-switch)
12684 (x-handle-name-switch, x-handle-args):
12685 * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
12686 * lisp/textmodes/reftex-ref.el (reftex-label):
12687 * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
12688 * lisp/textmodes/two-column.el (2C-split):
12689 * lisp/tutorial.el (tutorial--describe-nonstandard-key)
12690 (tutorial--find-changed-keys):
12691 * lisp/type-break.el (type-break-noninteractive-query):
12692 * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
12693 (wdired-do-perm-changes):
12694 * lisp/whitespace.el (whitespace-report-region):
12695 Prefer grave quoting in source-code strings used to generate help
12696 and diagnostics.
12697 * lisp/faces.el (face-documentation):
12698 No need to convert quotes, since the result is a docstring.
12699 * lisp/info.el (Info-virtual-index-find-node)
12700 (Info-virtual-index, info-apropos):
12701 Simplify by generating only curved quotes, since info files are
12702 typically that ways nowadays anyway.
12703 * lisp/international/mule-diag.el (list-input-methods):
12704 Don’t assume text quoting style is curved.
12705 * lisp/org/org-bibtex.el (org-bibtex-fields):
12706 Revert my recent changes, going back to the old quoting style.
12707
12708 2015-09-07 Artur Malabarba <bruce.connor.am@gmail.com>
12709
12710 * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
12711 (package--autoloads-file-name)
12712 (package--activate-autoloads-and-load-path): New function.
12713 (package-activate-1): Delegate autoloading and load-path
12714 configuration to `package--activate-autoloads-and-load-path'.
12715 (package--compile): Before compilation, call
12716 `package--activate-autoloads-and-load-path' instead of
12717 `package-activate-1'.
12718
12719 2015-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
12720
12721 * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
12722
12723 2015-09-07 Eli Zaretskii <eliz@gnu.org>
12724
12725 Fix deletion of symlinks to directories on MS-Windows
12726 * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
12727 symlink to a directory, try again with 'rmdir'.
12728 (is_symlink): If the argument is a symlink to a directory, set a
12729 bit in the return value to indicate that fact.
12730
12731 2015-09-07 Artur Malabarba <bruce.connor.am@gmail.com>
12732
12733 * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
12734 When `package-initialize' is called as part of loading the init file,
12735 the user probably doesn't want it to be called again afterwards.
12736 In this situation, `package-initialize' now sets
12737 `package-enable-at-startup' to nil to prevent that. The user can have
12738 the old behavior by setting this variable to t after the call to
12739 `package-initialize'. (Bug#21423)
12740 * doc/emacs/package.texi (Package Installation): Document it.
12741 * doc/lispref/package.texi (Packaging Basics): Document it.
12742 * etc/NEWS: Document it.
12743
12744 2015-09-06 Thomas Fitzsimmons <fitzsim@fitzsim.org>
12745
12746 Bump version of ntlm.el to 2.00
12747 * lisp/net/ntlm.el: Bump version to 2.00. New maintainer.
12748 Add comm keyword.
12749
12750 2015-09-06 Adam Sjøgren <asjo@koldfront.dk>
12751
12752 * doc/misc/gnus.texi (Mail Source Specifiers):
12753 Allow :mailbox to be a list.
12754
12755 2015-09-06 Dmitry Gutov <dgutov@yandex.ru>
12756
12757 * lisp/progmodes/etags.el (etags-tags-completion-table):
12758 Allow even one non-regular character before the implicit tag name.
12759 Reported at http://emacs.stackexchange.com/questions/15269/.
12760
12761 2015-09-06 Thomas Fitzsimmons <fitzsim@fitzsim.org>
12762
12763 Add support for NTLMv2 authentication
12764 * lisp/net/ntlm.el (ntlm): New customization group.
12765 (ntlm-compatibility-level): New defcustom.
12766 (ntlm-compute-timestamp): New function.
12767 (ntlm-generate-nonce): Likewise.
12768 (ntlm-build-auth-response): Add support for NTLMv2 authentication.
12769
12770 2015-09-06 Artur Malabarba <bruce.connor.am@gmail.com>
12771
12772 * lisp/emacs-lisp/package.el: Rename custom faces.
12773 All of the recently introduced faces, like `package-name-face', have
12774 been renamed to no end in `-face' to comply with the convention
12775 described in (info "(elisp) Defining Faces").
12776 (package-name, package-description)
12777 (package-status-built-in, package-status-external)
12778 (package-status-available, package-status-new)
12779 (package-status-held, package-status-disabled)
12780 (package-status-installed, package-status-dependency)
12781 (package-status-unsigned, package-status-incompat)
12782 (package-status-avail-obso): New faces.
12783 (package-menu--print-info-simple): Use them.
12784
12785 2015-09-06 Adam Sjøgren <asjo@koldfront.dk>
12786
12787 mail-source.el: Make the imap mail-source's :mailbox handle a list
12788 * lisp/gnus/mail-source.el (mail-source-fetch-imap):
12789 Allow :mailbox to be a list.
12790
12791 2015-09-06 Eric Abrahamsen <eric@ericabrahamsen.net>
12792
12793 nnimap.el: Handle nil arg to nnimap-request-group
12794 * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
12795 This arg isn't always passed in, check it's not nil before making it
12796 into a list. The active arg will also be nil if the group is new,
12797 check for that.
12798
12799 2015-09-06 Michael Albinus <michael.albinus@gmx.de>
12800
12801 File notifications: Support renaming over directory boundaries
12802 * lisp/filenotify.el (file-notify-handle-event):
12803 (file-notify--pending-event): Adapt docstring.
12804 (file-notify--descriptor, file-notify-callback): Reimplement in
12805 order to support renaming over directory boundaries.
12806 (file-notify-add-watch): Adapt `file-notify--descriptor' call.
12807 * doc/lispref/os.texi (File Notifications): Remove limitation of
12808 file renaming to the same directory.
12809
12810 2015-09-05 Paul Eggert <eggert@cs.ucla.edu>
12811
12812 Spelling fix (Bug#21420)
12813
12814 2015-09-05 Nicolas Petton <nicolas@petton.fr>
12815
12816 Improve the semantic of map-some
12817 Update map-some to return the returned by the predicate, similar to
12818 seq-some.
12819 * lisp/emacs-lisp/map.el (map-some): Update the function to return the
12820 return value of the predicate.
12821 * test/automated/map-tests.el (test-map-some): Update the test to check
12822 for non-nil values only.
12823
12824 Rename map-contains-key-p and map-some-p
12825 Remove the "-p" suffix from both function names.
12826 * lisp/emacs-lisp/map.el (map-contains-key, map-some):
12827 Rename the functions.
12828 * test/automated/map-tests.el (test-map-contains-key, test-map-some):
12829 Update both test functions.
12830
12831 Improve the semantic of seq-some
12832 Update seq-some to return non-nil if the predicate returns non-nil for
12833 any element of the seq, in which case the returned value is the one
12834 returned by the predicate.
12835 * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
12836 docstring.
12837 * test/automated/seq-tests.el (test-seq-some): Add a regression test.
12838 * doc/lispref/sequences.texi (Sequence Functions): Update the
12839 documentation for seq-some.
12840
12841 Rename seq-some-p to seq-some and seq-contains-p to seq-contains
12842 * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
12843 without the "-p" prefix.
12844 * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
12845 the tests accordingly.
12846 * doc/lispref/sequences.texi (Sequence Functions): Update the
12847 documentation for seq.el.
12848
12849 2015-09-05 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
12850
12851 text-quoting-style for usage of fn names with ‘’
12852 * lisp/help.el (help--docstring-quote): Don’t assume
12853 text-quoting-style is ‘curve’ when generating usage strings for
12854 functions whose names contain curved quotes.
12855
12856 2015-09-05 Paul Eggert <eggert@cs.ucla.edu>
12857
12858 Fix fix for describe-function keybinding confusion
12859 This fixes a bug introduced by the previous patch.
12860 * lisp/help-fns.el (help-fns--signature):
12861 Last arg of help-fns--signature is now a buffer, or nil if a
12862 raw signature is wanted. All callers changed.
12863 (describe-function-1): Use this to do the right thing with signatures.
12864
12865 2015-09-05 Johan Bockgård <bojohan@gnu.org>
12866
12867 * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
12868
12869 Use PAT rather than UPAT in pcase macros
12870 * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
12871 * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
12872 than UPAT.
12873
12874 2015-09-05 Paul Eggert <eggert@cs.ucla.edu>
12875
12876 Fix describe-function keybinding confusion
12877 * lisp/help-fns.el (describe-function-1): Compute signature
12878 in the original buffer, not in standard-output, so that
12879 substitute-command-keys uses the proper keybindings.
12880 This fixes Bug#21412, introduced in commit
12881 2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
12882
12883 2015-09-05 Xue Fuqiao <xfq.free@gmail.com>
12884
12885 * doc/emacs/programs.texi (Program Modes): Remove an index entry.
12886
12887 2015-09-05 Robert Pluim <rpluim@gmail.com> (tiny change)
12888
12889 Avoid read error messages from 'inotify'
12890 * src/process.c (wait_reading_process_output): Add a
12891 'tls_available' set and manipulate it instead of 'Available' when
12892 checking TLS inputs. Assign the value to 'Available' only if we
12893 find any TLS data waiting to be read. This avoids error messages
12894 from 'inotify' that tries to read data it shouldn't. (Bug#21337)
12895
12896 2015-09-05 Eli Zaretskii <eliz@gnu.org>
12897
12898 Avoid errors in thing-at-point with 2nd argument non-nil
12899 * lisp/thingatpt.el (thing-at-point): Only call 'length' on
12900 sequences. (Bug#21391)
12901
12902 2015-09-05 Philip <pipcet@gmail.com> (tiny change)
12903
12904 Fix segfaults due to using a stale face ID
12905 * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
12906 (display_echo_area_1, redisplay_internal): Call it to avoid
12907 reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
12908 faces, which could case a segfault if the frame's face cache was
12909 freed since the last redisplay. (Bug#21394)
12910 * src/xfaces.c (free_realized_faces):
12911 Call forget_escape_and_glyphless_faces.
12912 * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
12913
12914 2015-09-04 Paul Eggert <eggert@cs.ucla.edu>
12915
12916 Fix minor problems with " in manual
12917
12918 2015-09-04 Michael Albinus <michael.albinus@gmx.de>
12919
12920 * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
12921 multi-hop files.
12922
12923 2015-09-04 Paul Eggert <eggert@cs.ucla.edu>
12924
12925 Support automated ‘make check’ in non-C locale
12926 This lets the builder optionally test Emacs behavior in other locales.
12927 The C locale is still the default for tests.
12928 * test/automated/Makefile.in (TEST_LOCALE): New macro.
12929 (emacs): Use it.
12930 * test/automated/flymake-tests.el (flymake-tests--current-face):
12931 Use C locale for subprocesses so that tests behave as expected.
12932 * test/automated/python-tests.el:
12933 (python-shell-prompt-validate-regexps-1)
12934 (python-shell-prompt-validate-regexps-2)
12935 (python-shell-prompt-validate-regexps-3)
12936 (python-shell-prompt-validate-regexps-4)
12937 (python-shell-prompt-validate-regexps-5)
12938 (python-shell-prompt-validate-regexps-6)
12939 (python-shell-prompt-set-calculated-regexps-1):
12940 Adjust expected output to match locale.
12941 * test/automated/tildify-tests.el (tildify-test--test)
12942 (tildify-space-test--test, tildify-space-undo-test--test):
12943 This test assumes UTF-8 encoding.
12944
12945 2015-09-03 Paul Eggert <eggert@cs.ucla.edu>
12946
12947 Fix some more docstring etc. quoting problems
12948 Mostly these fixes prevent the transliteration of apostrophes
12949 that should stay apostrophes. Also, prefer curved quotes in
12950 Bahá’í proper names, as that’s the preferred Bahá’í style and
12951 these names are chock-full of non-ASCII characters anyway.
12952 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
12953 (eieio-defclass-internal):
12954 * lisp/emacs-lisp/eieio.el (defclass):
12955 * lisp/hi-lock.el (hi-lock-mode):
12956 Don’t transliterate Lisp apostrophes when generating a
12957 doc string or diagnostic.
12958 * lisp/international/mule-diag.el (list-coding-systems-1):
12959 * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
12960 * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
12961 * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
12962 * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
12963 Substitute quotes before putting them in the help buffer.
12964
12965 2015-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
12966
12967 Re-add the notion of echo_prompt lost in the translation
12968 * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
12969 echo_prompt which contains the actual string. Update all uses.
12970 * src/keyboard.c (kset_echo_prompt): New function.
12971 (echo_update): Add echo_prompt at the very beginning.
12972 (read_char): Remove workaround for bug#19875, not needed any more.
12973 (read_key_sequence): Set echo_prompt rather than echo_string
12974 (bug#21403).
12975 (mark_kboards): Mark echo_prompt.
12976
12977 Fix disassembly of non-compiled lexical functions (bug#21377)
12978 * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
12979 * lisp/emacs-lisp/disass.el: Use lexical-binding.
12980 (disassemble): Recognize `closure's as well.
12981 (disassemble-internal): Use indirect-function and
12982 help-function-arglist, and accept `closure's.
12983 (disassemble-internal): Use interactive-form.
12984 (disassemble-1): Use functionp.
12985
12986 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
12987 Don't compose inside verbatim blocks!
12988
12989 2015-09-03 Mark Oteiza <mvoteiza@udel.edu>
12990
12991 * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
12992 (bug#19441).
12993
12994 * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
12995
12996 2015-09-03 Dmitry Gutov <dgutov@yandex.ru>
12997
12998 vc-git-mode-line-string: Explicitly re-apply the face
12999 * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
13000 the face (bug#21404).
13001
13002 2015-09-02 Paul Eggert <eggert@cs.ucla.edu>
13003
13004 Treat initial-scratch-message as a doc string
13005 * doc/emacs/building.texi (Lisp Interaction):
13006 * doc/lispref/os.texi (Startup Summary):
13007 * etc/NEWS: Document this.
13008 * lisp/startup.el (initial-scratch-message):
13009 Look up find-file’s key rather than hardcoding it.
13010 (command-line-1): Substitute the doc string.
13011 This also substitutes the quotes, which will help test display
13012 quoting at startup.
13013
13014 Fix describe-char bug with glyphs on terminals
13015 * lisp/descr-text.el (describe-char): Terminals can have glyphs in
13016 buffers too, so don’t treat them differently from graphic displays.
13017 Without this fix, describe-char would throw an error on a terminal
13018 if given a glyph with a non-default face.
13019
13020 Follow text-quoting-style in display table init
13021 This attempts to fix a problem reported by Alan Mackenzie in:
13022 http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
13023 * doc/lispref/display.texi (Active Display Table):
13024 Mention how text-quoting-style affects it.
13025 * doc/lispref/help.texi (Keys in Documentation):
13026 Say how to set text-quoting-style in ~/.emacs.
13027 * etc/NEWS: Document the change.
13028 * lisp/startup.el (startup--setup-quote-display):
13029 Follow user preference if text-quoting-style is set.
13030 (command-line): Setup quote display again if user expresses
13031 a preference in .emacs.
13032
13033 2015-09-02 K. Handa <handa@gnu.org>
13034
13035 Fix typo
13036 * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
13037 -> OTF_positioning_type_components_mask.
13038
13039 Fix previous change
13040 * src/ftfont.c (ftfont_drive_otf): Remember some bits of
13041 OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
13042
13043 2015-09-01 David Caldwell <david@porkrind.org> (tiny change)
13044
13045 * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
13046 Rename from vc-find-file-hook and make interactive.
13047 (vc-find-file-hook): Redefine as obsolete alias.
13048
13049 2015-09-01 Paul Eggert <eggert@cs.ucla.edu>
13050
13051 Escape ` and ' in doc
13052 Escape apostrophes and grave accents in docstrings if they are
13053 are supposed to stand for themselves and are not quotes. Remove
13054 apostrophes from docstring examples like ‘'(calendar-nth-named-day
13055 -1 0 10 year)’ that confuse source code with data. Do some other
13056 minor docstring fixups as well, e.g., insert a missing close quote.
13057
13058 2015-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
13059
13060 Generalize the prefix-command machinery of C-u
13061 * lisp/simple.el (prefix-command-echo-keystrokes-functions)
13062 (prefix-command-preserve-state-hook): New hooks.
13063 (internal-echo-keystrokes-prefix): New function.
13064 (prefix-command--needs-update, prefix-command--last-echo): New vars.
13065 (prefix-command-update, prefix-command-preserve): New functions.
13066 (reset-this-command-lengths): New compatibility definition.
13067 (universal-argument--mode): Call prefix-command-update.
13068 (universal-argument, universal-argument-more, negative-argument)
13069 (digit-argument): Call prefix-command-preserve-state.
13070 * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
13071 the "prefix argument" to echo.
13072 (this_command_key_count_reset, before_command_key_count)
13073 (before_command_echo_length): Delete variables.
13074 (echo_add_key): Always add a space.
13075 (echo_char): Remove.
13076 (echo_dash): Don't give up when this_command_key_count is 0, since that
13077 is now the case after a prefix command.
13078 (echo_update): New function, extracted from echo_now.
13079 (echo_now): Use it.
13080 (add_command_key, read_char, record_menu_key): Remove old disabled code.
13081 (command_loop_1): Don't refrain from pushing an undo boundary when
13082 prefix-arg is set. Remove other prefix-arg special case, now handled
13083 directly in the prefix commands instead. But call echo_now if there's
13084 a prefix state to echo.
13085 (read_char, record_menu_key): Use echo_update instead of echo_char.
13086 (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
13087 (Freset_this_command_lengths): Delete function.
13088 (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
13089 (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
13090 * lisp/simple.el: Use those new hooks for C-u.
13091 (universal-argument--description): New function.
13092 (prefix-command-echo-keystrokes-functions): Use it.
13093 (universal-argument--preserve): New function.
13094 (prefix-command-preserve-state-hook): Use it.
13095 (command-execute): Call prefix-command-update if needed.
13096 * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
13097 (kmacro-step-edit-prefix-index): Delete variables.
13098 (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
13099 support for prefix arg commands.
13100 (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
13101 * lisp/emulation/cua-base.el (cua--prefix-override-replay)
13102 (cua--shift-control-prefix): Use prefix-command-preserve-state.
13103 Remove now unused arg `arg'.
13104 (cua--prefix-override-handler, cua--prefix-repeat-handler)
13105 (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
13106 Update accordingly.
13107 (cua--prefix-override-timeout): Don't call reset-this-command-lengths
13108 any more.
13109 (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
13110 if the mark is not set.
13111
13112 2015-09-01 Paul Eggert <eggert@cs.ucla.edu>
13113
13114 Rework quoting in Emacs Lisp Introduction
13115 * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
13116 (if in more detail, type-of-animal in detail, else): Rework the
13117 early example to use " rather than ' so that we don’t burden
13118 complete novices with the low-priority detail of text quoting style.
13119 (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
13120 (kill-new function, kill-ring-yank-pointer)
13121 (Complete forward-sentence, Loading Files)
13122 (Code for current-kill, Code for current-kill, yank):
13123 Resurrect the Emacs 22 versions of the code, which uses grave
13124 quoting style in doc strings.
13125 (Complete zap-to-char): Mention how quoting works in doc strings.
13126
13127 Setup quote display only if interactive
13128 * lisp/startup.el (command-line):
13129 Skip call to startup--setup-quote-display if noninteractive.
13130 Without this change, python-shell-prompt-validate-regexps-1
13131 fails in test/automated/python-tests.el when run in an
13132 en_US.utf8 locale on Fedora.
13133
13134 2015-09-01 Katsumi Yamaoka <yamaoka@jpl.org>
13135
13136 Use defalias at the top level
13137 * lisp/gnus/gnus-util.el (gnus-format-message):
13138 * lisp/net/tls.el (tls-format-message): Use defalias at the top level
13139 so as to make eval-and-compile unnecessary. Thanks to Stefan Monnier.
13140
13141 2015-09-01 Paul Eggert <eggert@cs.ucla.edu>
13142
13143 terminal-init-w32console mimicks command-line
13144 Problem reported by Eli Zaretskii.
13145 * lisp/startup.el (startup--setup-quote-display):
13146 New function, refactored from a part of ‘command-line’.
13147 (command-line): Use it.
13148 * lisp/term/w32console.el (terminal-init-w32console):
13149 Use it, so that this function stays consistent with ‘command-line’.
13150
13151 Display replacement quotes with shadow glyphs
13152 * lisp/startup.el (command-line): When displaying ASCII
13153 replacements for curved quotes, use a shadow glyph instead of a
13154 regular one, to avoid ambiguity.
13155
13156 2015-09-01 Michael Albinus <michael.albinus@gmx.de>
13157
13158 * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
13159
13160 2015-09-01 Paul Eggert <eggert@cs.ucla.edu>
13161
13162 Docstring fixes re quotes in C code
13163 Fix some docstring quoting problems, mostly by escaping apostrophe.
13164
13165 2015-09-01 Michael Albinus <michael.albinus@gmx.de>
13166
13167 Some Tramp password fixes
13168 * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
13169 of the hops.
13170 * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
13171 at the beginning of the command. Otherwise, it could be
13172 interpreted as password prompt if the remote host echoes the
13173 command.
13174 (tramp-remote-coding-commands): Add "openssl enc -base64".
13175
13176 2015-09-01 Dmitry Gutov <dgutov@yandex.ru>
13177
13178 Make vc-git-working-revision always return the commit hash
13179 * lisp/vc/vc-git.el (vc-git-working-revision):
13180 Return the commit hash (bug#21383).
13181 (vc-git--symbolic-ref): New function, extracted from above.
13182 (vc-git-mode-line-string): Use it.
13183
13184 2015-09-01 K. Handa <handa@gnu.org>
13185
13186 Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
13187 * src/ftfont.c (MFLTGlyphFT): New type.
13188 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
13189 (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
13190 elements in the array MFLTGlyphString.glyphs.
13191
13192 2015-09-01 Stephen Leake <stephen_leake@stephe-leake.org>
13193
13194 Improve comments in elisp-mode.el, elisp-mode-tests.el
13195 * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
13196
13197 Delete Emacs 25 test in mode-local.el
13198 * lisp/cedet/mode-local.el (describe-mode-local-overload):
13199 Fix missed an edit in previous commit.
13200
13201 Show all known mode-local overrides in *Help*
13202 * lisp/cedet/mode-local.el (describe-mode-local-overload):
13203 Assume Emacs 25. Add all known mode-local overrides.
13204
13205 2015-09-01 Katsumi Yamaoka <yamaoka@jpl.org>
13206
13207 * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
13208 Ensure that the article where the search word is found is displayed
13209 and pointed to in the summary buffer.
13210
13211 2015-08-31 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
13212
13213 * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
13214 When the region is active, but is empty (length 0), act as though
13215 the region was not active; that is, put a comment at the end of
13216 the line. (Bug#21119)
13217
13218 2015-08-31 Katsumi Yamaoka <yamaoka@jpl.org>
13219
13220 Port tls.el to older Emacs
13221 * lisp/net/tls.el (tls-format-message):
13222 Alias to format-message, or format if not available.
13223 (open-tls-stream): Use it.
13224
13225 2015-08-31 Rüdiger Sonderfeld <ruediger@c-plusplus.net>
13226
13227 hideif.el: Recognize .h++ as C++ header
13228 * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
13229
13230 isearch: Document character folding mode
13231 * lisp/isearch.el (isearch-forward):
13232 Mention `isearch-toggle-character-fold' in doc string.
13233
13234 2015-08-31 Paul Eggert <eggert@cs.ucla.edu>
13235
13236 Quoting fixes in ERC and Eshell
13237 * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
13238 * lisp/erc/erc-backend.el (define-erc-response-handler):
13239 * lisp/erc/erc-fill.el (erc-fill-static-center):
13240 * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
13241 * lisp/eshell/em-glob.el (eshell-glob-entries):
13242 * lisp/eshell/em-hist.el (eshell-save-some-history):
13243 * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
13244 (eshell-shuffle-files):
13245 * lisp/eshell/esh-cmd.el (eshell-do-eval):
13246 * lisp/eshell/esh-proc.el (eshell-process-interact)
13247 (eshell-query-kill-processes):
13248 Respect ‘text-quoting-style’ in diagnostics and doc strings.
13249
13250 Quoting fixes in Gnus
13251 * lisp/gnus/gnus-agent.el:
13252 (gnus-agent-possibly-synchronize-flags-server):
13253 * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
13254 * lisp/gnus/gnus-eform.el (gnus-edit-form):
13255 * lisp/gnus/gnus-group.el (gnus-group-edit-group)
13256 (gnus-group-nnimap-edit-acl):
13257 * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
13258 * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
13259 * lisp/gnus/message.el (message-strip-subject-encoded-words)
13260 (message-check-recipients, message-send-form-letter):
13261 * lisp/gnus/mm-decode.el (mm-display-part):
13262 * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
13263 * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
13264 (mml-smime-get-ldap-cert):
13265 * lisp/gnus/spam-report.el (spam-report-process-queue):
13266 Respect ‘text-quoting-style’ in diagnostics.
13267 * lisp/gnus/gnus-art.el (article-display-face)
13268 * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
13269 Use straight quoting in email.
13270 * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
13271 Escape apostrophes in doc strings.
13272
13273 Quoting fixes in lisp mail, mh-e, net, url
13274 * lisp/mail/emacsbug.el (report-emacs-bug)
13275 (report-emacs-bug-hook): Use straight quotes in outgoing email,
13276 * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
13277 * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
13278 * lisp/mail/rmailout.el (rmail-output-read-file-name):
13279 * lisp/net/imap.el (imap-interactive-login):
13280 * lisp/net/tls.el (open-tls-stream):
13281 * lisp/url/url-auth.el (url-register-auth-scheme):
13282 Respect ‘text-quoting-style’ in diagnostics.
13283 * lisp/mh-e/mh-e.el (mh-sortm-args):
13284 Quote docstring example using text quotes, not as a Lisp quote.
13285
13286 2015-08-31 Stephen Leake <stephen_leake@stephe-leake.org>
13287
13288 Fix some byte-compiler warnings in EDE
13289 This fixes a bug that caused ede-generic-new-autoloader to overwrite the
13290 existing autoloader list, rather than add to it.
13291 * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
13292 argument to eieio class constructor.
13293 (ede-show-supported-projects): New.
13294 (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
13295 with (oref ... name).
13296 (ede-auto-load-project): Use slot name, not initarg key.
13297 * lisp/cedet/ede/generic.el (ede-generic-load)
13298 (ede-generic-find-matching-target): Use slot name, not initarg key.
13299 (ede-find-target): Use oref-default on class name.
13300 (ede-generic-new-autoloader): Delete obsolete name argument to eieio
13301 class constructor.
13302 (ede-enable-generic-projects): Make project type names unique.
13303
13304 2015-08-31 Eli Zaretskii <eliz@gnu.org>
13305
13306 Fix directory accessibility tests for w32 network volumes
13307 * src/w32.c (faccessat): Don't fail with network volumes without a
13308 share.
13309 (w32_accessible_directory_p): Handle network volumes without a
13310 share.
13311
13312 Fix handling long file names in readdir on MS-Windows
13313 * src/w32.c (sys_readdir): Append "\*" to the directory after
13314 converting it to UTF-16/ANSI, not before, to avoid overflowing the
13315 260-character limit on file names in filename_to_utf16/ansi.
13316
13317 Make file-accessible-directory-p reliable on MS-Windows
13318 * src/w32.c (w32_accessible_directory_p): New function.
13319 * src/w32.h (w32_accessible_directory_p): Add prototype.
13320 * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
13321 w32_accessible_directory_p to test a directory for accessibility
13322 by the current user. (Bug#21346)
13323 (Ffile_accessible_directory_p): Remove the w32 specific caveat
13324 from the doc string.
13325
13326 2015-08-31 Martin Rudalics <rudalics@gmx.at>
13327
13328 Don't call do_pending_window_change in signal handlers (Bug#21380)
13329 * src/gtkutil.c (xg_frame_resized):
13330 * src/xterm.c (x_set_window_size):
13331 * src/w32term.c (x_set_window_size): Don't call
13332 do_pending_window_change.
13333
13334 2015-08-31 Paul Eggert <eggert@cs.ucla.edu>
13335
13336 Quoting fixes in lisp/org
13337 * lisp/org/org-agenda.el (org-search-view, org-todo-list)
13338 (org-tags-view):
13339 * lisp/org/org-capture.el (org-capture-mode)
13340 * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
13341 (org-ctags-ask-append-topic):
13342 * lisp/org/org.el (org-time-string-to-time)
13343 (org-time-string-to-absolute):
13344 * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
13345 (org-ctags-ask-append-topic):
13346 * lisp/org/org.el (org-time-string-to-time)
13347 (org-time-string-to-absolute):
13348 Respect ‘text-quoting-style’ in diagnostics.
13349 * lisp/org/org-agenda.el (org-agenda-custom-commands)
13350 (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
13351 * lisp/org/org-capture.el (org-capture-fill-template):
13352 Avoid contraction in output file that might be ASCII.
13353 * lisp/org/org-compat.el (format-message):
13354 Define if not already defined, for backward compatibility.
13355 * lisp/org/org-src.el (org-edit-src-save):
13356 * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
13357 Escape apostrophes in diagnostics.
13358
13359 Treat “instead” strings as docstrings
13360 * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
13361 * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
13362 Substitute quotes in instead strings.
13363
13364 2015-08-31 Nicolas Petton <nicolas@petton.fr>
13365
13366 Better documentation of seq-let
13367 * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
13368 documentation of seq-let.
13369
13370 2015-08-31 Paul Eggert <eggert@cs.ucla.edu>
13371
13372 * lisp/international/ccl.el: Fix quoting.
13373
13374 Quoting fixes in lisp/international and lisp/leim
13375 * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
13376 * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
13377 * lisp/international/mule-cmds.el:
13378 (select-safe-coding-system-interactively, leim-list-file-name):
13379 * lisp/international/quail.el (quail-use-package, quail-help):
13380 * lisp/international/titdic-cnv.el (tit-process-header)
13381 (miscdic-convert):
13382 Respect text quoting style in doc strings and diagnostics.
13383 * lisp/international/quail.el (lisp/international/quail.el):
13384 * lisp/leim/quail/ethiopic.el ("ethiopic"):
13385 Escape apostrophes in doc strings.
13386
13387 Make ‘text-quoting-style’ a plain defvar
13388 It doesn’t need customization, as it’s likely useful only by experts.
13389 Suggested by Stefan Monnier in:
13390 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
13391 * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
13392
13393 Quoting fixes in lisp/textmodes
13394 * lisp/textmodes/bibtex.el (bibtex-validate)
13395 (bibtex-validate-globally, bibtex-search-entries):
13396 * lisp/textmodes/ispell.el (ispell-command-loop):
13397 * lisp/textmodes/page-ext.el (search-pages, pages-directory):
13398 * lisp/textmodes/texinfmt.el (texinfmt-version)
13399 (texinfo-format-region, texinfo-format-buffer-1):
13400 * lisp/textmodes/two-column.el (2C-split):
13401 Respect text quoting style in doc strings and diagnostics.
13402 * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
13403 * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
13404 Escape apostrophes in doc strings.
13405
13406 Documentation fixes re quotes
13407 Prefer curved quotes in examples if users will typically see
13408 curved quotes when the examples run.
13409 Mention format-message when appropriate.
13410 Don’t use @code in examples.
13411 Quote an apostrophe with @kbd.
13412
13413 Quoting fixes in lisp/progmodes
13414 * lisp/progmodes/cc-engine.el (c-bos-report-error):
13415 * lisp/progmodes/cpp.el (cpp-edit-reset):
13416 * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
13417 * lisp/progmodes/etags.el (etags-tags-apropos-additional)
13418 (etags-tags-apropos, list-tags, tags-apropos):
13419 * lisp/progmodes/executable.el (executable-set-magic):
13420 * lisp/progmodes/octave.el (octave-sync-function-file-names)
13421 (octave-help, octave-find-definition-default-filename)
13422 (octave-find-definition):
13423 Respect text quoting style in doc strings and diagnostics.
13424 * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
13425 * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
13426 * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
13427 Escape apostrophes in doc strings.
13428 * lisp/progmodes/cmacexp.el (c-macro-expansion):
13429 Use straight quoting in ASCII comment.
13430 * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
13431 (idlwave-pad-keyword):
13432 * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
13433 (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
13434 (vhdl-electric-semicolon, vhdl-electric-comma)
13435 (vhdl-electric-period, vhdl-electric-equal):
13436 Use directed quotes in diagnostics and doc strings.
13437
13438 2015-08-30 Xue Fuqiao <xfq.free@gmail.com>
13439
13440 Minor documentation and NEWS tweak
13441 * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
13442 Add an index entry.
13443 * etc/NEWS: Fix a typo in character-fold-to-regexp.
13444
13445 2015-08-30 Michael Albinus <michael.albinus@gmx.de>
13446
13447 * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
13448 Revert patch from 2015-08-24. Tramp shall behave like for local files.
13449 * test/automated/tramp-tests.el (tramp-test18-file-attributes):
13450 Adapt test.
13451
13452 2015-08-30 Paul Eggert <eggert@cs.ucla.edu>
13453
13454 Text quoting fixes in cedet, emulation, emacs-lisp
13455 * lisp/cedet/ede.el (ede-check-project-directory):
13456 * lisp/cedet/semantic/analyze/debug.el
13457 (semantic-analyzer-debug-insert-include-summary):
13458 * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
13459 * lisp/cedet/semantic/decorate/include.el
13460 (semantic-decoration-unknown-include-describe)
13461 (semantic-decoration-all-include-summary):
13462 * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
13463 * lisp/emulation/edt.el (edt-load-keys):
13464 * lisp/emulation/viper-cmd.el
13465 (viper-display-current-destructive-command)
13466 (viper-query-replace, viper-brac-function):
13467 * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
13468 * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
13469 Respect text quoting style in doc string or diagnostic.
13470 * lisp/cedet/mode-local.el (describe-mode-local-overload):
13471 Use format-message to avoid overtranslating quotes.
13472 * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
13473 Escape an apostrophe in a docstring.
13474 * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
13475
13476 2015-08-29 Daniel Colascione <dancol@dancol.org>
13477
13478 Fix which-func for curly quotes: look for symbol, not message
13479 * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
13480 imenu-unavailable error symbol instead of trying to match message
13481 exactly.
13482 * lisp/imenu.el (imenu-unavailable): New error.
13483 (imenu-unavailable-error): New function.
13484
13485 2015-08-29 Eli Zaretskii <eliz@gnu.org>
13486
13487 Fix Python tests on MS-Windows
13488 * test/automated/python-tests.el
13489 (python-shell-calculate-command-1): Run python-shell-interpreter
13490 through shell-quote-argument before comparing with what
13491 python-shell-calculate-command returns.
13492 (python-shell-calculate-pythonpath-1)
13493 (python-shell-calculate-pythonpath-2)
13494 (python-shell-calculate-process-environment-2): Use path-separator
13495 instead of a literal ':'.
13496 (python-shell-calculate-exec-path-2)
13497 (python-shell-calculate-exec-path-3)
13498 (python-shell-calculate-exec-path-4)
13499 (python-shell-with-environment-1)
13500 (python-shell-with-environment-2): Run "/env/bin" through
13501 expand-file-name before comparing with exec-path. (Bug#21375)
13502
13503 2015-08-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13504
13505 Use Core Text types/functions/variables/enumerators directly
13506 * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
13507 (CharacterCollection): Remove typedefs. All uses replaced with
13508 definitions.
13509 (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
13510 (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
13511 (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
13512 (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
13513 (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
13514 (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
13515 (MAC_FONT_SLANT_TRAIT): Remove macros. All uses replaced with
13516 definitions.
13517 (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
13518 (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
13519 (MAC_FONT_FORMAT_BITMAP)
13520 (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
13521 (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
13522 All uses replaced with definitions.
13523 (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
13524 (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
13525 (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
13526 Add compatibility enumerators for older versions.
13527 (mac_font_descriptor_create_with_attributes)
13528 (mac_font_descriptor_create_matching_font_descriptors)
13529 (mac_font_descriptor_create_matching_font_descriptor)
13530 (mac_font_descriptor_copy_attribute)
13531 (mac_font_descriptor_supports_languages)
13532 (mac_font_create_with_name, mac_font_get_size)
13533 (mac_font_copy_family_name, mac_font_copy_character_set)
13534 (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
13535 (mac_font_get_descent, mac_font_get_leading)
13536 (mac_font_get_underline_position)
13537 (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
13538 (mac_font_copy_non_synthetic_table): Remove macros. All uses
13539 replaced with definitions.
13540 (mac_font_create_preferred_family_for_attributes)
13541 (mac_font_get_advance_width_for_glyph)
13542 (mac_font_get_bounding_rect_for_glyph)
13543 (mac_font_create_available_families, mac_font_shape):
13544 Remove macros for renamed functions.
13545 (mac_nsctfont_copy_font_descriptor): Remove unused macro.
13546 * src/macterm.m (mac_font_descriptor_supports_languages):
13547 Rename from mac_ctfont_descriptor_supports_languages.
13548 (mac_font_create_preferred_family_for_attributes): Rename from
13549 mac_ctfont_create_preferred_family_for_attributes.
13550 (mac_font_get_advance_width_for_glyph): Rename from
13551 mac_ctfont_get_advance_width_for_glyph.
13552 Use kCTFontOrientationDefault also for older versions.
13553 (mac_font_get_bounding_rect_for_glyph): Rename from
13554 mac_ctfont_get_bounding_rect_for_glyph.
13555 Use kCTFontOrientationDefault also for older versions.
13556 (mac_font_create_available_families): Rename from
13557 mac_ctfont_create_available_families.
13558 (mac_font_equal_in_postscript_name): Rename from
13559 mac_ctfont_equal_in_postscript_name. All uses changed.
13560 (mac_font_create_line_with_string_and_font): Rename from
13561 mac_ctfont_create_line_with_string_and_font. All uses changed.
13562 (mac_font_shape): Rename from mac_ctfont_shape.
13563 (mac_font_family_compare): Remove unused declaration.
13564
13565 2015-08-29 Paul Eggert <eggert@cs.ucla.edu>
13566
13567 Fix minor text quoting in calc, calendar, vc
13568 * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
13569 * lisp/calc/calc-help.el (calc-j-prefix-help):
13570 * lisp/calc/calc-misc.el (calc-help):
13571 * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
13572 Escape an apostrophe in a docstring.
13573 * lisp/calc/calc-forms.el (calc-hms-notation):
13574 * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
13575 Escape an apostrophe in a diagnostic.
13576 * lisp/calc/calc-misc.el (calc-help):
13577 * lisp/calendar/diary-lib.el (diary-include-files):
13578 * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
13579 * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
13580 * lisp/vc/ediff-diff.el (ediff-same-contents):
13581 * lisp/vc/ediff-merg.el (ediff-re-merge):
13582 * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
13583 * lisp/vc/ediff-util.el (ediff-test-save-region)
13584 (ediff-status-info):
13585 * lisp/vc/ediff.el (ediff-merge-revisions)
13586 (ediff-merge-revisions-with-ancestor):
13587 * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
13588 * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
13589 Respect text quoting style in doc string or diagnostic.
13590 * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
13591 * lisp/vc/add-log.el (change-log-goto-source):
13592 Avoid double-formatting.
13593 * lisp/vc/ediff-init.el (format-message):
13594 New backward-compatibility alias.
13595
13596 2015-08-28 Paul Eggert <eggert@cs.ucla.edu>
13597
13598 Fix minor text quoting problems in lisp top level
13599 * lisp/apropos.el (apropos-describe-plist):
13600 * lisp/cus-theme.el (customize-themes):
13601 * lisp/dired.el (dired-log):
13602 * lisp/help-fns.el (describe-variable):
13603 * lisp/hexl.el (hexl-insert-multibyte-char):
13604 * lisp/info.el (Info-finder-find-node):
13605 * lisp/json.el (json-read-string):
13606 * lisp/novice.el (disabled-command-function)
13607 (disabled-command-function):
13608 * lisp/startup.el (normal-mouse-startup-screen):
13609 * lisp/woman.el (WoMan-log, WoMan-warn):
13610 Respect text quoting style in doc string or diagnostic.
13611 * lisp/replace.el (replace-character-fold):
13612 * src/syntax.c (Fmodify_syntax_entry):
13613 Escape an apostrophe in a docstring.
13614 * lisp/tempo.el (tempo-define-template):
13615 Remove confusing apostrophe from docstring.
13616 * lisp/whitespace.el (whitespace-mark-x):
13617 Use directed quotes in docstring.
13618
13619 2015-08-28 Simen Heggestøyl <simenheg@gmail.com>
13620
13621 Fix indentation rule in css-mode
13622 * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
13623 brackets in presence of pseudo-selectors. (Bug#21328)
13624
13625 2015-08-28 Eli Zaretskii <eliz@gnu.org>
13626
13627 Fix a bug in recording a macro while flyspell-mode is active
13628 * lisp/subr.el (sit-for): Don't call read-event when recording a
13629 macro. (Bug#21329)
13630
13631 2015-08-27 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
13632
13633 Tweak startup screen quoting
13634 * lisp/startup.el (normal-splash-screen): Use standard
13635 "M-" abbrevation rather than a confusingly-different one.
13636 (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
13637
13638 2015-08-27 Paul Eggert <eggert@cs.ucla.edu>
13639
13640 Add test case for ‘format’ bug and refactor
13641 * src/editfns.c (styled_format): Refactor internally, mostly by
13642 moving declarations closer to uses. This should not affect behavior.
13643 * test/automated/textprop-tests.el (textprop-tests-format): New test.
13644
13645 Fix ‘format’ bug with property offsets
13646 * src/editfns.c (styled_format): Fix recently-introduced ‘format’
13647 bug in calculating string property offsets (Bug#21351).
13648
13649 Use straight quotes in lib-src diagnostics
13650 These auxiliary programs can’t use Emacs’s text-quoting-style,
13651 and it’s too much trouble to redo that mechanism by hand.
13652 So just use straight quotes for now.
13653 * lib-src/ebrowse.c (main):
13654 * lib-src/emacsclient.c (decode_options, main):
13655 * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
13656 (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
13657 (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
13658 (none_help, print_language_names, print_help, add_regex)
13659 (suggest_asking_for_help):
13660 * lib-src/make-docfile.c (write_c_args, scan_c_stream):
13661 Use straight quotes in diagnostics.
13662
13663 ‘text-quoting-style’ fixes for admin
13664 * admin/admin.el (cusver-scan, cusver-check):
13665 * admin/authors.el (authors-canonical-file-name):
13666 * admin/bzrmerge.el (bzrmerge-missing):
13667 Respect ‘text-quoting-style’ in diagnostics.
13668
13669 2015-08-26 Paul Eggert <eggert@cs.ucla.edu>
13670
13671 Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
13672 This removes the need for GCPRO1 etc. Suggested by Stefan Monnier in:
13673 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
13674 * doc/lispref/internals.texi (Writing Emacs Primitives):
13675 * etc/NEWS:
13676 Document the change.
13677 * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
13678 (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
13679 (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
13680 * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
13681 * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
13682 * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
13683 (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
13684 (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
13685 (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
13686 (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
13687 Remove. All uses removed. The code now assumes
13688 GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
13689 * src/bytecode.c (relocate_byte_stack):
13690 Rename from unmark_byte_stack, since it now only relocates.
13691 All callers changed.
13692 * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
13693 with GCPROs removed.
13694 * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
13695 * test/automated/finalizer-tests.el (finalizer-basic)
13696 (finalizer-circular-reference, finalizer-cross-reference)
13697 (finalizer-error):
13698 * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
13699 Remove tests, as they depend on gc-precise.
13700
13701 2015-08-26 Nicolas Petton <nicolas@petton.fr>
13702
13703 Improve seq-concatenate for new sequence types
13704 Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
13705 ensure that concatenation happens on sequences only. This makes it
13706 possible to use `seq-concatenate' for new types of seqs.
13707 * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
13708 New function used in `seq-concatenate'.
13709 * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
13710 for seq-into-sequence.
13711
13712 2015-08-26 Stephen Leake <stephen_leake@stephe-leake.org>
13713
13714 Add mode local overrides to xref-find-definitions
13715 * lisp/cedet/mode-local.el (xref-mode-local--override-present)
13716 (xref-mode-local-overload): New; add mode local overrides to
13717 xref-find-definitions.
13718 * test/automated/elisp-mode-tests.el: Add mode local override tests.
13719 (xref-elisp-test-run): Handle indented defuns.
13720 (xref-elisp-generic-*): Improve doc strings.
13721 * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
13722 (elisp--xref-find-definitions): Use it.
13723
13724 Add mode local overrides to describe-function
13725 * lisp/cedet/mode-local.el (describe-mode-local-overload):
13726 New; add mode local overrides to describe-function.
13727 * etc/NEWS: Document change.
13728
13729 2015-08-26 Paul Eggert <eggert@cs.ucla.edu>
13730
13731 Prefer straight quoting in some etc text files
13732 These files are plain text and might be used by non-Emacs apps.
13733 They’re mostly ASCII, so just use straight quotes.
13734
13735 Fix quoting in ‘message_with_string’
13736 * src/nsfont.m (nsfont_open): Use directed quotes in format; they
13737 should work now.
13738 * src/xdisp.c (message_to_stderr): New function, refactored from
13739 part of ‘message3_nolog’.
13740 (message3_nolog): Use it.
13741 (message_with_string): Use it. Don’t mishandle NUL bytes when
13742 noninteractive. Prefer AUTO_STRING when it’s most likely faster.
13743 Use ‘format-message’, not ‘format’, so that quotes are translated.
13744
13745 2015-08-26 Eli Zaretskii <eliz@gnu.org>
13746
13747 Mention false positives of file-accessible-directory on w32
13748 * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
13749 (Bug#21346)
13750
13751 2015-08-26 Paul Eggert <eggert@cs.ucla.edu>
13752
13753 Treat error strings as help
13754 * src/print.c (print_error_message): Translate quotes and command
13755 keys in errmsg so that users see, e.g., "Symbol’s value as
13756 variable is void: foo" when text-quoting-style is curved.
13757
13758 2015-08-26 Michael Albinus <michael.albinus@gmx.de>
13759
13760 * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
13761
13762 2015-08-26 Paul Eggert <eggert@cs.ucla.edu>
13763
13764 Top-level elisp files respect ‘text-quoting-style’
13765 In top-level elisp files, use format-message in diagnostic formats,
13766 so that they follow user preference as per ‘text-quoting-style’
13767 rather than being hard-coded to quote `like this'.
13768 * lisp/allout.el (allout-get-configvar-values):
13769 * lisp/apropos.el (apropos-symbols-internal):
13770 * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
13771 (dired-do-create-files-regexp, dired-create-files-non-directory):
13772 * lisp/dired-x.el (dired-do-run-mail):
13773 * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
13774 * lisp/disp-table.el (standard-display-european):
13775 * lisp/find-dired.el (find-dired):
13776 * lisp/forms.el (forms-mode):
13777 * lisp/ido.el (ido-buffer-internal):
13778 * lisp/info.el (Info-index-next):
13779 * lisp/outline.el (outline-invent-heading):
13780 * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
13781 * lisp/proced.el (proced-log):
13782 * lisp/ps-print.el (ps-print-preprint, ps-get-size):
13783 * lisp/recentf.el (recentf-open-files, recentf-save-list):
13784 * lisp/savehist.el (savehist-save):
13785 * lisp/server.el (server-ensure-safe-dir):
13786 * lisp/ses.el (ses-rename-cell):
13787 * lisp/simple.el (list-processes--refresh):
13788 * lisp/startup.el (command-line):
13789 * lisp/strokes.el (strokes-unset-last-stroke)
13790 (strokes-execute-stroke):
13791 Use format-message so that quotes are restyled.
13792 * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
13793 Don’t quote ‘raised’.
13794 * lisp/descr-text.el (describe-char):
13795 * lisp/dirtrack.el (dirtrack-debug-message):
13796 * lisp/hexl.el (hexl-insert-multibyte-char):
13797 Apply substitute-command-keys to help string.
13798 * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
13799 (wdired-do-perm-changes):
13800 Let dired-log do the formatting.
13801
13802 2015-08-25 Paul Eggert <eggert@cs.ucla.edu>
13803
13804 Go back to grave quoting in Tramp
13805 * lisp/net/tramp-adb.el:
13806 * lisp/net/tramp-cache.el:
13807 * lisp/net/tramp-compat.el:
13808 * lisp/net/tramp-gvfs.el:
13809 * lisp/net/tramp-gw.el:
13810 * lisp/net/tramp-sh.el:
13811 * lisp/net/tramp-smb.el:
13812 * lisp/net/tramp.el:
13813 Stick with grave quoting in diagnostics strings. This is more
13814 portable to older Emacs, desirable for Tramp.
13815 * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
13816 for diagnostic that needs requoting.
13817 * lisp/net/tramp-compat.el (format-message):
13818 Fall back on simple ‘format’, since that’s good enough now.
13819
13820 Go back to grave quoting in Gnus
13821 * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
13822 * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
13823 (gnus-agent-fetch-headers):
13824 * lisp/gnus/gnus-int.el (gnus-start-news-server):
13825 * lisp/gnus/gnus-registry.el:
13826 (gnus-registry--split-fancy-with-parent-internal)
13827 (gnus-registry-post-process-groups):
13828 * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
13829 * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
13830 * lisp/gnus/gnus-topic.el (gnus-topic-rename):
13831 * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
13832 * lisp/gnus/spam.el (spam-check-blackholes):
13833 Stick with grave quoting in diagnostics strings. This is more
13834 portable to older Emacs, desirable for Gnus.
13835
13836 Fix customization of text-quoting-style
13837 * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
13838 * lisp/wid-edit.el (widget-docstring):
13839 Get raw docstring here since it’s cooked later and should not be
13840 cooked twice.
13841 * lisp/cus-edit.el (custom-group-value-create):
13842 Cook the docstring before inserting it.
13843 * lisp/cus-start.el (text-quoting-style): Quote the customization
13844 docstrings according to the new rules. Give curved examples.
13845
13846 format-message now curves ` and '
13847 That way, the caller doesn’t have to use curved quotes to
13848 get diagnostics that match the text-quoting-style preferences.
13849 Suggested by Dmitry Gutov in:
13850 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
13851 This means we no longer need %qs, so remove that format.
13852 While we’re at it, fix an unlikely bug and lessen the pressure
13853 on the garbage collector by processing the string once rather
13854 than twice in the usual case.
13855 * doc/lispref/strings.texi (Formatting Strings):
13856 * etc/NEWS: Document this.
13857 * lisp/subr.el (format-message): Remove; now done in C.
13858 * src/callint.c (Fcall_interactively):
13859 * src/editfns.c (Fmessage, Fmessage_box):
13860 Use Fformat_message instead of Finternal__text_restyle
13861 followed by Fformat.
13862 * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
13863 uLSQM and uRSQM.
13864 (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
13865 when pure ASCII now suffices. Fix unlikely bug when parsing
13866 unibyte string containing non-ASCII bytes. Use inline code
13867 rather than memcpy, as it’s a tiny number of bytes.
13868 (Finternal__text_restyle): Remove; no longer used.
13869 (syms_of_doc): Don’t declare it.
13870 * src/editfns.c (Fformat): Rewrite in terms of new function
13871 ‘styled_format’.
13872 (Fformat_message): New function, moved here from subr.el.
13873 (styled_format): New function, with the old guts of Fformat,
13874 except it now optionally transliterates quotes, and it transliterates
13875 traditional grave accent and apostrophe quoting as well.
13876 Remove recently-added q flag; no longer needed or used.
13877 (syms_of_editfns): Define format-message.
13878 * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
13879 Remove; no longer need to be global symbols.
13880 * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
13881 so that callers can use `%s'.
13882 * src/image.c (image_size_error, xbm_load_image, xbm_load)
13883 (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
13884 (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
13885 (svg_load_image, gs_load, x_kill_gs_process):
13886 * src/lread.c (load_warn_old_style_backquotes):
13887 * src/xfaces.c (load_pixmap):
13888 * src/xselect.c (x_clipboard_manager_error_1):
13889 Use `%s' instead of %qs in formats.
13890
13891 2015-08-25 Eli Zaretskii <eliz@gnu.org>
13892
13893 Minor fixes in doc/emacs/search.texi
13894 * doc/emacs/search.texi (Basic Isearch): Fix a typo.
13895 (Special Isearch): Use @w{} to generate several consecutive spaces
13896 with Texinfo 6. (Bug#21345)
13897
13898 2015-08-25 Michael Albinus <michael.albinus@gmx.de>
13899
13900 * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
13901 (tramp-awk-coding-test): New defconsts.
13902 (tramp-remote-coding-commands): Use them.
13903 (tramp-find-inline-encoding): Check for Perl only if necessary.
13904
13905 2015-08-25 Xue Fuqiao <xfq.free@gmail.com>
13906
13907 * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
13908 index entries for the special form `quote'.
13909
13910 2015-08-25 Paul Eggert <eggert@cs.ucla.edu>
13911
13912 Spelling fixes
13913
13914 Gnus format-message typo fix
13915 * lisp/gnus/gnus-util.el (gnus-format-message):
13916 Fix typo when running in older Emacs.
13917
13918 Prefer directed to neutral quotes in docstings and diagnostics.
13919 In docstrings, escape apostrophes that would otherwise be translated
13920 to curved quotes using the newer, simpler rules.
13921 * admin/unidata/unidata-gen.el (unidata-gen-table):
13922 * lisp/align.el (align-region):
13923 * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
13924 * lisp/bookmark.el (bookmark-default-annotation-text):
13925 * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
13926 * lisp/calc/calc-lang.el (math-read-giac-subscr)
13927 (math-read-math-subscr):
13928 * lisp/calc/calc-misc.el (report-calc-bug):
13929 * lisp/calc/calc-prog.el (calc-fix-token-name)
13930 (calc-read-parse-table-part):
13931 * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
13932 * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
13933 * lisp/dabbrev.el (dabbrev-expand):
13934 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
13935 * lisp/emacs-lisp/elint.el (elint-get-top-forms):
13936 * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
13937 * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
13938 * lisp/erc/erc-button.el (erc-nick-popup):
13939 * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
13940 * lisp/eshell/em-dirs.el (eshell/cd):
13941 * lisp/eshell/em-glob.el (eshell-glob-regexp):
13942 * lisp/eshell/em-pred.el (eshell-parse-modifiers):
13943 * lisp/eshell/esh-arg.el (eshell-parse-arguments):
13944 * lisp/eshell/esh-opt.el (eshell-show-usage):
13945 * lisp/files-x.el (modify-file-local-variable):
13946 * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
13947 (filesets-update-pre010505):
13948 * lisp/find-cmd.el (find-generic, find-to-string):
13949 * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
13950 * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
13951 (gnus-agent-fetch-headers):
13952 * lisp/gnus/gnus-int.el (gnus-start-news-server):
13953 * lisp/gnus/gnus-registry.el:
13954 (gnus-registry--split-fancy-with-parent-internal):
13955 * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
13956 * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
13957 * lisp/gnus/gnus-topic.el (gnus-topic-rename):
13958 * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
13959 * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
13960 * lisp/gnus/spam.el (spam-check-blackholes):
13961 * lisp/mail/feedmail.el (feedmail-run-the-queue):
13962 * lisp/mpc.el (mpc-playlist-rename):
13963 * lisp/net/ange-ftp.el (ange-ftp-shell-command):
13964 * lisp/net/mairix.el (mairix-widget-create-query):
13965 * lisp/net/tramp-cache.el:
13966 * lisp/obsolete/otodo-mode.el (todo-more-important-p):
13967 * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
13968 * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
13969 * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
13970 * lisp/org/ob-core.el (org-babel-goto-named-src-block)
13971 (org-babel-goto-named-result):
13972 * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
13973 * lisp/org/ob-ref.el (org-babel-ref-resolve):
13974 * lisp/org/org-agenda.el (org-agenda-prepare):
13975 * lisp/org/org-bibtex.el (org-bibtex-fields):
13976 * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
13977 (org-clock-resolve):
13978 * lisp/org/org-feed.el (org-feed-parse-atom-entry):
13979 * lisp/org/org-habit.el (org-habit-parse-todo):
13980 * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
13981 (org-mouse-context-menu):
13982 * lisp/org/org-table.el (org-table-edit-formulas):
13983 * lisp/org/ox.el (org-export-async-start):
13984 * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
13985 (dun-rooms, dun-endgame-questions):
13986 * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
13987 * lisp/progmodes/ada-xref.el (ada-find-executable):
13988 * lisp/progmodes/antlr-mode.el (antlr-options-alists):
13989 * lisp/progmodes/flymake.el (flymake-parse-err-lines)
13990 (flymake-start-syntax-check-process):
13991 * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
13992 * lisp/progmodes/sql.el (sql-comint):
13993 * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
13994 * lisp/server.el (server-get-auth-key):
13995 * lisp/subr.el (version-to-list):
13996 * lisp/textmodes/reftex-ref.el (reftex-label):
13997 * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
13998 * lisp/vc/ediff-diff.el (ediff-same-contents):
13999 * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
14000 * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
14001 Use directed rather than neutral quotes in diagnostics.
14002
14003 Treat ' like ’ even when not matching `
14004 This is simpler and easier to explain, and should encourage better
14005 typography. Do this in Electric Quote mode and when translating
14006 quotes in docstrings. Inspired by a suggestion by Dmitry Gutov in:
14007 https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
14008 * doc/emacs/text.texi (Quotation Marks):
14009 * doc/lispref/help.texi (Keys in Documentation):
14010 * etc/NEWS:
14011 Document this.
14012 * lisp/electric.el (electric-quote-post-self-insert-function):
14013 * src/doc.c (Fsubstitute_command_keys):
14014 Always treat ' like ’ even when not matched by an open quote.
14015
14016 2015-08-25 Glenn Morris <rgm@gnu.org>
14017
14018 * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
14019 * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
14020
14021 2015-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14022
14023 * src/macfont.m (macfont_create_family_with_symbol):
14024 Accept localized names.
14025
14026 2015-08-24 Paul Eggert <eggert@cs.ucla.edu>
14027
14028 Tramp diagnostics as per ‘text-quoting-style’
14029 * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
14030 (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
14031 (tramp-adb-handle-delete-directory)
14032 (tramp-adb-handle-delete-file)
14033 (tramp-adb-handle-file-local-copy)
14034 (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
14035 (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
14036 (tramp-adb-maybe-open-connection):
14037 * lisp/net/tramp-cache.el:
14038 * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
14039 (tramp-compat-octal-to-decimal)
14040 (tramp-compat-coding-system-change-eol-conversion):
14041 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
14042 (tramp-gvfs-do-copy-or-rename-file)
14043 (tramp-gvfs-handle-delete-directory)
14044 (tramp-gvfs-handle-delete-file)
14045 (tramp-gvfs-handle-expand-file-name)
14046 (tramp-gvfs-handle-file-local-copy)
14047 (tramp-gvfs-handle-file-notify-add-watch)
14048 (tramp-gvfs-handle-make-directory)
14049 (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
14050 * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
14051 (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
14052 * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
14053 (tramp-sh-handle-set-visited-file-modtime)
14054 (tramp-sh-handle-set-file-modes)
14055 (tramp-sh-handle-file-name-all-completions)
14056 (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
14057 (tramp-do-copy-or-rename-file-directly)
14058 (tramp-do-copy-or-rename-file-out-of-band)
14059 (tramp-sh-handle-make-directory)
14060 (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
14061 (tramp-sh-handle-insert-directory, tramp-process-sentinel)
14062 (tramp-sh-handle-start-file-process)
14063 (tramp-sh-handle-file-local-copy)
14064 (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
14065 (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
14066 (tramp-find-file-exists-command, tramp-open-shell)
14067 (tramp-find-shell)
14068 (tramp-open-connection-setup-interactive-shell)
14069 (tramp-find-inline-encoding, tramp-find-inline-compress)
14070 (tramp-compute-multi-hops, tramp-maybe-open-connection)
14071 (tramp-wait-for-output, tramp-send-command-and-check)
14072 (tramp-send-command-and-read, tramp-get-remote-path)
14073 (tramp-get-ls-command, tramp-get-ls-command-with-dired)
14074 (tramp-get-ls-command-with-quoting-style)
14075 (tramp-get-test-command, tramp-get-remote-ln)
14076 (tramp-get-remote-perl, tramp-get-remote-stat)
14077 (tramp-get-remote-readlink, tramp-get-remote-trash)
14078 (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
14079 (tramp-get-remote-inotifywait, tramp-get-remote-id)
14080 (tramp-get-remote-python):
14081 * lisp/net/tramp-smb.el (tramp-smb-errors)
14082 (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
14083 (tramp-smb-handle-delete-directory)
14084 (tramp-smb-handle-delete-file)
14085 (tramp-smb-handle-file-local-copy)
14086 (tramp-smb-handle-make-directory)
14087 (tramp-smb-handle-make-directory-internal)
14088 (tramp-smb-handle-make-symbolic-link)
14089 (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
14090 (tramp-smb-handle-set-file-modes)
14091 (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
14092 * lisp/net/tramp.el (tramp-debug-message, tramp-error)
14093 (tramp-process-actions):
14094 Generate diagnostics according to ‘text-quoting-style’, by
14095 using curved quotes in format strings and ‘format-message’
14096 when appropriate.
14097 * lisp/net/tramp-compat.el (format-message):
14098 Define a replacement, if it’s an older version of Emacs
14099 that doesn’t have it already.
14100
14101 * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
14102
14103 2015-08-24 Xue Fuqiao <xfq.free@gmail.com>
14104
14105 Fix documentation for `save-excursion'
14106 * doc/lispref/positions.texi (Excursions):
14107 * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
14108 (Template for save-excursion, Point and mark): `save-excursion'
14109 does not save&restore the mark any more.
14110
14111 2015-08-24 Michael Albinus <michael.albinus@gmx.de>
14112
14113 * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
14114 New defconsts.
14115 (tramp-do-file-attributes-with-stat)
14116 (tramp-do-directory-files-and-attributes-with-stat): Use them.
14117 (tramp-convert-file-attributes): Remove double slashes in symlinks.
14118 * test/automated/tramp-tests.el (tramp-test18-file-attributes):
14119 Handle symlinks with "//" in the file name.
14120
14121 Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
14122
14123 2015-08-24 Nicolas Petton <nicolas@petton.fr>
14124
14125 Fix cl-subseq and cl-concatenate
14126 * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
14127 seq functions.
14128 * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
14129 seq-concatenate.
14130
14131 2015-08-24 Pip Cet <pipcet@gmail.com> (tiny change)
14132
14133 Fix full-screen code when there is no window manager (Bug#21317)
14134 * src/xterm.h (x_wm_supports): Declare external.
14135 * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
14136 (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
14137 (x_check_fullscreen): Call `x_wm_set_size_hint', restore
14138 `fullscreen' frame parameter.
14139 * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
14140 without a window manager.
14141
14142 2015-08-24 Glenn Morris <rgm@gnu.org>
14143
14144 * lisp/version.el (emacs-version): No longer include build host.
14145 * doc/lispref/intro.texi (Version Info): Update example.
14146
14147 2015-08-24 Paul Eggert <eggert@cs.ucla.edu>
14148
14149 * doc/lispref/elisp.texi: Fix typo in previous change.
14150
14151 More-conservative ‘format’ quote restyling
14152 Instead of restyling curved quotes for every call to ‘format’,
14153 create a new function ‘format-message’ that does the restyling,
14154 and using the new function instead of ‘format’ only in contexts
14155 where this seems appropriate.
14156 Problem reported by Dmitry Gutov and Andreas Schwab in:
14157 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
14158 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
14159 * doc/lispref/commands.texi (Using Interactive):
14160 * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
14161 * doc/lispref/display.texi (Displaying Messages, Progress):
14162 * doc/lispref/elisp.texi:
14163 * doc/lispref/help.texi (Keys in Documentation):
14164 * doc/lispref/minibuf.texi (Minibuffer Misc):
14165 * doc/lispref/strings.texi (Formatting Strings):
14166 * etc/NEWS:
14167 Document the changes.
14168 * lisp/abbrev.el (expand-region-abbrevs):
14169 * lisp/apropos.el (apropos-library):
14170 * lisp/calc/calc-ext.el (calc-record-message)
14171 (calc-user-function-list):
14172 * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
14173 * lisp/calc/calc-lang.el (math-read-big-balance):
14174 * lisp/calc/calc-store.el (calc-edit-variable):
14175 * lisp/calc/calc-units.el (math-build-units-table-buffer):
14176 * lisp/calc/calc-yank.el (calc-edit-mode):
14177 * lisp/calendar/icalendar.el (icalendar-export-region)
14178 (icalendar--add-diary-entry):
14179 * lisp/cedet/mode-local.el (mode-local-print-binding)
14180 (mode-local-describe-bindings-2):
14181 * lisp/cedet/semantic/complete.el (semantic-completion-message):
14182 * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
14183 * lisp/cedet/semantic/wisent/comp.el (wisent-log):
14184 * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
14185 * lisp/descr-text.el (describe-text-properties-1, describe-char):
14186 * lisp/dframe.el (dframe-message):
14187 * lisp/dired-aux.el (dired-query):
14188 * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
14189 * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
14190 (byte-compile-log-file, byte-compile-warn, byte-compile-form):
14191 * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
14192 (cconv-analyze-form):
14193 * lisp/emacs-lisp/check-declare.el (check-declare-warn):
14194 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
14195 * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
14196 * lisp/emacs-lisp/edebug.el (edebug-format):
14197 * lisp/emacs-lisp/eieio-core.el (eieio-oref):
14198 * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
14199 (eldoc-message):
14200 * lisp/emacs-lisp/elint.el (elint-file, elint-log):
14201 * lisp/emacs-lisp/find-func.el (find-function-library):
14202 * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
14203 * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
14204 * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
14205 * lisp/emacs-lisp/package.el (package-compute-transaction)
14206 (package-install-button-action, package-delete-button-action)
14207 (package-menu--list-to-prompt):
14208 * lisp/emacs-lisp/timer.el (timer-event-handler):
14209 * lisp/emacs-lisp/warnings.el (lwarn, warn):
14210 * lisp/emulation/viper-cmd.el:
14211 (viper-toggle-parse-sexp-ignore-comments)
14212 (viper-kill-buffer, viper-brac-function):
14213 * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
14214 * lisp/facemenu.el (facemenu-add-new-face):
14215 * lisp/faces.el (face-documentation, read-face-name)
14216 (face-read-string, read-face-font, describe-face):
14217 * lisp/files.el (find-alternate-file, hack-local-variables)
14218 (hack-one-local-variable--obsolete, write-file)
14219 (basic-save-buffer, delete-directory):
14220 * lisp/format.el (format-write-file, format-find-file)
14221 (format-insert-file):
14222 * lisp/help-fns.el (help-fns--key-bindings)
14223 (help-fns--compiler-macro, help-fns--obsolete)
14224 (help-fns--interactive-only, describe-function-1)
14225 (describe-variable):
14226 * lisp/help.el (describe-mode):
14227 * lisp/info-xref.el (info-xref-output):
14228 * lisp/info.el (Info-virtual-index-find-node)
14229 (Info-virtual-index, info-apropos):
14230 * lisp/international/kkc.el (kkc-error):
14231 * lisp/international/mule-cmds.el:
14232 (select-safe-coding-system-interactively)
14233 (select-safe-coding-system, describe-input-method):
14234 * lisp/international/mule-conf.el (code-offset):
14235 * lisp/international/mule-diag.el (describe-character-set)
14236 (list-input-methods-1):
14237 * lisp/international/quail.el (quail-error):
14238 * lisp/minibuffer.el (minibuffer-message):
14239 * lisp/mpc.el (mpc--debug):
14240 * lisp/msb.el (msb--choose-menu):
14241 * lisp/net/ange-ftp.el (ange-ftp-message):
14242 * lisp/net/gnutls.el (gnutls-message-maybe):
14243 * lisp/net/newst-backend.el (newsticker--sentinel-work):
14244 * lisp/net/newst-treeview.el (newsticker--treeview-load):
14245 * lisp/net/nsm.el (nsm-query-user):
14246 * lisp/net/rlogin.el (rlogin):
14247 * lisp/net/soap-client.el (soap-warning):
14248 * lisp/net/tramp.el (tramp-debug-message):
14249 * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
14250 * lisp/nxml/nxml-parse.el (nxml-parse-error):
14251 * lisp/nxml/rng-cmpct.el (rng-c-error):
14252 * lisp/nxml/rng-match.el (rng-compile-error):
14253 * lisp/nxml/rng-uri.el (rng-uri-error):
14254 * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
14255 * lisp/org/org-ctags.el:
14256 (org-ctags-ask-rebuild-tags-file-then-find-tag):
14257 * lisp/proced.el (proced-log):
14258 * lisp/progmodes/ebnf2ps.el (ebnf-log):
14259 * lisp/progmodes/flymake.el (flymake-log):
14260 * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
14261 * lisp/replace.el (occur-1):
14262 * lisp/simple.el (execute-extended-command)
14263 (undo-outer-limit-truncate, define-alternatives):
14264 * lisp/startup.el (command-line):
14265 * lisp/subr.el (error, user-error, add-to-list):
14266 * lisp/tutorial.el (tutorial--describe-nonstandard-key)
14267 (tutorial--find-changed-keys):
14268 * src/callint.c (Fcall_interactively):
14269 * src/editfns.c (Fmessage, Fmessage_box):
14270 Restyle the quotes of format strings intended for use as a
14271 diagnostic, when restyling seems appropriate.
14272 * lisp/subr.el (format-message): New function.
14273 * src/doc.c (Finternal__text_restyle): New function.
14274 (syms_of_doc): Define it.
14275
14276 2015-08-23 Paul Eggert <eggert@cs.ucla.edu>
14277
14278 * etc/NEWS: The new ‘q’ flag is not an incompatible change.
14279
14280 2015-08-23 Fabián Ezequiel Gallina <fgallina@gnu.org>
14281
14282 python.el: Fix python-shell-buffer-substring on indented code
14283 (Bug#21086)
14284 * lisp/progmodes/python.el (python-shell-buffer-substring):
14285 Respect current line indentation when calculating string.
14286 * test/automated/python-tests.el
14287 (python-shell-buffer-substring-10)
14288 (python-shell-buffer-substring-11)
14289 (python-shell-buffer-substring-12): New tests.
14290
14291 2015-08-23 Paul Eggert <eggert@cs.ucla.edu>
14292
14293 Fix minor glitches from ‘format’ reversion
14294 * doc/lispref/strings.texi (Formatting Strings):
14295 After reversion, ‘text-quoting-style’ is documented in ‘Keys in
14296 Documentation’, not below.
14297 * src/syntax.c (Finternal_describe_syntax_value):
14298 Prefer AUTO_STRING to build_string where either will do, as
14299 AUTO_STRING is a bit faster.
14300
14301 2015-08-23 Fabián Ezequiel Gallina <fgallina@gnu.org>
14302
14303 python.el: Defer shell setup code until first interactive prompt
14304 * lisp/progmodes/python.el
14305 (python-shell-comint-watch-for-first-prompt-output-filter):
14306 New function.
14307 (inferior-python-mode): Use it.
14308 (python-shell-first-prompt-hook): New hook.
14309 (python-shell-send-setup-code)
14310 (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
14311 this hook instead of inferior-python-hook.
14312
14313 2015-08-23 Nicolas Petton <nicolas@petton.fr>
14314
14315 Remove the calls to `seq-into` from `seq-concatenate`
14316 Since most new types of seq would have to be defined as sequences (cons
14317 cells or CL structs, mostly), there is no need to convert the seqs to
14318 sequences (which can be a fairly expensive operation).
14319 * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
14320 sequences.
14321
14322 2015-08-23 Fabián Ezequiel Gallina <fgallina@gnu.org>
14323
14324 python.el: Fix completion for pdb interactions
14325 * lisp/progmodes/python.el (python-shell-completion-setup-code):
14326 Simplify. Toggle print_mode for native wrapped completer.
14327 (python-shell-completion-native-setup): Ensure process buffer.
14328 Add print_mode attribute to completer wrapper to toggle returning
14329 or printing candidates.
14330 (python-shell-completion-native-get-completions): Cleanup.
14331 (python-shell-completion-get-completions): Cleanup.
14332 (python-shell-completion-at-point): Perform prompt checks.
14333 Force fallback completion in pdb interactions.
14334
14335 2015-08-23 Nicolas Petton <nicolas@petton.fr>
14336
14337 Make seq.el more extensible by using cl-defmethod
14338 * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
14339 make it easier to extend seq.el with new "seq types".
14340 * test/automated/seq-tests.el (test-setf-seq-elt): New test.
14341 * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
14342 subseq in cl-extra.el, and use it in seq.el.
14343
14344 2015-08-23 Fabián Ezequiel Gallina <fgallina@gnu.org>
14345
14346 python.el: Fix prompt detection with user overridden interpreter
14347 * lisp/progmodes/python.el (python-shell-prompt-detect):
14348 Honor buffer local python-shell-interpreter and
14349 python-shell-interpreter-interactive-arg.
14350
14351 2015-08-23 Eli Zaretskii <eliz@gnu.org>
14352
14353 Support exec-directory with non-ASCII characters on Windows
14354 * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
14355 in the system's ANSI codepage, when it is used for invoking
14356 cmdproxy.
14357
14358 2015-08-23 Andreas Schwab <schwab@linux-m68k.org>
14359
14360 Revert "Extend ‘format’ to translate curved quotes"
14361 This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
14362
14363 Revert "Prefer ‘format’ to ‘substitute-command-keys’"
14364 This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
14365
14366 2015-08-23 Xue Fuqiao <xfq.free@gmail.com>
14367
14368 * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
14369 Clarify "invisible window".
14370
14371 2015-08-23 Xue Fuqiao <xfq.free@gmail.com>
14372
14373 * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
14374 magic-fallback-mode-alist.
14375
14376 2015-08-22 Fabián Ezequiel Gallina <fgallina@gnu.org>
14377
14378 python.el: fallback completion, ffap and eldoc setup enhancements
14379 Setup codes are now sent continuously so that the current frame is
14380 always taken into account. This allows working within debuggers
14381 and always keeping a fresh version of setup codes that will return
14382 proper results.
14383 * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
14384 (python-shell-send-setup-code): Send code only when
14385 python-shell-setup-codes is non-nil.
14386 (python-shell-completion-string-code): Cleanup trailing newline.
14387 (python-shell-completion-get-completions): Always use
14388 python-shell-completion-setup-code.
14389 (python-ffap-setup-code): Work with any object, not only modules.
14390 (python-ffap-string-code): Cleanup trailing newline.
14391 (python-ffap-module-path): Always use python-ffap-setup-code.
14392 (python-eldoc-string-code): Cleanup trailing newline.
14393 (python-eldoc--get-doc-at-point): Always use
14394 python-eldoc-setup-code. Return non-nil only if docstring is
14395 found.
14396
14397 python.el: Increase native completion robustness
14398 * lisp/progmodes/python.el (python-shell-completion-native-setup):
14399 Make completer print real candidates and just return dummy ones to
14400 avoid input modification.
14401 (python-shell-completion-native-get-completions): Set
14402 comint-redirect-insert-matching-regexp to non-nil and make
14403 comint-redirect-finished-regexp match the last dummy candidate.
14404 Use python-shell-accept-process-output to wait for the full list
14405 of candidates.
14406
14407 2015-08-22 Eli Zaretskii <eliz@gnu.org>
14408
14409 Fix invocation of programs via cmdproxy.exe
14410 * src/w32proc.c (sys_spawnve): Use exec-directory, not
14411 invocation-directory, for finding cmdproxy.exe. When Emacs is
14412 run from the source tree, look for cmdproxy.exe in the same source
14413 tree. (Bug#21323)
14414
14415 2015-08-22 Simen Heggestøyl <simenheg@gmail.com>
14416
14417 Handle comments inside unquoted URIs in css-mode
14418 * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
14419 (css-syntax-propertize-function): New defconst.
14420 (css--font-lock-keywords): Handle parens around unquoted URIs.
14421 (css-mode): Set `syntax-propertize-function'.
14422
14423 2015-08-22 Eli Zaretskii <eliz@gnu.org>
14424
14425 Support invocation of Hunspell with multiple dictionaries
14426 * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
14427 Support lists of dictionaries of the form "DICT1,DICT2,...".
14428 (ispell-hunspell-add-multi-dic): New command. (Bug#20495)
14429
14430 Minor formatting changes in ispell.el
14431 * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
14432 (ispell-print-if-debug, ispell-aspell-find-dictionary)
14433 (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
14434 (ispell-hunspell-dictionary-alist)
14435 (ispell-hunspell-fill-dictionary-entry)
14436 (ispell-find-hunspell-dictionaries, ispell-send-replacement)
14437 (ispell-buffer-with-debug, ispell-complete-word)
14438 (ispell-current-dictionary, ispell-current-personal-dictionary)
14439 (ispell-accept-output, ispell-minor-mode)
14440 (ispell-personal-dictionary, ispell-dictionary-alist)
14441 (ispell-really-aspell, ispell-really-hunspell)
14442 (ispell-encoding8-command, ispell-aspell-supports-utf8)
14443 (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
14444 Fix whitespace, inconsistent capitalization, and arguments in doc
14445 strings.
14446
14447 2015-08-22 Martin Rudalics <rudalics@gmx.at>
14448
14449 * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
14450 function refused to resize a size-preserved window.
14451
14452 2015-08-22 Eli Zaretskii <eliz@gnu.org>
14453
14454 * doc/lispref/windows.texi (Selecting Windows): Improve
14455 documentation and indexing of 'window-use-time'.
14456
14457 2015-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
14458
14459 * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
14460 * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
14461 * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
14462 * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
14463 * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
14464 * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
14465 * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
14466 Fix up commenting style.
14467
14468 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
14469
14470 text-quoting-style in emacs-lisp diagnostics
14471 * lisp/emacs-lisp/advice.el (ad-read-advised-function)
14472 (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
14473 (ad-disable-advice, ad-remove-advice, ad-set-argument)
14474 (ad-set-arguments):
14475 * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
14476 (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
14477 (byte-optimize-while, byte-optimize-apply):
14478 * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
14479 (byte-compile-log-file, byte-compile-format-warn)
14480 (byte-compile-nogroup-warn, byte-compile-arglist-warn)
14481 (byte-compile-cl-warn)
14482 (byte-compile-warn-about-unresolved-functions)
14483 (byte-compile-file, byte-compile-fix-header)
14484 (byte-compile--declare-var, byte-compile-file-form-defmumble)
14485 (byte-compile-form, byte-compile-normal-call)
14486 (byte-compile-variable-ref, byte-compile-variable-set)
14487 (byte-compile-subr-wrong-args, byte-compile-setq-default)
14488 (byte-compile-negation-optimizer)
14489 (byte-compile-condition-case--old)
14490 (byte-compile-condition-case--new, byte-compile-save-excursion)
14491 (byte-compile-defvar, byte-compile-autoload)
14492 (byte-compile-lambda-form)
14493 (byte-compile-make-variable-buffer-local, display-call-tree)
14494 (batch-byte-compile):
14495 * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
14496 (cconv-analyze-form):
14497 * lisp/emacs-lisp/chart.el (chart-space-usage):
14498 * lisp/emacs-lisp/check-declare.el (check-declare-scan)
14499 (check-declare-warn, check-declare-file)
14500 (check-declare-directory):
14501 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
14502 (checkdoc-message-text-engine):
14503 * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
14504 * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
14505 (cl-symbol-macrolet):
14506 * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
14507 * lisp/emacs-lisp/copyright.el (copyright)
14508 (copyright-update-directory):
14509 * lisp/emacs-lisp/edebug.el (edebug-read-list):
14510 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
14511 * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
14512 (eieio-oref, eieio-oset-default):
14513 * lisp/emacs-lisp/eieio-speedbar.el:
14514 (eieio-speedbar-child-make-tag-lines)
14515 (eieio-speedbar-child-description):
14516 * lisp/emacs-lisp/eieio.el (defclass, change-class):
14517 * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
14518 (elint-init-form, elint-check-defalias-form)
14519 (elint-check-let-form):
14520 * lisp/emacs-lisp/ert.el (ert-get-test):
14521 * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
14522 (find-function-library):
14523 * lisp/emacs-lisp/generator.el (iter-yield):
14524 * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
14525 * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
14526 * lisp/emacs-lisp/package-x.el (package-upload-file):
14527 * lisp/emacs-lisp/package.el (package-version-join)
14528 (package-disabled-p, package-activate-1, package-activate)
14529 (package--download-one-archive)
14530 (package--download-and-read-archives)
14531 (package-compute-transaction, package-install-from-archive)
14532 (package-install, package-install-selected-packages)
14533 (package-delete, package-autoremove)
14534 (package-install-button-action, package-delete-button-action)
14535 (package-menu-hide-package, package-menu--list-to-prompt)
14536 (package-menu--perform-transaction)
14537 (package-menu--find-and-notify-upgrades):
14538 * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
14539 * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
14540 * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
14541 * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
14542 * lisp/emacs-lisp/smie.el (smie-config-save):
14543 * lisp/emacs-lisp/subr-x.el (internal--check-binding):
14544 * lisp/emacs-lisp/testcover.el (testcover-1value):
14545 Use curved quotes in diagnostic format strings.
14546
14547 2015-08-21 Fabián Ezequiel Gallina <fgallina@gnu.org>
14548
14549 python.el: Ensure remote process-environment on non-interactive processes
14550 * lisp/progmodes/python.el
14551 (python-shell-tramp-refresh-process-environment): New function.
14552 (python-shell-with-environment): Use it.
14553 * test/automated/python-tests.el (python-shell-with-environment-2):
14554 Update.
14555
14556 python.el: Enhancements to process environment setup.
14557 * lisp/progmodes/python.el (python-shell-process-environment)
14558 (python-shell-extra-pythonpaths, python-shell-exec-path)
14559 (python-shell-virtualenv-root): Update docstring. Remove :safe.
14560 (python-shell-setup-codes): Remove :safe.
14561 (python-shell-remote-exec-path): New defcustom.
14562 (python-shell--add-to-path-with-priority): New macro.
14563 (python-shell-calculate-pythonpath): Give priority to
14564 python-shell-extra-pythonpaths. Update docstring.
14565 (python-shell-calculate-process-environment): Give priority to
14566 python-shell-process-environment. Update docstring.
14567 (python-shell-calculate-exec-path): Give priority to
14568 python-shell-exec-path and calculated virtualenv bin directory.
14569 Update docstring.
14570 (python-shell-tramp-refresh-remote-path): New function.
14571 (python-shell-with-environment): Use it when working remotely and
14572 do not modify tramp-remote-path. Allow nesting.
14573 (python-shell-calculate-command): Remove useless
14574 python-shell-with-environment call.
14575 * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
14576 (python-shell-calculate-pythonpath-2)
14577 (python-shell-calculate-process-environment-6)
14578 (python-shell-calculate-process-environment-7)
14579 (python-shell-calculate-process-environment-8)
14580 (python-shell-calculate-exec-path-3)
14581 (python-shell-calculate-exec-path-4)
14582 (python-shell-calculate-exec-path-5)
14583 (python-shell-calculate-exec-path-6)
14584 (python-shell-with-environment-3): New tests.
14585 (python-shell-calculate-process-environment-2)
14586 (python-shell-calculate-process-environment-3)
14587 (python-shell-calculate-process-environment-4)
14588 (python-shell-calculate-process-environment-5)
14589 (python-shell-calculate-exec-path-1)
14590 (python-shell-calculate-exec-path-2)
14591 (python-shell-with-environment-1)
14592 (python-shell-with-environment-2): Update and simplify.
14593
14594 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
14595
14596 Avoid hard-coding "M-x command" in docstrings
14597 * lisp/calendar/todo-mode.el (todo-mode):
14598 * lisp/desktop.el (desktop-save-mode):
14599 * lisp/edmacro.el (edit-kbd-macro):
14600 * lisp/emacs-lisp/package.el (package-menu-execute):
14601 * lisp/emulation/viper-cmd.el (viper-ask-level):
14602 * lisp/emulation/viper-init.el (viper-expert-level):
14603 * lisp/filesets.el (filesets-add-buffer):
14604 * lisp/follow.el (follow-mode):
14605 * lisp/gnus/auth-source.el (auth-sources):
14606 * lisp/international/ogonek.el (ogonek-informacja)
14607 (ogonek-information):
14608 * lisp/net/tramp.el (tramp-process-actions):
14609 * lisp/org/org-gnus.el (org-gnus-no-new-news):
14610 * lisp/org/org.el (org-ellipsis):
14611 * lisp/progmodes/python.el (python-shell-get-process-or-error):
14612 * lisp/progmodes/vhdl-mode.el (vhdl-mode):
14613 * lisp/server.el (server-start):
14614 * lisp/type-break.el (type-break-noninteractive-query):
14615 * lisp/userlock.el (ask-user-about-supersession-help):
14616 * lisp/whitespace.el (whitespace-report-region):
14617 Prefer (substitute-command-keys "`\\[foo-command]'")
14618 to "`M-x foo-command'" in docstrings and the like.
14619
14620 2015-08-21 Tassilo Horn <tsdh@gnu.org>
14621
14622 Use add-function for prettify-symbols-compose-predicate
14623 * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
14624 prettify-symbols-compose-predicate in terms of add-function.
14625 * etc/NEWS: Mention prettify-symbols-compose-predicate and
14626 prettify-symbols-mode support in tex-mode.
14627
14628 2015-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
14629
14630 * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
14631 (smie-indent-exps, smie-indent-keyword): Use it.
14632 * test/indent/css-mode.css: Test alignment with leading comment.
14633
14634 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
14635
14636 Respect text-quoting-style in (*Finder*) menus
14637 * lisp/info.el (info--prettify-description):
14638 Treat description as a docstring, so that it's requoted as
14639 per text-quoting-style.
14640
14641 2015-08-21 Martin Rudalics <rudalics@gmx.at>
14642
14643 Document `window-use-time' in Elisp manual
14644 * doc/lispref/windows.texi (Selecting Windows): Document
14645 `window-use-time'.
14646
14647 2015-08-21 Eli Zaretskii <eliz@gnu.org>
14648
14649 * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
14650 This is a cleaner fix for Bug#21260 than the previous change.
14651
14652 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
14653
14654 Respect text-quoting-style in calc
14655 In calc, tespect text-quoting-style preference in diagnostic
14656 formats and fix a few similar problems in docstrings.
14657 * lisp/calc/calc-aent.el (math-read-factor):
14658 * lisp/calc/calc-embed.el (calc-do-embedded):
14659 * lisp/calc/calc-ext.el (calc-user-function-list)
14660 * lisp/calc/calc-graph.el (calc-graph-show-dumb):
14661 * lisp/calc/calc-help.el (calc-describe-key)
14662 (calc-describe-thing):
14663 * lisp/calc/calc-lang.el (calc-c-language)
14664 (math-parse-fortran-vector-end, math-parse-tex-sum)
14665 (math-parse-eqn-matrix, math-parse-eqn-prime)
14666 (calc-yacas-language, calc-maxima-language, calc-giac-language)
14667 (math-read-big-rec, math-read-big-balance):
14668 * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
14669 (calc-auto-recompute):
14670 * lisp/calc/calc-prog.el (calc-user-define-invocation)
14671 (math-do-arg-check):
14672 * lisp/calc/calc-store.el (calc-edit-variable):
14673 * lisp/calc/calc-units.el (math-build-units-table-buffer):
14674 * lisp/calc/calc-vec.el (math-read-brackets):
14675 * lisp/calc/calc-yank.el (calc-edit-mode):
14676 * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
14677 Use curved quotes in diagnostic format strings.
14678 * lisp/calc/calc-help.el (calc-describe-thing):
14679 Format docstrings with substitute-command-keys.
14680 * lisp/calc/calc-help.el (calc-j-prefix-help):
14681 * lisp/calc/calc-misc.el (calc-help):
14682 * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
14683 Escape a docstring "`".
14684
14685 2015-08-21 Eli Zaretskii <eliz@gnu.org>
14686
14687 Fix documentation of 'menu-set-font' and 'set-frame-font'
14688 * lisp/menu-bar.el (menu-set-font): Doc fix. (Bug#21303)
14689 * doc/lispref/frames.texi (Frame Font): Document that
14690 set-frame-font with the last argument 't' will also make the font
14691 the default for the future GUI frames.
14692
14693 Document '--create-frame' option to emacsclient
14694 * doc/emacs/misc.texi (emacsclient Options): Document the
14695 '--create-frame' option. (Bug#21308)
14696
14697 2015-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
14698
14699 * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
14700
14701 2015-08-21 Eli Zaretskii <eliz@gnu.org>
14702
14703 Document 'get-mru-window' in the ELisp manual
14704 * doc/lispref/windows.texi (Cyclic Window Ordering): Document
14705 'get-mru-window'. (Bug#21306)
14706
14707 Clarify documentation of 'get-buffer-window-list'
14708 * doc/lispref/windows.texi (Buffers and Windows): Mention that the
14709 current window, if relevant, will be the first in the list
14710 returned by 'get-buffer-window-list'.
14711 * lisp/window.el (get-buffer-window-list): Doc fix. (Bug#21305)
14712
14713 2015-08-21 Vasilij Schneidermann <v.schneidermann@gmail.com>
14714
14715 In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
14716 * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
14717 `switch-to-buffer'.
14718
14719 2015-08-21 Kaushal Modi <kaushal.modi@gmail.com> (tiny change)
14720
14721 In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
14722 * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
14723 `display-buffer' instead of `switch-to-buffer'.
14724
14725 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
14726
14727 Follow user preference in calendar diagnostics
14728 Respect text-quoting-style preference in diagnostic formats by
14729 using curved quotes (which are translated as per text-quoting-style)
14730 instead of grave accent and apostrophe (which are not).
14731 * lisp/calendar/appt.el (appt-display-message):
14732 * lisp/calendar/diary-lib.el (diary-check-diary-file)
14733 (diary-mail-entries, diary-from-outlook):
14734 * lisp/calendar/icalendar.el (icalendar-export-region)
14735 (icalendar--convert-float-to-ical)
14736 (icalendar--convert-date-to-ical)
14737 (icalendar--convert-ical-to-diary)
14738 (icalendar--convert-recurring-to-diary)
14739 (icalendar--add-diary-entry):
14740 * lisp/calendar/time-date.el (format-seconds):
14741 * lisp/calendar/timeclock.el (timeclock-mode-line-display)
14742 (timeclock-make-hours-explicit):
14743 * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
14744 (todo-item-mark, todo-check-format)
14745 (todo-insert-item--next-param, todo-edit-item--next-key)
14746 (todo-mode):
14747 Use curved quotes in diagnostic format strings.
14748 * lisp/calendar/icalendar.el (icalendar-import-format-sample):
14749 * test/automated/icalendar-tests.el (icalendar--import-format-sample):
14750 Just use straight quoting for simple test case.
14751
14752 2015-08-21 Michael Albinus <michael.albinus@gmx.de>
14753
14754 * src/gfilenotify.c (Fgfile_add_watch):
14755 Handle errors from g_file_monitor.
14756
14757 2015-08-21 Martin Rudalics <rudalics@gmx.at>
14758
14759 In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
14760 * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
14761 frame" instead of "non-minibuffer frame".
14762
14763 Fix frame geometry related text
14764 * doc/lispref/frames.texi (Frame Layout):
14765 Rename `x-frame-geometry' to `frame-geometry'.
14766 * doc/lispref/frames.texi (Mouse Position):
14767 * doc/lispref/windows.texi (Coordinates and Windows):
14768 Use `set-mouse-absolute-pixel-position' instead of
14769 `x-set-mouse-absolute-pixel-position'.
14770
14771 Sanitize frame geometry related functions
14772 * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
14773 (Fx_frame_edges): Rename to Fns_frame_edges.
14774 * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
14775 (Fx_frame_edges): Rename to Fw32_frame_edges.
14776 (Fx_mouse_absolute_pixel_position): Rename to
14777 Fw32_mouse_absolute_pixel_position.
14778 (Fx_set_mouse_absolute_pixel_position): Rename to
14779 Fw32_set_mouse_absolute_pixel_position.
14780 * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
14781 (ns-frame-geometry, x-frame-edges, w32-frame-edges)
14782 (ns-frame-edges, w32-mouse-absolute-pixel-position)
14783 (x-mouse-absolute-pixel-position)
14784 (w32-set-mouse-absolute-pixel-position)
14785 (x-set-mouse-absolute-pixel-position): Declare.
14786 (frame-geometry, mouse-absolute-pixel-position)
14787 (set-mouse-absolute-pixel-position): New functions.
14788 (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
14789
14790 2015-08-21 Eli Zaretskii <eliz@gnu.org>
14791
14792 Fix MinGW64 build broken by latest w32uniscribe.c changes
14793 * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
14794 MinGW64. Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14795 (Bug#21260)
14796
14797 2015-08-21 Tassilo Horn <tsdh@gnu.org>
14798
14799 Add TeX defaults for prettify-symbol-mode
14800 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
14801 Rename from tex-prettify-symbols-alist.
14802 (tex--prettify-symbols-compose-p): New function.
14803 (tex-common-initialization): Use them as prettify-symbols-alist
14804 and prettify-symbols-compose-predicate.
14805
14806 Generalize prettify-symbols to arbitrary modes
14807 * lisp/progmodes/prog-mode.el
14808 (prettify-symbols-default-compose-p): New function.
14809 (prettify-symbols-compose-predicate): New variable.
14810 (prettify-symbols--compose-symbol): Use it.
14811
14812 2015-08-20 Paul Eggert <eggert@cs.ucla.edu>
14813
14814 Don't quote symbols 'like-this' in docstrings etc.
14815 * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
14816 * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
14817 * lisp/allout.el (allout-add-resumptions, allout-mode):
14818 * lisp/calculator.el (calculator-operators):
14819 * lisp/cedet/data-debug.el (dd-propertize):
14820 * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
14821 * lisp/cedet/semantic/analyze/debug.el:
14822 (semantic-analyzer-debug-global-miss-text):
14823 * lisp/cedet/semantic/lex-spp.el:
14824 (semantic-lex-spp-replace-or-symbol-or-keyword):
14825 * lisp/cedet/semantic/symref.el:
14826 (semantic-symref-cleanup-recent-buffers-fcn):
14827 * lisp/cedet/semantic/tag.el (semantic-tag-class):
14828 * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
14829 * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
14830 * lisp/gnus/pop3.el (pop3-authentication-scheme):
14831 * lisp/help-fns.el (describe-function-orig-buffer):
14832 * lisp/imenu.el (imenu--history-list):
14833 * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
14834 (feedmail-display-full-frame, feedmail-deduce-bcc-where)
14835 (feedmail-queue-default-file-slug)
14836 (feedmail-queue-buffer-file-name):
14837 * lisp/net/mairix.el (mairix-searches-mode-map):
14838 * lisp/net/newst-backend.el (newsticker-retrieval-method)
14839 (newsticker-auto-mark-filter-list):
14840 * lisp/obsolete/vi.el (vi-mode):
14841 * lisp/progmodes/cc-engine.el (c-literal-type):
14842 * lisp/progmodes/cpp.el (cpp-face):
14843 * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
14844 * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
14845 * lisp/progmodes/pascal.el (pascal-auto-lineup):
14846 * lisp/progmodes/prog-mode.el (prog-widen):
14847 * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
14848 (verilog-auto-lineup, verilog-auto-reset-widths)
14849 (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
14850 * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
14851 (flyspell-maybe-correct-doubling):
14852 * lisp/textmodes/table.el (table-justify, table-justify-cell)
14853 (table-justify-row, table-justify-column, table-insert-sequence)
14854 (table--justify-cell-contents):
14855 * lisp/url/url-auth.el (url-get-authentication):
14856 * lisp/window.el (display-buffer-record-window):
14857 * lisp/xml.el (xml-parse-file, xml-parse-region):
14858 * src/gfilenotify.c (Fgfile_add_watch):
14859 Don't quote symbols with apostrophes in doc strings.
14860 Use asymmetric quotes instead.
14861 * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
14862 Likewise for symbol in diagnostic.
14863 * lisp/image.el (image-extension-data):
14864 * lisp/register.el (frame-configuration-to-register):
14865 * src/buffer.c (syms_of_buffer):
14866 Remove bogus apostrophes after symbols.
14867 * lisp/thumbs.el (thumbs-conversion-program):
14868 Quote Lisp string values using double-quotes, not apostrophes.
14869
14870 2015-08-20 Martin Rudalics <rudalics@gmx.at>
14871
14872 Describe frame geometry and related functions in Elisp manual
14873 * doc/lispref/display.texi (Size of Displayed Text, Line Height)
14874 (Showing Images): Update references.
14875 * doc/lispref/elisp.texi (Top): Update node listing.
14876 * doc/lispref/frames.texi (Frame Geometry): New node.
14877 Move `Size and Position' section here.
14878 (Size Parameters): Update references.
14879 (Mouse Position): Update references and nomenclature.
14880 Describe new functions `x-mouse-absolute-pixel-position' and
14881 `x-set-mouse-absolute-pixel-position'.
14882 * doc/lispref/windows.texi (Window Sizes): Update references.
14883 (Resizing Windows): Update references. Move description of
14884 `fit-frame-to-buffer' here.
14885 (Coordinates and Windows): Update nomenclature and references.
14886 Describe new arguments of `window-edges'. Comment out
14887 descriptions of `window-left-column', `window-top-line',
14888 `window-pixel-left' and `window-pixel-top'. Describe
14889 `window-absolute-pixel-position'.
14890
14891 2015-08-20 Alan Mackenzie <acm@muc.de>
14892
14893 Handling of `c-parse-state'. Fix low level bug.
14894 * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
14895 Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
14896
14897 2015-08-20 Andreas Politz <politza@hochschule-trier.de>
14898
14899 * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
14900 window instead of deleting it.
14901
14902 2015-08-20 Martin Rudalics <rudalics@gmx.at>
14903
14904 In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
14905 * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
14906 determine whether frame has a titlebar.
14907 Suggested by Eli Zaretskii <eliz@gnu.org>
14908
14909 2015-08-20 Tassilo Horn <tsdh@gnu.org>
14910
14911 Add a prettify-symbols-alist for (La)TeX
14912 * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
14913 New variable holding an alist suitable as prettify-symbols-alist in
14914 (La)TeX modes.
14915
14916 2015-08-19 Alan Mackenzie <acm@muc.de>
14917
14918 Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
14919 Fixes debbugs#21275.
14920 In Emacs >= 25, let electric-pair-mode take precedence over
14921 delete-selection-mode.
14922 * lisp/delsel.el (delete-selection-uses-region-p): New function,
14923 previously a lambda expression in a property value for
14924 `self-insert-command'.
14925 (top-level): Set the `delete-selection' property of
14926 `self-insert-command' to `delete-selection-uses-region-p'.
14927 * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
14928 property for c-electric-\(brace\|paren\) the value
14929 `delete-selection-uses-region-p' when the latter function exists.
14930
14931 2015-08-19 Paul Eggert <eggert@cs.ucla.edu>
14932
14933 Fix key binding quoting in tutorial *Help*
14934 * lisp/tutorial.el (tutorial--describe-nonstandard-key):
14935 When generating help for custom key bindings, use the user-preferred
14936 quoting style rather than hardcoding the grave style.
14937
14938 2015-08-19 Eli Zaretskii <eliz@gnu.org>
14939
14940 Improve and future-proof OTF fonts support in w32uniscribe.c
14941 * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
14942 about the expected results and why the new Uniscribe APIs are not
14943 used in this function.
14944 (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
14945 (ScriptGetFontFeatureTags_Proc): New function typedefs.
14946 (uniscribe_new_apis): New static variable.
14947 (uniscribe_check_features): New function, implements OTF features
14948 verification while correctly accounting for features in the list
14949 after the nil member, if any.
14950 (uniscribe_check_otf_1): New function, retrieves the features
14951 supported by the font for the requested script and language using
14952 the Uniscribe APIs available from Windows Vista onwards.
14953 (uniscribe_check_otf): If the new Uniscribe APIs are available,
14954 use them in preference to reading the font data directly. Call
14955 uniscribe_check_features to verify that the requested features are
14956 supported, replacing the original incomplete code.
14957 (syms_of_w32uniscribe): Initialize function pointers for the new
14958 Uniscribe APIs. (Bug#21260)
14959 (otf_features): Scan the script, langsys, and feature arrays back
14960 to front, so that the result we return has them in alphabetical
14961 order, like ftfont.c does.
14962 * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
14963 New variable for debugging w32uniscribe.c code.
14964
14965 2015-08-19 Artur Malabarba <bruce.connor.am@gmail.com>
14966
14967 * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
14968 Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
14969 clause of `isearch-search-fun-default'. That lax variable does not
14970 refer to lax-whitespacing. Related to (bug#21777).
14971 This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
14972 * lisp/character-fold.el (character-fold-search): Set to nil.
14973 Default to nil for now, until someone implements proper
14974 lax-whitespacing with char-fold searching.
14975
14976 2015-08-19 Martin Rudalics <rudalics@gmx.at>
14977
14978 Fix doc-string of `help-mode-finish'.
14979 * lisp/help-mode.el (help-mode-finish): Fix doc-string.
14980
14981 In nsimage.m include coding.h (Bug#21292)
14982 * src/nsimage.m (top-level): Include coding.h (Bug#21292).
14983
14984 Move window edge functions to Elisp.
14985 * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
14986 (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
14987 (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
14988 Move to window.el.
14989 (calc_absolute_offset): Remove.
14990 * lisp/frame.el (frame-edges): New function.
14991 * lisp/window.el (window-edges, window-pixel-edges)
14992 (window-absolute-pixel-edges): Move here from window.c.
14993 (window-body-edges, window-body-pixel-edges)
14994 (window-absolute-body-pixel-edges): Move here from window.c and
14995 rename "inside" to "body". Keep old names as aliases.
14996 (window-absolute-pixel-position): New function.
14997
14998 2015-08-19 Katsumi Yamaoka <yamaoka@jpl.org>
14999
15000 [Gnus]: Use overlay functions directly
15001 * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
15002 (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
15003 (gnus-article-highlight-signature, gnus-article-extend-url-button)
15004 (gnus-article-add-button, gnus-insert-prev-page-button)
15005 (gnus-insert-next-page-button, gnus-insert-mime-security-button):
15006 * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
15007 (gnus-cite-add-face):
15008 * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
15009 * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
15010 (gnus-tree-recenter, gnus-highlight-selected-tree):
15011 * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
15012 (gnus-summary-show-thread, gnus-summary-hide-thread)
15013 (gnus-highlight-selected-summary):
15014 * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
15015 * lisp/gnus/message.el (message-fix-before-sending)
15016 (message-toggle-image-thumbnails):
15017 * lisp/gnus/mm-decode.el (mm-convert-shr-links):
15018 * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
15019 Use overlay functions directly instead of using gnus-overlay-*,
15020 message-overlay-*, and sieve-overlay-*.
15021 * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
15022 * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
15023 (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
15024 (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
15025 (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
15026 * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
15027 (message-overlay-get, message-overlay-put, message-overlays-in):
15028 * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
15029 (sieve-overlays-at): Remove.
15030
15031 2015-08-19 Martin Rudalics <rudalics@gmx.at>
15032
15033 In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
15034 * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
15035 builds can use the declaration from the system headers.
15036 (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
15037 definition of TITLEBAR_INFO.
15038 Suggested by Eli Zaretskii <eliz@gnu.org>
15039
15040 2015-08-19 Glenn Morris <rgm@gnu.org>
15041
15042 * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
15043
15044 2015-08-19 Paul Eggert <eggert@cs.ucla.edu>
15045
15046 Use new q ‘format’ flag when fixing quotes in C
15047 * src/image.c (image_size_error): New function. All uses of
15048 image_error with "Invalid image size ..." changed to use it.
15049 * src/image.c (image_size_error, xbm_load_image, xbm_load)
15050 (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
15051 (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
15052 (imagemagick_load, svg_load, svg_load_image, gs_load)
15053 (x_kill_gs_process):
15054 * src/lread.c (load_warn_old_style_backquotes):
15055 * src/xfaces.c (load_pixmap):
15056 * src/xselect.c (x_clipboard_manager_error_1):
15057 Use %qs, not uLSQM and uRSQM.
15058 * src/syntax.c (Finternal_describe_syntax_value):
15059 Prefer Fsubstitute_command_keys to Fformat, as this lets
15060 us use AUTO_STRING.
15061 * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
15062 as it's now guaranteed to be ASCII.
15063 * src/xselect.c (x_clipboard_manager_error_2):
15064 Avoid grave accent in low-level stderr diagnostic.
15065
15066 2015-08-19 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
15067
15068 New q flag for ‘format’
15069 * doc/lispref/processes.texi (Sentinels):
15070 Don't hardwire grave quoting style in example.
15071 * doc/lispref/strings.texi (Formatting Strings):
15072 * etc/NEWS:
15073 Document new q flag.
15074 * src/editfns.c (Fformat): Implement it.
15075
15076 2015-08-18 Daiki Ueno <ueno@gnu.org>
15077
15078 pinentry.el: Add debugging support
15079 * lisp/net/pinentry.el (pinentry-debug): New variable.
15080 (pinentry-debug-buffer): New variable.
15081 (pinentry--process-filter): Send input to the debug buffer, if
15082 `pinentry-debug' is set.
15083
15084 pinentry.el: Improve multiline prompt
15085 * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
15086 (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
15087 command.
15088
15089 2015-08-18 Paul Eggert <eggert@cs.ucla.edu>
15090
15091 Fix multibyte confusion in diagnostics
15092 * src/print.c (print_error_message):
15093 Don't assume that the caller's name is unibyte.
15094 * src/xdisp.c (vadd_to_log):
15095 Don't assume that the formatted diagnostic is unibyte.
15096
15097 Fix file name encodings in diagnostics
15098 Also, close some minor races when opening image files, by opening
15099 them once instead of multiple times.
15100 * src/gtkutil.c (xg_get_image_for_pixmap):
15101 * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
15102 (svg_load):
15103 * src/nsimage.m (allocInitFromFile:):
15104 * src/xfns.c (xg_set_icon):
15105 Encode file name, since x_find_image_file no longer does that.
15106 * src/image.c (x_find_image_fd): New function.
15107 (x_find_image_file): Use it. Do not encode resulting file name,
15108 since callers sometimes need it decoded.
15109 (slurp_file): File arg is now a fd, not a file name.
15110 All callers changed. This saves us having to open the file twice.
15111 (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
15112 (svg_load):
15113 Use x_find_image_fd and fdopen to save a file-open.
15114 Report file name that failed.
15115 * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
15116
15117 2015-08-18 Dmitry Gutov <dgutov@yandex.ru>
15118
15119 Allow blink-matching-paren to jump off screen
15120 * doc/emacs/programs.texi (Matching): Mention the
15121 `blink-matching-paren' value `jump-offscreen'.
15122 * lisp/simple.el (blink-matching-paren): New possible value.
15123 (blink-matching-paren-on-screen): Clarify the docstring.
15124 (blink-matching-open): Handle `jump-offscreen' (bug#21286).
15125
15126 Refine the previous change
15127 * lisp/simple.el (blink-matching-open): Use minibuffer-message
15128 outside of save-excursion (bug#21286).
15129
15130 2015-08-18 Martin Rudalics <rudalics@gmx.at>
15131
15132 Rewrite and add frame geometry related functions.
15133 * src/frame.c (Fframe_position): New function.
15134 (Fset_frame_position): Rename parameters and rewrite doc-string.
15135 (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
15136 Qtitle_height and Qframe_inner_size. Add Qouter_edges,
15137 Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
15138 Qtitle_bar_size.
15139 * src/nsfns.m (frame_geometry): New function.
15140 (Fx_frame_geometry): Call frame_geometry.
15141 (Fx_frame_edges): New function.
15142 * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
15143 (GetTitleBarInfo_Proc): Define these so we can use the
15144 GetTitleBarInfo API.
15145 (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
15146 (Fx_frame_geometry): Rewrite.
15147 (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
15148 (Fx_set_mouse_absolute_pixel_position): New functions.
15149 * src/xfns.c (frame_geometry): New function.
15150 (Fx_frame_geometry): Call frame_geometry.
15151 (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
15152 (Fx_set_mouse_absolute_pixel_position): New functions.
15153
15154 2015-08-18 Michael Albinus <michael.albinus@gmx.de>
15155
15156 Improve Tramp's compatibility
15157 * lisp/net/tramp.el (tramp-get-method-parameter):
15158 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
15159 (tramp-adb-get-device):
15160 * lisp/net/trampver.el (tramp-repository-get-version):
15161 Use `tramp-compat-replace-regexp-in-string'.
15162
15163 2015-08-18 Pierre Téchoueyres <pierre.techoueyres@free.fr> (tiny change)
15164
15165 * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
15166 Encode/decode string.
15167
15168 2015-08-18 Paul Eggert <eggert@cs.ucla.edu>
15169
15170 Clarify what happens to match data on failure
15171 Problem reported by Ernesto Alfonso (Bug#21279).
15172 * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
15173 Document more carefully what happens to match data after a failed
15174 search.
15175 * src/search.c (Fmatch_beginning, Fmatch_end): Document that
15176 the return value is undefined if the last search failed.
15177 (Fmatch_data): Simplify doc string line 1.
15178
15179 2015-08-18 Daiki Ueno <ueno@gnu.org>
15180
15181 Revert "pinentry.el: Support external passphrase cache"
15182 This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
15183 pinentry.el shouldn't directly interact with the secrets service,
15184 but ask the caller to cache the passphrase.
15185
15186 2015-08-17 Xue Fuqiao <xfq.free@gmail.com>
15187
15188 * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
15189 Message mode hooks.
15190
15191 2015-08-17 Daiki Ueno <ueno@gnu.org>
15192
15193 epg.el: Make gpgconf output parsing future proof
15194 * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
15195 --list-options" output.
15196
15197 pinentry.el: Support external passphrase cache
15198 * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
15199 (pinentry--allow-external-password-cache): New local variable.
15200 (pinentry--key-info): New local variable.
15201 (secrets-enabled, secrets-search-items, secrets-get-secret):
15202 Declare.
15203 (pinentry--send-passphrase): New function, split from
15204 `pinentry--process-filter'.
15205 (pinentry--process-filter): Use secrets.el to retrieve passphrase
15206 from login keyring.
15207
15208 pinentry.el: Popup window for multiline prompt
15209 * lisp/net/pinentry.el (pinentry): New custom group.
15210 (pinentry-popup-prompt-window): New user option.
15211 (pinentry-prompt-window-height): New user option.
15212 (pinentry--prompt-buffer): New variable.
15213 (pinentry-prompt-mode-map): New variable.
15214 (pinentry-prompt-mode): New function.
15215 (pinentry--prompt): New function.
15216 (pinentry--process-filter): Use `pinentry--prompt' instead of
15217 `read-passwd' and `y-or-n-p'.
15218
15219 2015-08-17 Katsumi Yamaoka <yamaoka@jpl.org>
15220
15221 message.el: Silent the byte compiler
15222 * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
15223 (message-kill-all-overlays, message-overlays-in, message-overlay-get)
15224 (message-delete-overlay, message-window-inside-pixel-edges):
15225 Declare before using.
15226
15227 * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
15228 (message-window-inside-pixel-edges): XEmacs compatible functions.
15229
15230 2015-08-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
15231
15232 * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
15233
15234 2015-08-17 Noah Friedman <friedman@splode.com>
15235
15236 * lisp/simple.el (blink-matching-open): Restore point before
15237 calling minibuffer-message.
15238
15239 2015-08-17 Ronnie Schnell <ronnie@driver-aces.com>
15240
15241 * lisp/play/dunnet.el: Update version number in header (now
15242 matches help).
15243
15244 2015-08-17 Paul Eggert <eggert@cs.ucla.edu>
15245
15246 Curved quotes in --batch diagnostics in non-UTF-8
15247 When run with --batch, check that curved quotes are compatible with
15248 the system locale before outputting them in diagnostics.
15249 Problem reported by Eli Zaretskii in:
15250 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
15251 * lisp/startup.el (command-line): Set internal--text-quoting-flag
15252 after the standard display table is initialized.
15253 * src/doc.c (default_to_grave_quoting_style): New function.
15254 (text_quoting_style): Use it.
15255 (text_quoting_flag): New static var, visible to Lisp as
15256 internal--text-quoting-flag.
15257 * src/emacs.c: Include <wchar.h> if available.
15258 (using_utf8): New function.
15259 (main): Use it to initialize text_quoting_flag.
15260 * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
15261 Don't define, as it's not needed and it clashes with wchar.h.
15262
15263 2015-08-17 Glenn Morris <rgm@gnu.org>
15264
15265 * doc/misc/tramp.texi (Configuration): Reword to avoid warning
15266 from makeinfo about spurious "Note:" cross-reference, and for grammar.
15267
15268 2015-08-17 Ilya Zakharevich <ilya@math.berkeley.edu>
15269
15270 Minor change in variable initialization on MS-Windows
15271 * src/w32fns.c <after_dead_key>: Initialize to -1.
15272 (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
15273 non-zero.
15274
15275 Fix a bug with LWindow key remapping on MS-Windows
15276 * src/w32fns.c (deliver_wm_chars): Fix a typo. (Bug#21276)
15277
15278 2015-08-17 Eli Zaretskii <eliz@gnu.org>
15279
15280 Improve fontset support for latest OTF script tags
15281 * lisp/international/fontset.el (otf-script-alist): Add some
15282 missing script tags.
15283 (setup-default-fontset): Include settings for v2 versions of the
15284 script tags used by some modern OTF/TTF fonts.
15285
15286 2015-08-17 Paul Eggert <eggert@cs.ucla.edu>
15287
15288 Spelling fixes
15289
15290 2015-08-16 Paul Eggert <eggert@cs.ucla.edu>
15291
15292 Use curved quotes in core elisp diagnostics
15293 In the core elisp files, use curved quotes in diagnostic formats,
15294 so that they follow user preference as per ‘text-quoting-style’
15295 rather than being hard-coded to quote `like this'.
15296 * lisp/abbrev.el (expand-region-abbrevs):
15297 * lisp/button.el (button-category-symbol, button-put)
15298 (make-text-button):
15299 * lisp/cus-start.el:
15300 * lisp/custom.el (custom-add-dependencies, custom-check-theme)
15301 (custom--sort-vars-1, load-theme):
15302 * lisp/emacs-lisp/byte-run.el (defun, defsubst):
15303 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
15304 (cl-generic-generalizers):
15305 * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
15306 * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
15307 * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
15308 (advice--make, define-advice):
15309 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
15310 * lisp/emacs-lisp/timer.el (timer-event-handler):
15311 * lisp/env.el (setenv):
15312 * lisp/facemenu.el (facemenu-add-new-face)
15313 (facemenu-add-new-color):
15314 * lisp/faces.el (face-documentation, read-face-name)
15315 (face-read-string, read-face-font, face-spec-set-match-display)
15316 (read-color, x-resolve-font-name):
15317 * lisp/files.el (locate-user-emacs-file, find-alternate-file)
15318 (set-auto-mode, hack-local-variables)
15319 (hack-one-local-variable--obsolete)
15320 (dir-locals-set-directory-class, write-file)
15321 (basic-save-buffer, delete-directory, copy-directory)
15322 (recover-session, recover-session-finish, insert-directory)
15323 (file-modes-char-to-who, file-modes-symbolic-to-number)
15324 (move-file-to-trash):
15325 * lisp/font-lock.el (font-lock-fontify-buffer):
15326 * lisp/format.el (format-write-file, format-find-file)
15327 (format-insert-file):
15328 * lisp/frame.el (get-device-terminal, select-frame-by-name):
15329 * lisp/fringe.el (fringe--check-style):
15330 * lisp/help.el (describe-minor-mode-from-indicator):
15331 * lisp/image.el (image-type):
15332 * lisp/international/fontset.el (x-must-resolve-font-name):
15333 * lisp/international/mule-cmds.el (prefer-coding-system)
15334 (select-safe-coding-system-interactively)
15335 (select-safe-coding-system, activate-input-method)
15336 (toggle-input-method, describe-current-input-method):
15337 * lisp/international/mule-conf.el (code-offset):
15338 * lisp/mouse.el (minor-mode-menu-from-indicator):
15339 * lisp/replace.el (query-replace-read-from)
15340 (occur-after-change-function, occur-1):
15341 * lisp/scroll-bar.el (scroll-bar-columns):
15342 * lisp/simple.el (execute-extended-command)
15343 (undo-outer-limit-truncate, compose-mail, set-variable)
15344 (choose-completion-string, define-alternatives):
15345 * lisp/startup.el (site-run-file, tty-handle-args)
15346 (command-line, command-line-1):
15347 * lisp/subr.el (noreturn, define-error, add-to-list)
15348 (read-char-choice):
15349 * lisp/term/common-win.el (x-handle-xrm-switch)
15350 (x-handle-name-switch, x-handle-args):
15351 * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
15352 Use curved quotes in diagnostics.
15353 * lisp/international/mule.el (find-auto-coding):
15354 Use " to quote in a diagnostic, to be consistent with the rest of
15355 this file.
15356
15357 Convert lisp/term/x-win.el to UTF-8
15358 * lisp/term/x-win.el: Convert to UTF-8. This doesn't affect
15359 runtime behavior, and the file is multilingual so compile-time
15360 appearance shouldn't be an issue.
15361 * admin/notes/unicode: Document this.
15362
15363 2015-08-16 Wilson Snyder <wsnyder@wsnyder.org>
15364
15365 Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
15366 * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
15367 issues and comments, bug#943.
15368 (verilog-type-font-keywords): Cycle delay operators like ##1 and
15369 ##[0:$] are now highlighted in their entirety similarly to the #
15370 delay-control operator. Likewise, the followed-by operators #-#
15371 and #=# are no longer partially highlighed.
15372 (verilog-backward-syntactic-ws-quick)
15373 (verilog-skip-backward-comments): Minor performance improvements
15374 to buffer traversal functions for reduced latency.
15375 (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
15376 keyword 'final' follows 'assert/assume/cover', then it is part of
15377 a deferred immediate assertion item and should not be treated as a
15378 final construct for indentation. Reported by Yuri Sugihara.
15379 (verilog-do-indent): Virtual task/function/class definition lines
15380 should not be considered as declarations. Reported by Enzo Chi.
15381 (verilog-do-indent): Do not falsely indent to '=' of
15382 property/sequence operators on subsequent lines of a multi-line
15383 statement.
15384 (verilog-assignment-operator-re): Fix '!==' operator and add
15385 support for '<->', ':/', '#-#', and '#=#' operators.
15386 (verilog-calculate-indent, verilog-label-be): Enable
15387 case-sensitive regular expression parsing when looking for
15388 keywords.
15389 (verilog-calc-1): Detect 'pure virtual method' declarations which
15390 exist in abstract classes. Reported by Enzo Chi and Kaushal Modi.
15391 (verilog-backward-ws&directives): When moving back to the start of
15392 a line and the preceeding line ended with an escaped-newline, then
15393 jump up one line. This properly consumes a multi-line
15394 pre-processor directive. Reported by Kaushal Modi.
15395 (verilog-dpi-import-export-re, verilog-extended-complete-re)
15396 (verilog-calc-1): Teach verilog-mode to properly indent after a
15397 DPI import/export statement that resides outside of a module.
15398 Reported by Kaushal Modi.
15399 (verilog-extended-complete-re): Update regexp to match both
15400 "DPI-C" and "DPI". Reported by Kaushal Modi.
15401
15402 2015-08-15 Paul Eggert <eggert@cs.ucla.edu>
15403
15404 substitute-command-keys a few more doc strings
15405 * lisp/allout.el (outlineify-sticky):
15406 * lisp/files.el (hack-one-local-variable--obsolete):
15407 * lisp/help-fns.el (help-fns--obsolete, describe-variable):
15408 Use substitute-command-keys on some doc strings so that
15409 they don't use hard-coded key bindings or quoting styles.
15410
15411 Fix quoting in Fformat calls
15412 * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
15413 (xpm_load, xpm_load_image, pbm_load, png_load_body)
15414 (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
15415 (imagemagick_load, svg_load, svg_load_image, gs_load)
15416 (x_kill_gs_process):
15417 * src/lread.c (load_warn_old_style_backquotes):
15418 * src/xfaces.c (load_pixmap):
15419 * src/xselect.c (x_clipboard_manager_error_1):
15420 Quote diagnostics according to user preference when calling
15421 Fformat or its derivatives.
15422
15423 2015-08-15 Glenn Morris <rgm@gnu.org>
15424
15425 * admin/admin.el (set-version, set-copyright): Remove deleted files.
15426
15427 2015-08-15 Stephen Leake <stephen_leake@stephe-leake.org>
15428
15429 Allow describe-function helpers to access buffer-local values
15430 This will be used by cedet/mode-local.el `describe-mode-local-override'
15431 on `help-fns-describe-function-functions' in upstream CEDET.
15432 * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
15433 `describe-function'.
15434 (describe-function): Bind it, save it on the help xref stack.
15435
15436 Handle pulse-background being nil
15437 * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
15438 pulse-background, handle it being nil.
15439
15440 2015-08-15 Paul Eggert <eggert@cs.ucla.edu>
15441
15442 Fix "\`" confusion in Lisp strings
15443 * admin/authors.el (authors-canonical-author-name):
15444 Fix typo by using "\\`" not "\`" in string RE.
15445 * lisp/obsolete/complete.el (PC-complete-as-file-name):
15446 * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
15447 * lisp/progmodes/verilog-mode.el (verilog-mode-map):
15448 Use plain "`", not the equivalent-but-confusing "\`", in strings.
15449 * lisp/textmodes/texinfmt.el: Fix comment likewise.
15450
15451 2015-08-15 Dani Moncayo <dmoncayo@gmail.com>
15452
15453 * nt/zipdist.bat: Remove -- no longer used.
15454
15455 2015-08-15 Jürgen Hötzel <juergen@archlinux.org>
15456
15457 * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
15458 rather than "getenforce".
15459 (tramp-sh-handle-set-file-selinux-context): Do not
15460 cache SELinux context if not all context components are given.
15461
15462 2015-08-15 Eli Zaretskii <eliz@gnu.org>
15463
15464 Add doc strings to 2 help-mode.el functions
15465 * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
15466 strings. (Bug#21263)
15467
15468 Remove files used by the old MS-Windows specific build procedure
15469 * admin/unidata/makefile.w32-in:
15470 * doc/emacs/makefile.w32-in:
15471 * doc/lispintro/makefile.w32-in:
15472 * doc/lispref/makefile.w32-in:
15473 * doc/misc/makefile.w32-in:
15474 * leim/makefile.w32-in:
15475 * lib-src/makefile.w32-in:
15476 * lib/makefile.w32-in:
15477 * lisp/makefile.w32-in:
15478 * nt/INSTALL.OLD:
15479 * nt/config.nt:
15480 * nt/emacs-src.tags:
15481 * nt/envadd.bat:
15482 * nt/gmake.defs:
15483 * nt/makefile.w32-in:
15484 * nt/multi-install-info.bat:
15485 * nt/nmake.defs:
15486 * nt/paths.h:
15487 * src/makefile.w32-in: Files deleted.
15488 * nt/configure.bat: Remove everything except the blurb about the
15489 new build procedure.
15490 * make-dist: Remove references to makefile.w32-in in various
15491 directories, and to files in nt/ that were deleted.
15492 * etc/NEWS: Mention the fact that the files were dropped.
15493
15494 2015-08-15 Paul Eggert <eggert@cs.ucla.edu>
15495
15496 * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
15497 (Bug#21248)
15498
15499 2015-08-14 Paul Eggert <eggert@cs.ucla.edu>
15500
15501 Default to inotify instead of gfile
15502 * configure.ac (with_file_notification): Fix typo that
15503 prevented suppression of file notification if HAVE_NS.
15504 (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
15505 with_file_notification is 'yes' (Bug#21241).
15506 * etc/NEWS: Mention this.
15507
15508 Fix broken URLs for ISO-IR
15509 * doc/emacs/mule.texi (Charsets):
15510 * lisp/international/mule-conf.el:
15511 Fix broken URL (Bug#21248).
15512
15513 Low-level diagnostics now use ‘text-quoting-style’
15514 * src/doprnt.c (doprnt):
15515 Format ` and ' as per ‘text-quoting-style’.
15516 * src/xdisp.c (vmessage, message): Mention that the format should
15517 not contain ` or '.
15518
15519 Prefer ‘format’ to ‘substitute-command-keys’
15520 * src/character.h (uLSQM, uRSQM): Move here ...
15521 * src/doc.c (uLSQM, uRSQM): ... from here.
15522 * src/doc.c (Fsubstitute_command_keys):
15523 * src/syntax.c (Finternal_describe_syntax_value):
15524 * lisp/cedet/mode-local.el (mode-local-print-binding)
15525 (mode-local-describe-bindings-2):
15526 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
15527 * lisp/cus-theme.el (describe-theme-1):
15528 * lisp/descr-text.el (describe-text-properties-1, describe-char):
15529 * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
15530 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
15531 * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
15532 * lisp/emacs-lisp/package.el (describe-package-1):
15533 * lisp/faces.el (describe-face):
15534 * lisp/help-fns.el (help-fns--key-bindings)
15535 (help-fns--compiler-macro, help-fns--parent-mode)
15536 (help-fns--obsolete, help-fns--interactive-only)
15537 (describe-function-1, describe-variable):
15538 * lisp/help.el (describe-mode):
15539 Prefer ‘format’ to ‘substitute-command-keys’ when either will do
15540 to implement quoting style. This generally makes the code simpler.
15541
15542 Extend ‘format’ to translate curved quotes
15543 This is a followup to the recent doc string change, and deals with
15544 diagnostics and the like. This patch is more conservative than
15545 the doc string change, in that the behavior of ‘format’ changes
15546 only if its first arg contains curved quotes and the user prefers
15547 straight or grave quotes. (Come to think of it, perhaps we should
15548 be similarly conservative with doc strings too, but that can wait.)
15549 The upside of this conservatism is that existing usage is almost
15550 surely unaffected. The downside is that we'll eventually have to
15551 change Emacs's format strings to use curved quotes in places where
15552 the user might want curved quotes, but that's a simple and
15553 mechanical translation that I'm willing to do later. (Bug#21222)
15554 * doc/lispref/help.texi (Keys in Documentation):
15555 Move description of text-quoting-style from here ...
15556 * doc/lispref/strings.texi (Formatting Strings):
15557 ... to here, and describe new behavior of ‘format’.
15558 * etc/NEWS: Describe new behavior.
15559 * lisp/calc/calc-help.el (calc-describe-thing):
15560 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
15561 * lisp/info.el (Info-find-index-name):
15562 Use ‘concat’ rather than ‘format’ to avoid misinterpretation
15563 of recently-added curved quotes.
15564 * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
15565 Move from here ...
15566 * src/lisp.h: ... to here.
15567 * src/doc.c (text_quoting_style): New function.
15568 (Fsubstitute_command_keys): Use it.
15569 * src/editfns.c (Fformat): Implement new behavior.
15570 * src/lisp.h (enum text_quoting_style): New enum.
15571
15572 2015-08-14 Stefan Monnier <monnier@iro.umontreal.ca>
15573
15574 * src/keyboard.c: Use false/true instead of 0/1 for booleans.
15575 * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
15576
15577 2015-08-14 Michael Albinus <michael.albinus@gmx.de>
15578
15579 * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
15580 stderr to /dev/null, this is done in `tramp-send-command-and-check'.
15581
15582 2015-08-14 Jürgen Hötzel <juergen@archlinux.org>
15583
15584 Flush file properties in Tramp
15585 * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
15586 (tramp-sh-handle-set-file-times):
15587 * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
15588 (tramp-adb-handle-set-file-times): Flush the file properties of
15589 the directory.
15590
15591 2015-08-14 Ronnie Schnell <ronnie@driver-aces.com>
15592
15593 * doc/emacs/misc.text (Amusements): Fixed typo.
15594
15595 2015-08-14 Eli Zaretskii <eliz@gnu.org>
15596
15597 Don't miss warnings about removing string text properties while dumping
15598 * src/alloc.c (purecopy): Warn about removing a string's text
15599 properties even when the same string was already pure-copied
15600 earlier.
15601 * lisp/progmodes/elisp-mode.el (elisp--xref-format)
15602 (elisp--xref-format-extra): Fix the commentary.
15603
15604 2015-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
15605
15606 * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
15607
15608 2015-08-13 Magnus Henoch <magnus.henoch@gmail.com>
15609
15610 * lisp/progmodes/compile.el: Use lexical-binding.
15611 (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
15612
15613 2015-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
15614
15615 (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
15616 * lisp/uniquify.el: Remove redundant `:group's.
15617
15618 2015-08-13 Jürgen Hötzel <juergen@archlinux.org>
15619
15620 * lisp/net/tramp-adb.el
15621 (tramp-adb-handle-directory-files-and-attributes): Make a copy of
15622 result to prevent modification of the tramp-cache by side effects.
15623 Use the correct cache key.
15624
15625 2015-08-13 Paul Eggert <eggert@cs.ucla.edu>
15626
15627 Make add_to_log varargs
15628 * src/alloc.c (run_finalizer_handler):
15629 * src/charset.c (load_charset_map_from_vector):
15630 * src/nsimage.m (ns_load_image):
15631 * src/xfaces.c (load_pixmap, load_color2):
15632 Simplify, now that add_to_log has a variable number of args.
15633 * src/image.c (image_error): Take a variable number of args.
15634 Callers simplified.
15635 * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
15636 * src/xdisp.c (format_nargs, vadd_to_log): New functions.
15637 (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
15638 * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
15639
15640 Optional args for holiday-greek-orthodox-easter
15641 * etc/NEWS: Document this.
15642 * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
15643 Add optional args N and STRING, mimicking the API and code of
15644 ‘holiday-easter-etc’. From suggestion by Foivos S. Zakkak (Bug#21256).
15645
15646 2015-08-13 Stephen Leake <stephen_leake@stephe-leake.org>
15647
15648 xref-find-definitions: Exclude more generic function items.
15649 * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
15650 Add doc string.
15651 (cl--generic-find-defgeneric-regexp): New.
15652 (find-function-regexp-alist): Add it.
15653 * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
15654 elisp-mode.el, change to search for ";;; Code:"
15655 (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
15656 (find-function-regexp-alist): Add them.
15657 * lisp/progmodes/elisp-mode.el:
15658 (elisp--xref-format, elisp--xref-format-extra): Change back to
15659 defvar due to bug#21237.
15660 (elisp--xref-find-definitions): Exclude co-located default methods for
15661 generic functions. Also exclude implicitly declared defgeneric.
15662 (elisp--xref-find-definitions): Handle C source properly. Exclude minor
15663 mode variables defined by 'define-minor-mode'.
15664 * test/automated/elisp-mode-tests.el: Declare generic functions, add
15665 tests for them.
15666 (xref-elisp-test-run): Fix bug.
15667 (emacs-test-dir): Improve initial value.
15668 (find-defs-defun-defvar-el): Don't expect defvar.
15669 (find-defs-feature-el): Match change to find-feature-regexp.
15670
15671 2015-08-13 Eli Zaretskii <eliz@gnu.org>
15672
15673 Improve warning about purecopy of strings with properties
15674 * src/alloc.c (purecopy): Show the offending string with the
15675 warning about removing its text properties.
15676
15677 2015-08-12 Alan Mackenzie <acm@muc.de>
15678
15679 Introduce new macros to cover Emacs's new names in cl-lib.el
15680 This also eliminates `mapcan' warnings in XEmacs.
15681 * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
15682 characterise [X]Emacs versions.
15683 (top-level): Require either 'cl or 'cl-lib, depending on
15684 c--mapcan-status.
15685 Change this back to cc-external-require from an eval-when-compile
15686 require.
15687 (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
15688 (c--delete-duplicates): New macros which expand into either old or new
15689 names.
15690 (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
15691 rather than the old names.
15692 * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
15693 rather than mapcan.
15694 * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
15695 * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
15696 depending on c--mapcan-status.
15697 (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
15698 (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
15699 (c-not-decl-init-keywords, c-not-primitive-type-keywords)
15700 (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
15701 (c-decl-block-key, c-keywords, c-keywords-obarray)
15702 (c-regular-keywords-regexp, c-primary-expr-regexp)
15703 (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
15704 (c-known-type-key, c-nonlabel-token-key)
15705 (c-make-init-lang-vars-fun): Use the new macros rather than the old
15706 names.
15707
15708 2015-08-12 Oleh Krehel <ohwoeowho@gmail.com>
15709
15710 loadhist.el (read-feature): Conform to completing-read
15711 * lisp/loadhist.el (read-feature): According to `completing-read'
15712 documentation, if collection is a list, then it must be a list of
15713 strings, not a list of symbols like before.
15714
15715 2015-08-12 David Kastrup <dak@gnu.org>
15716
15717 Deal gracefully with up-events (Bug#19746)
15718 * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
15719 (parse_modifiers_uncached): React gracefully to "up-" modifiers:
15720 those may easily be injected by user-level Lisp code.
15721 (read_key_sequence): Discard unbound up-events like unbound
15722 down-events: they are even more likely only relevant for special
15723 purposes.
15724 While Emacs will not produce up-events on its own currently (those are
15725 converted to drag or click events before being converted to
15726 Lisp-readable structures), the input queue can be made to contain them
15727 by synthesizing events to `unread-command-events'. Emacs should deal
15728 consistently with such events.
15729
15730 2015-08-12 Eli Zaretskii <eliz@gnu.org>
15731
15732 Fix display of thin lines whose newline has line-height property of t
15733 * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
15734 and descent values of non-empty glyph rows, since they could have
15735 forced low values deliberately. (Bug#21243)
15736
15737 2015-08-12 Richard Stallman <rms@gnu.org>
15738
15739 Offer to combine multiple To or CC fields.
15740 * lisp/mail/sendmail.el (mail-combine-fields): New function.
15741 (mail-send): Call 'mail-combine-fields'.
15742
15743 Don't decrypt encrypted files.
15744 * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
15745
15746 Handle encrypted mbox files.
15747 * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
15748 the mbox file if necessary.
15749
15750 Re-enable mime processing after decryption. Add 'decrypt' keyword.
15751 * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
15752 (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
15753 In a mime message, reenable Mime and show the parts that
15754 were shown before.
15755 Add keyword "decrypt" if anything decrypted.
15756
15757 epa-inhibit inhibits auto-recognition of .gpg files
15758 * lisp/epa-file.el (epa-inhibit): New variable.
15759 (epa-file-handler): Check epa-inhibit.
15760
15761 2015-08-12 Artur Malabarba <bruce.connor.am@gmail.com>
15762
15763 * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
15764
15765 2015-08-11 Fabián Ezequiel Gallina <fgallina@gnu.org>
15766
15767 Respect python.el imenu when semantic-mode is off
15768 Fixes bug#21220
15769 * lisp/cedet/semantic/wisent/python.el: Do not force
15770 wisent-python-default-setup on python-mode-hook.
15771
15772 2015-08-11 Paul Eggert <eggert@cs.ucla.edu>
15773
15774 Give names to Unicode code points in C code
15775 * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
15776 (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
15777 (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
15778 (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
15779 (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
15780 (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
15781 (OBJECT_REPLACEMENT_CHARACTER):
15782 New named constants for Unicode code points.
15783 * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
15784 * src/composite.c (char_composable_p):
15785 * src/lread.c (readevalloop, read1):
15786 * src/xdisp.c (get_next_display_element):
15787 Use them.
15788 * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
15789 Remove; now in character.h.
15790
15791 2015-08-11 Stephen Leake <stephen_leake@stephe-leake.org>
15792
15793 elisp--xref-find-definitions handle cl-defstuct default constructor
15794 * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
15795 (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
15796 (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
15797 * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
15798 from xref-elisp-test for ease of debugging.
15799 (xref-elisp-deftest): Rename from xref-elisp-test.
15800 (find-defs-constructor): New test.
15801 (find-defs-defgeneric-el): Match batch test config.
15802 (compile): Required for find-defs compilation-minor-mode test.
15803 (find-defs-defvar-el): Match code change.
15804 (find-defs-face-el): Match code change.
15805 * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
15806 Improve doc string.
15807
15808 2015-08-11 Stefan Monnier <monnier@iro.umontreal.ca>
15809
15810 * lisp/replace.el (perform-replace): Document `replacements'.
15811 (perform-replace): Move the description of the format of `replacements'
15812 from the body's comment to the doc string.
15813
15814 2015-08-11 Jürgen Hötzel <juergen@archlinux.org>
15815
15816 * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
15817 sequence. Recent adb version send initial escape sequences, even
15818 when terminal type is set to TERM=dumb.
15819
15820 2015-08-10 Stephen Leake <stephen_leake@stephe-leake.org>
15821
15822 Rewrite elisp--xref-find-definitions to handle many more cases; add tests
15823 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
15824 Function deleted.
15825 (elisp--xref-format-cl-defmethod): New defconst.
15826 (find-feature-regexp, find-alias-regexp): New defcustoms.
15827 (elisp--xref-make-xref): New function.
15828 (elisp--xref-find-definitions): Rewrite using the above, handle many
15829 more cases. Always output all available definitions.
15830 (xref-location-marker): No need for special cases.
15831 * test/automated/elisp-mode-tests.el: Add more tests of
15832 elisp--xref-find-definitions, improve current tests.
15833
15834 2015-08-10 Eli Zaretskii <eliz@gnu.org>
15835
15836 Fix recording of events pushed onto unread-command-events
15837 * src/keyboard.c (read_char): Make sure events read from
15838 unread-command-events and unread-post-input-method-events are
15839 always recorded by record_char. Reported by David Kastrup
15840 <dak@gnu.org>, see
15841 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
15842
15843 2015-08-10 Samer Masterson <samer@samertm.com>
15844
15845 Set file buffer as current for "--file"
15846 * lisp/startup.el (command-line-1): Set file buffer as current before
15847 it is displayed so it can be used with options like "--eval".
15848 (Bug#21095)
15849
15850 2015-08-10 Eli Zaretskii <eliz@gnu.org>
15851
15852 Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
15853 * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
15854 after setting LC_ALL to the desired locale, to avoid affecting how
15855 numbers are read and printed. (Bug#21223)
15856
15857 2015-08-10 Alan Mackenzie <acm@muc.de>
15858
15859 Fix "Invalid search bound (wrong side of point)" in fontification
15860 * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
15861 an initialization expression, check point is not beyond the
15862 fontification limit.
15863
15864 2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
15865
15866 Fix DPI calculation when Xft/DPI is default
15867 * src/xsettings.c (parse_settings): Don't use Xft/DPI default
15868 value of -1, which evaluates to 2**32 - 1 (Bug#21152).
15869 Remove unnecessary cast while we're in the neighborhood.
15870
15871 2015-08-09 Dmitry Gutov <dgutov@yandex.ru>
15872
15873 Add project-vc-search-path and project-vc-ignores
15874 * lisp/progmodes/project.el (project-vc): New group.
15875 (project-vc-search-path, project-vc-ignores): New variables.
15876 (project--value-in-dir): Utility function.
15877 (project-search-path, project-ignores): Use them.
15878 * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
15879 at bos. Don't add extra `/'. Don't prepend with `*' if replaced.
15880
15881 2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
15882
15883 Fix some minor quoting issues with grave accent
15884 * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
15885 Remove redundant quotes.
15886 * src/doc.c (uLSQM, uRSQM): New macros.
15887 * src/doc.c (Fsubstitute_command_keys):
15888 * src/syntax.c (Finternal_describe_syntax_value): Follow the user
15889 preference for quotes rather than hardcoding the ‘grave’ style.
15890 * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
15891 (re_match_2_internal) [DEBUG]: In debugging output, quote C
15892 strings with "...", not `...'.
15893
15894 ChangeLog.2 ignores remote-tracking merges
15895 * build-aux/gitlog-to-emacslog: Ignore commit logs matching
15896 "Merge remote-tracking branch '.*'" too. See Eli Zaretskii in:
15897 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
15898
15899 2015-08-09 Nicolas Richard <youngfrog@members.fsf.org>
15900
15901 Use kpsewhich in ffap-latex-mode, if available
15902 * lisp/ffap.el (ffap-latex-guess-rules): New variable.
15903 (ffap-latex-mode): Use kpsewhich if available.
15904
15905 ffap: disallow braces in filenames for tex modes
15906 * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
15907 braces in tex-related modes.
15908
15909 Remove useless backslashes from ffap-string-at-point-mode-alist
15910 * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
15911 misleading backslashes from default value.
15912
15913 Augment docstring of ffap-string-at-point-mode-alist
15914 * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
15915 and END are handled.
15916
15917 2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
15918
15919 * lisp/org/org-src.el (org-edit-src-code)
15920 (org-edit-fixed-width-region):
15921 * lisp/simple.el (completion-setup-function):
15922 Remove calls to substitute-command-keys that always just return
15923 their argument.
15924
15925 2015-08-09 Daiki Ueno <ueno@gnu.org>
15926
15927 * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
15928 (Bug#21210)
15929
15930 2015-08-09 Ivan Kanis <ivan@kanis.fr>
15931
15932 Fix link to source code in help window
15933 * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
15934 will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
15935 'No longer include timestamp in header of .elc files'. Add code
15936 that will return .el source file in load-path.
15937
15938 2015-08-09 Artur Malabarba <bruce.connor.am@gmail.com>
15939
15940 * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
15941 Respect `isearch-lax-whitespace' when searching through
15942 `isearch-word'.
15943
15944 2015-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
15945
15946 * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
15947
15948 * org.el: Fix up some lexical scoping warnings, and use dolist
15949 * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
15950 (org-set-regexps-and-options, org-assign-fast-keys)
15951 (org-contextualize-keys, org-contextualize-validate-key)
15952 (org-notes-order-reversed-p, org-local-logging, org-map-entries)
15953 (org-find-olp, org-find-exact-heading-in-directory)
15954 (org-cycle-agenda-files, org-release-buffers, org-fill-template)
15955 (org-agenda-prepare-buffers, org-occur-in-agenda-files)
15956 (org-replace-escapes): Use dolist.
15957 (org-mode): Optimize away XEmacs-only code.
15958 (org-refile-get-targets): Remove unused var `f'.
15959 (org-fast-todo-selection): Remove unused var `e'.
15960 (org-make-tags-matcher): Use dolist. Remove unused var `term'.
15961 (org-fast-tag-selection): Use dolist. Remove unused var `e'.
15962 (org-format-latex): Use dolist. Remove unused var `e'.
15963 (org-toggle-heading): Access vars lexically rather than dynamically.
15964 (org-backward-sentence, org-forward-sentence, org-meta-return)
15965 (org-kill-line): Mark arg as unused.
15966 (org-submit-bug-report): Silence compiler warning.
15967 (org-occur-in-agenda-files): Don't use add-to-list on local vars.
15968 (org-get-cursor-date): Remove unused var `tm'.
15969 (org-comment-or-uncomment-region): Use standard name `_'.
15970 (reftex-docstruct-symbol, reftex-cite-format): Declare to
15971 silence byte-compiler.
15972 (org-reftex-citation): Add `org--' prefix to dynamically scoped
15973 `rds' var.
15974
15975 2015-08-08 Paul Eggert <eggert@cs.ucla.edu>
15976
15977 Electric quote if coding is undecided or no conv
15978 * lisp/electric.el (electric--insertable-p): Also say that a
15979 string is insertable if the buffer file coding system is undecided
15980 or uses no conversion, as curved quotes will work in either case.
15981
15982 * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
15983
15984 2015-08-08 Eli Zaretskii <eliz@gnu.org>
15985
15986 Fix overlay string display regressions introduced in Emacs 24.5
15987 * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
15988 buffer position, if we move the iterator to a new position as
15989 result of jumping over text covered by a "replacing" display
15990 property.
15991 * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
15992
15993 Support recovery from C stack overflow on MS-Windows
15994 * src/w32fns.c (w32_reset_stack_overflow_guard)
15995 (stack_overflow_handler): New functions for handling C stack
15996 overflow exceptions.
15997 (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
15998 specially, and zero out except_addr if we do.
15999 (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
16000 mode.
16001 * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
16002 the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
16003 the MinGW build, but the code guarded by that is for Posix hosts.
16004 * src/keyboard.c (command_loop) [WINDOWSNT]:
16005 Call w32_reset_stack_overflow_guard.
16006 * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
16007 (sigsetjmp): New macro.
16008 (w32_reset_stack_overflow_guard): Declare the prototype.
16009 * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
16010
16011 2015-08-07 Phillip Lord <phillip.lord@newcastle.ac.uk>
16012
16013 Improve error signalling for seq-subseq
16014 * lisp/seq.el (seq-subseq): The existing behavior is to error
16015 when indexes are too large, but to silently ignore numbers which
16016 are too negative for lists. String and vector handling errors in
16017 both cases. This has been regularized. Error signaling behavior
16018 has been explicitly added to the doc string.
16019
16020 * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
16021 therefore also impacted by this change. Update the doc string
16022 to reflect this.
16023
16024 * test/automated/seq-tests.el (test-seq-subseq): Tests have been
16025 added for these exceptional cases, as well as one non exceptional
16026 base case.
16027
16028 2015-08-07 Jürgen Hötzel <juergen@archlinux.org>
16029
16030 Improve error checking in tramp-adb.el
16031 * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
16032 Improve error checking. "ls -l" on Android in Enforcing mode can
16033 print "lstat './FILENAME failed: Permission denied".
16034
16035 2015-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
16036
16037 * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
16038 non-struct vectors.
16039
16040 2015-08-07 Stephen Leake <stephen_leake@stephe-leake.org>
16041
16042 Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
16043 * lisp/window.el: Fix typo that broke build.
16044 (display-buffer--action-function-custom-type):
16045 Add `display-buffer-use-some-frame'.
16046 (display-buffer): Add `display-buffer-use-some-frame' to doc string.
16047
16048 Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
16049 * lisp/window.el (display-buffer-use-some-frame): Add support for
16050 'inhibit-same-window in alist.
16051 * doc/windows.texi (display-buffer-use-some-frame): Doc support for
16052 'inhibit-same-window in alist.
16053
16054 2015-08-07 Eli Zaretskii <eliz@gnu.org>
16055
16056 Avoid infinite loop in display of invisible text in strings
16057 * src/xdisp.c (handle_invisible_prop): If the next change of
16058 invisibility spec does not mean the beginning of a visible text,
16059 update the string position from which to start the search for the
16060 next invisibility change. This avoids an infinite loop when we
16061 have more than one invisibility spec that are made inactive by
16062 buffer-invisibility-spec. Simplify code. (Bug#21200)
16063 * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
16064 for the situation that caused bug #21200.
16065
16066 2015-08-06 Artur Malabarba <bruce.connor.am@gmail.com>
16067
16068 * lisp/emacs-lisp/package.el: Simplify describe-package-1
16069 (package-help-section-name-face): New face.
16070 (package--print-help-section): New function.
16071 (describe-package-1): Refactor section printing.
16072 (package-make-button): Use face instead of font-lock-face, which
16073 doesn't work on buttons.
16074
16075 * lisp/emacs-lisp/package.el: Define custom faces
16076 (package-name-face, package-description-face)
16077 (package-status-built-in-face, package-status-external-face)
16078 (package-status-available-face, package-status-new-face)
16079 (package-status-held-face, package-status-disabled-face)
16080 (package-status-installed-face, package-status-dependency-face)
16081 (package-status-unsigned-face, package-status-incompat-face)
16082 (package-status-avail-obso-face): New faces.
16083 (package-menu--print-info-simple): Use them.
16084
16085 2015-08-05 Paul Eggert <eggert@cs.ucla.edu>
16086
16087 Fix some confusion with ‘format’
16088 * lisp/allout-widgets.el (allout-widgets-before-change-handler)
16089 (allout-graphics-modification-handler):
16090 Protect arbitrary string in a format context with "%s" format.
16091 * lisp/avoid.el:
16092 * lisp/cedet/semantic/bovine/scm.el: Fix comment.
16093 * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
16094 * lisp/erc/erc-button.el (erc-button-beats-to-time):
16095 * lisp/gnus/message.el (message-send-form-letter):
16096 * lisp/org/ob-core.el (org-babel-check-evaluate)
16097 (org-babel-confirm-evaluate):
16098 * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
16099 * lisp/org/ox-latex.el (org-latex-compile):
16100 * lisp/org/ox-man.el (org-man-compile):
16101 * lisp/org/ox-odt.el (org-odt-template):
16102 * lisp/org/ox-texinfo.el (org-texinfo-compile):
16103 * lisp/progmodes/prolog.el (prolog-help-info)
16104 (prolog-view-predspec):
16105 * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
16106 * lisp/progmodes/verilog-mode.el (verilog-showscopes):
16107 * lisp/textmodes/rst.el (rst-replace-lines):
16108 Change (message (format ...)) to (message ...), and likewise
16109 for ‘error’. This lessens the probability of confusion when the
16110 output of ‘format’ contains ‘%’.
16111
16112 2015-08-05 Artur Malabarba <bruce.connor.am@gmail.com>
16113
16114 * lisp/replace.el (replace-character-fold): Default to nil.
16115
16116 * lisp/character-fold.el: Fix lax whitespace.
16117 (character-fold-table): Don't make space match other whitespace chars.
16118 (character-fold-to-regexp): Simplify lax behavior.
16119
16120 2015-08-05 Dmitry Gutov <dgutov@yandex.ru>
16121
16122 Preserve window point in xref-find-definitions-other-window
16123 Fix the problem reported by Ingo Logmar in
16124 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
16125 * lisp/progmodes/xref.el (xref--goto-char): Extract from
16126 xref--goto-location.
16127 (xref--pop-to-location): Use it. Replace xref--goto-location with
16128 a direct xref-location-marker call.
16129 (xref--show-location): Likewise.
16130 (xref--display-position): Use xref--goto-char.
16131
16132 * lisp/progmodes/project.el: Add a paragraph to the front matter.
16133
16134 2015-08-04 David Kastrup <dak@gnu.org>
16135
16136 * lisp/vc/emerge.el (emerge-show-file-name):
16137 * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
16138 (vhdl-comment-insert, vhdl-hooked-abbrev):
16139 * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
16140 * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
16141 * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
16142 * lisp/progmodes/cperl-mode.el (cperl-putback-char):
16143 * lisp/obsolete/vip.el (vip-escape-to-emacs)
16144 (vip-prefix-arg-value, vip-prefix-arg-com):
16145 * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
16146 * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
16147 (quail-tibkey-update-translation):
16148 * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
16149 * lisp/leim/quail/lao.el (quail-lao-update-translation):
16150 * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
16151 (quail-japanese-self-insert-and-switch-to-alpha):
16152 * lisp/leim/quail/hangul.el (hangul2-input-method)
16153 (hangul3-input-method, hangul390-input-method):
16154 * lisp/language/hanja-util.el (hangul-to-hanja-char):
16155 * lisp/international/robin.el (robin-input-method):
16156 * lisp/international/quail.el (quail-start-translation)
16157 (quail-start-conversion):
16158 * lisp/gnus/gnus-art.el (gnus-article-describe-key)
16159 (gnus-article-describe-key-briefly):
16160 * lisp/eshell/em-hist.el (eshell-list-history):
16161 * lisp/term.el (term-dynamic-list-input-ring)
16162 (term-dynamic-list-completions):
16163 * lisp/subr.el (momentary-string-display):
16164 * lisp/simple.el (read-quoted-char):
16165 * lisp/pcomplete.el (pcomplete-show-completions):
16166 * lisp/kmacro.el (kmacro-repeat-on-last-key):
16167 * lisp/info.el (Info-summary):
16168 * lisp/ehelp.el (electric-help-command-loop):
16169 * lisp/ebuff-menu.el (electric-buffer-list)
16170 (Electric-buffer-menu-exit):
16171 * lisp/double.el (double-translate-key):
16172 * lisp/comint.el (comint-dynamic-list-input-ring)
16173 (comint-dynamic-list-completions): Do not overwrite preexisting
16174 contents of `unread-command-events' when putting new events into it.
16175
16176 2015-08-04 Daniel Colascione <dancol@dancol.org>
16177
16178 Improve ansi-color filtering of unrecognized escape sequences
16179 * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
16180 escape sequences.
16181 (ansi-color-filter-apply, ansi-color-apply): Filter out
16182 unrecognized escape sequences.
16183
16184 2015-08-04 Artur Malabarba <bruce.connor.am@gmail.com>
16185
16186 * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
16187 definitions to `easy-menu-define', improve a couple to account for
16188 async, and add a couple of new commands.
16189
16190 2015-08-03 Jürgen Hötzel <juergen@archlinux.org>
16191
16192 * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
16193
16194 2015-08-03 Ingo Lohmar <i.lohmar@gmail.com>
16195
16196 Add new 'calendar-weekend-days' option
16197 Make the days receiving the 'calendar-weekend-header' face freely
16198 customizable, as they differ by region/culture.
16199 * doc/emacs/calendar.texi (Move to Beginning or End): Document the
16200 new variable.
16201 * lisp/calendar/calendar.el (calendar-generate-month): New variable
16202 calendar-weekend-days to customize day header fontification.
16203
16204 2015-08-03 Paul Eggert <eggert@cs.ucla.edu>
16205
16206 Redo text-quoting-style variable
16207 Rename help-quote-translation to text-quoting-style,
16208 and use symbols rather than characters as values.
16209 This follows suggestions along these lines by Alan Mackenzie in:
16210 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
16211 and by Drew Adams in:
16212 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
16213 * doc/lispref/help.texi (Keys in Documentation)
16214 * etc/NEWS:
16215 * lisp/cus-start.el (standard):
16216 * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
16217 Document and/or implement the new behavior instead of the old.
16218 (syms_of_doc): New symbols 'grave' and 'straight'.
16219
16220 2015-08-03 Nikolaus Rath <Nikolaus@rath.org>
16221
16222 nnimap.el: Use IMAP MOVE extension if available
16223 * lisp/gnus/nnimap.el (nnimap-request-move-article)
16224 (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
16225 Use MOVE extension if available.
16226
16227 nnimap.el: Explicitly ask for server capabilities
16228 * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
16229 capabilities will be returned in the login-result.
16230
16231 2015-08-02 Paul Eggert <eggert@cs.ucla.edu>
16232
16233 Treat help strings like other doc strings
16234 * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
16235 * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
16236 substitute-command-keys.
16237 * src/keyboard.c (show_help_echo, parse_menu_item): Call
16238 substitute-command-keys on the help string before displaying it.
16239
16240 Also mention "curly quotes"
16241 See Drew Adams's email in:
16242 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
16243 * doc/lispref/help.texi (Keys in Documentation):
16244 Add index entry "curly quotes".
16245 * etc/NEWS: Use the phrase "curly quotes" too.
16246
16247 ede-proj-target-makefile docstring tweaks
16248 * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
16249 Consistently use "all:" to describe the all: target,
16250 replacing three different and confusingly-quoted usages.
16251
16252 2015-08-02 Evgeny Fraimovitch <johnlen7@gmail.com> (tiny change)
16253
16254 Don't abort emacsclientw when -a was specified
16255 * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
16256 out if we are in emacsclientw and -a was specified.
16257
16258 2015-08-02 Eli Zaretskii <eliz@gnu.org>
16259
16260 Fix handling of 1st keystroke on MS-Windows
16261 * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
16262 This is needed to correctly handle the session's first keystroke,
16263 if it has any modifiers. (Bug#19994)
16264
16265 2015-08-02 Paul Eggert <eggert@cs.ucla.edu>
16266
16267 Substitute some customization etc. doc strings
16268 These changes apply substitute-command-keys to some
16269 doc strings that were going through untranslated
16270 when creating customization or other widgets.
16271 * lisp/cus-edit.el (custom-group-value-create):
16272 * lisp/wid-edit.el (widget-default-create):
16273 (widget-push-button-value-create):
16274 Treat the widget tag as a doc string.
16275 * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
16276 Treat the :documentation value as a doc string.
16277 * lisp/wid-edit.el (widget-choose):
16278 Treat the choice names as doc strings.
16279 (widget-default-create): Treat the :doc value as a doc string.
16280 (widget-toggle-value-create): Treat the :on and :off values
16281 as doc strings.
16282 (widget-documentation-string-value-create):
16283 Substitute the doc string.
16284
16285 2015-08-01 Dmitry Gutov <dgutov@yandex.ru>
16286
16287 Add a second argument to project-ignores
16288 * lisp/progmodes/project.el (project-ignores): Add a second
16289 argument DIR.
16290 * lisp/progmodes/project.el (project-ignores): Only include the VC
16291 ignores if DIR is the VC root.
16292 * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
16293
16294 2015-08-01 Eli Zaretskii <eliz@gnu.org>
16295
16296 Prevent incorrect display when 'line-spacing' variable is set
16297 * src/xdisp.c (try_window_id): Give up this optimization if the
16298 buffer has its 'line-spacing' variable set non-nil.
16299
16300 2015-08-01 Dmitry Gutov <dgutov@yandex.ru>
16301
16302 Don't pass NOVISIT to find-file
16303 * lisp/progmodes/etags.el (next-file):
16304 Don't pass NOVISIT to find-file (bug#21175).
16305
16306 Ignore buffer restriction for tags-loop-eval
16307 * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
16308 restriction (bug#21167).
16309
16310 2015-08-01 Eli Zaretskii <eliz@gnu.org>
16311
16312 Fix a thinko in 'ffap-gopher-at-point'
16313 * lisp/ffap.el (ffap-gopher-at-point): Fix last change. (Bug#21168)
16314
16315 Honor 'line-spacing' for empty lines
16316 * src/xdisp.c (append_space_for_newline): Honor 'line-height'
16317 property and 'line-spacing' frame parameter or variable or
16318 property for empty lines, by doing the same processing as in
16319 x_produce_glyph for newline characters. (Bug#21165)
16320
16321 2015-08-01 Paul Eggert <eggert@cs.ucla.edu>
16322
16323 Simplify by assuming C99 integer division
16324 * src/floatfns.c (ceiling2, floor2, truncate2):
16325 Assume C99 (i.e., Fortran) semantics for integer division.
16326 This simplifies the code.
16327
16328 2015-07-31 Paul Eggert <eggert@cs.ucla.edu>
16329
16330 Don't overflow if computing approximate percentage
16331 * lisp/align.el (align-region):
16332 * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
16333 * lisp/cedet/semantic/wisent.el (wisent-parse-region):
16334 * lisp/cus-edit.el (custom-buffer-create-internal):
16335 * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
16336 (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
16337 (checkdoc-next-message-error):
16338 * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
16339 * lisp/epa.el (epa-progress-callback-function):
16340 * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
16341 * lisp/ffap.el (ffap-menu-rescan):
16342 * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
16343 * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
16344 * lisp/gnus/nneething.el (nneething-retrieve-headers):
16345 * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
16346 * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
16347 * lisp/gnus/nnml.el (nnml-retrieve-headers):
16348 * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
16349 * lisp/gnus/nntp.el (nntp-retrieve-headers)
16350 (nntp-retrieve-articles):
16351 * lisp/imenu.el (imenu--relative-position):
16352 * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
16353 (skkdic-convert-okuri-nasi):
16354 * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
16355 * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
16356 * lisp/org/org-list.el (org-update-checkbox-count):
16357 * lisp/org/org.el (org-table-map-tables)
16358 (org-update-parent-todo-statistics):
16359 * lisp/play/decipher.el (decipher-insert-frequency-counts)
16360 (decipher-analyze-buffer):
16361 * lisp/profiler.el (profiler-format-percent):
16362 * lisp/progmodes/cc-cmds.el (c-progress-update):
16363 * lisp/progmodes/cpp.el (cpp-highlight-buffer):
16364 * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
16365 (idlwave-list-load-path-shadows):
16366 * lisp/progmodes/opascal.el (opascal-step-progress):
16367 * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
16368 (vhdl-scan-directory-contents):
16369 * lisp/textmodes/bibtex.el (bibtex-progress-message):
16370 * lisp/textmodes/flyspell.el (flyspell-small-region)
16371 (flyspell-external-point-words):
16372 * lisp/textmodes/table.el (table-recognize):
16373 Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
16374 progress-report percentages and the like. This avoids problems
16375 if (* 100 NUMERATOR) would overflow.
16376 * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
16377 * lisp/gnus/registry.el (registry-reindex):
16378 Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
16379 * lisp/descr-text.el (describe-char):
16380 * lisp/org/org-colview.el (org-nofm-to-completion):
16381 * lisp/ps-print.el (ps-plot):
16382 * lisp/simple.el (what-cursor-position):
16383 Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
16384 more-complicated and less-accurate approximation.
16385
16386 Fix some int overflows in profiler.c
16387 * src/profiler.c (make_log): Make args EMACS_INT, not int,
16388 to avoid unwanted behavior on 'int' overflow.
16389 (make_log, evict_lower_half, record_backtrace):
16390 Use ptrdiff_t, not int, for object indexes.
16391
16392 Port to pedantic memcpy
16393 * src/keyboard.c (menu_bar_items, tool_bar_items):
16394 * src/xrdb.c (magic_db):
16395 Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
16396
16397 Merge from gnulib
16398 This incorporates:
16399 2015-07-29 time_rz: port to pedantic memcpy
16400 * lib/time_rz.c: Copy from gnulib.
16401
16402 2015-07-31 Artur Malabarba <bruce.connor.am@gmail.com>
16403
16404 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
16405 When updating the very last entry, tabulated-list-print would
16406 erase it and then try to look at the next one (which obviously
16407 isn't there).
16408
16409 2015-07-31 Eli Zaretskii <eliz@gnu.org>
16410
16411 Allow to use the old key processing code on MS-Windows
16412 * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
16413 New variable.
16414 (w32_wnd_proc): Use it to invoke the old code that processed
16415 character keys, as fallback, when this variable is non-nil.
16416 Fix typos in comments. (Bug#19994)
16417
16418 2015-07-31 Ilya Zakharevich <ilya@math.berkeley.edu>
16419
16420 Improve handling of Unicode keyboard input on MS-Windows
16421 * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
16422 (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
16423 (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
16424 upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages. If that is
16425 successful, don't call TranslateMessage. (Bug#19994)
16426
16427 2015-07-30 Dmitry Gutov <dgutov@yandex.ru>
16428
16429 Fix default-directory in changeset diffs after vc-print-log
16430 * lisp/vc/log-view.el (log-view-diff-common): Move the
16431 revision-granularity check back into log-view-diff-changeset.
16432 (log-view-diff-changeset): Bind default-directory to the current
16433 VC root.
16434
16435 Rename project-directories to project-roots
16436 * lisp/progmodes/project.el (project-search-path-function)
16437 (project-search-path): Update the docstring.
16438 (project-directories): Rename to `project-roots', update all
16439 callers and implementations accordingly.
16440 (project-root): Remove.
16441 * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
16442 as the default file mask.
16443
16444 2015-07-30 Eli Zaretskii <eliz@gnu.org>
16445
16446 Support long URLs in w32-shell-execute
16447 * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
16448 and filename_to_ansi to convert the DOCUMENT argument, as it could
16449 be a URL that is not limited to MAX_PATH characters. Instead, use
16450 MultiByteToWideChar directly, and allocate heap storage as
16451 required to accommodate the converted string. Likewise with
16452 non-Unicode operation. Ensure OPERATION is null-terminated, even
16453 if it is longer than 32K bytes. (Bug#21158)
16454
16455 2015-07-30 Stephen Leake <stephen_leake@stephe-leake.org>
16456
16457 * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
16458
16459 2015-07-29 Stephen Leake <stephen_leake@stephe-leake.org>
16460
16461 Add docs for display-buffer action display-buffer-use-some-frame
16462 * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
16463 * doc/lispref/windows.texi (Display Action Functions):
16464 Add display-buffer-use-some-frame.
16465 * etc/NEWS: Mention display-buffer-use-some-frame.
16466
16467 Add display-buffer action display-buffer-use-some-frame
16468 * lisp/window.el (display-buffer-use-some-frame): New.
16469
16470 Handle vc-mtn error more gently
16471 * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
16472 branch is nil.
16473
16474 2015-07-29 Michael Albinus <michael.albinus@gmx.de>
16475
16476 Fix Tramp problems with multihops, and nc
16477 * lisp/net/tramp-cache.el (tramp-get-file-property)
16478 (tramp-set-file-property, tramp-flush-file-property)
16479 (tramp-get-connection-property, tramp-set-connection-property)
16480 (tramp-flush-connection-property): Remove hop from vector.
16481 * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
16482 * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
16483 (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
16484 netstat to 60".
16485 (tramp-sh-handle-start-file-process): Do not show hops in prompt.
16486 * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
16487 (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
16488 Keep hop in result.
16489 * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
16490 Add hop tests.
16491
16492 2015-07-29 Eli Zaretskii <eliz@gnu.org>
16493
16494 Resurrect highlighting of repeated words by Flyspell Mode
16495 * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
16496 characters between point and the doublon candidate, so that
16497 flyspell-word-search-backward finds it. (Bug#21157)
16498
16499 Fix redisplay of large images on expose events
16500 * src/xdisp.c (expose_window, expose_area): Avoid comparisons
16501 between signed negative values and unsigned values. This
16502 prevented redisplay on expose events when the window showed a very
16503 large image.
16504
16505 2015-07-29 Paul Eggert <eggert@cs.ucla.edu>
16506
16507 Remove unnecessary stack overflow dependency
16508 * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
16509 Don't worry about $ac_cv_header_sys_resource_h and
16510 $ac_cv_func_getrlimit, as they're no longer needed for this.
16511 Problem reported by Eli Zaretskii in:
16512 http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
16513
16514 2015-07-28 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
16515
16516 Pacify compilation -Wincompatible-pointer-types warnings
16517 * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
16518 warning.
16519 (CompareStringW_Proc): New typedef.
16520 (w32_compare_strings): Use it, to pacify compiler warnings under
16521 "-Wincompatible-pointer-types".
16522 * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
16523 (GetDiskFreeSpaceExA_Proc): New typedefs.
16524 (Ffile_system_info): Use them, to pacify compiler warnings under
16525 "-Wincompatible-pointer-types".
16526
16527 2015-07-28 Paul Eggert <eggert@cs.ucla.edu>
16528
16529 Fix subscript error in calculate_direct_scrolling
16530 Use slightly-longer cost vectors. Without this change,
16531 calculate_direct_scrolling can have a subscript violation when
16532 FRAME_LINES (frame) <= delta.
16533 * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
16534 (line_ins_del, do_line_insertion_deletion_costs):
16535 Allocate and use slightly-larger cost vectors, ones based on
16536 FRAME_TOTAL_LINES instead of FRAME_LINES.
16537
16538 Fix uninitalized value in encode_coding_object
16539 * src/coding.c (encode_coding_object): Also initialize
16540 coding->src_pos and coding->src_pos_byte when NILP (src_object).
16541 This avoids later use of uninitialized storage.
16542
16543 2015-07-27 Xue Fuqiao <xfq.free@gmail.com>
16544
16545 * doc/lispref/variables.texi (Variable Aliases): Typo fix.
16546 (Bug#21141)
16547
16548 2015-07-27 Paul Eggert <eggert@cs.ucla.edu>
16549
16550 Merge from gnulib
16551 This incorporates:
16552 2015-07-27 time_rz: port better to MinGW
16553 2015-07-27 time: port __need_time_t to MinGW
16554 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
16555 * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
16556 * lib/time-internal.h: New file, from gnulib.
16557
16558 2015-07-27 Eli Zaretskii <eliz@gnu.org>
16559
16560 Handle NULL pointers in w32heap.c allocation routines
16561 * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
16562 freeable".
16563 (realloc_after_dump, realloc_before_dump, free_before_dump):
16564 Handle NULL pointers gracefully, as Emacs now seems to expect that.
16565
16566 Fix Cairo build without PNG
16567 * src/image.c: Define PNG function when USE_CAIRO is defined, even
16568 if HAVE_PNG is not. (Bug#21133)
16569
16570 MS-Windows follow-up for recent TZ-related changes
16571 * nt/mingw-cfg.site (ac_cv_header_pthread_h)
16572 (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
16573 picking up 'struct timespec' from pthread.h, if it is installed on
16574 the user's system. We want either the definitions from MinGW
16575 system headers, if available, or the Gnulib replacements if not.
16576 * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
16577 lib/time.h.
16578 * lib/time.in.h: Don't let __need_* symbols affect what happens on
16579 MinGW. These symbols are defined by MinGW system headers, but we
16580 don't want that to affect whether Gnulib portions of the header
16581 are or aren't used.
16582
16583 2015-07-26 Paul Eggert <eggert@cs.ucla.edu>
16584
16585 * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
16586
16587 New optional ZONE arg for format-time-string etc.
16588 This simplifies time conversions in other time zones.
16589 It also prevents display-time-world tampering with TZ (Bug#21020).
16590 * admin/admin.el (add-release-logs):
16591 Use improved add-log-time-format API.
16592 * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
16593 (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
16594 * configure.ac (tzalloc): Remove test for this, since
16595 Emacs no longer uses HAVE_TZALLOC directly.
16596 * doc/lispref/os.texi (Time of Day, Time Conversion)
16597 (Time Parsing):
16598 * etc/NEWS: Document the new behavior.
16599 Merge from gnulib, incorporating:
16600 2015-07-25 strftime: fix newly-introduced bug on Solaris
16601 2015-07-23 fprintftime, strftime: use timezone_t args
16602 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
16603 * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
16604 * m4/time_h.m4:
16605 Update from gnulib.
16606 * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
16607 New files from gnulib.
16608 * lisp/time-stamp.el (time-stamp-string):
16609 * lisp/time.el (display-time-world-list)
16610 (display-time-world-display):
16611 Use new API, with time zone arg.
16612 * lisp/time.el (display-time-world-display):
16613 Fix race when current-time advances while we're running.
16614 * lisp/vc/add-log.el (add-log-iso8601-time-zone)
16615 (add-log-iso8601-time-string): Accept optional time zone arg.
16616 * lisp/vc/add-log.el (add-change-log-entry):
16617 * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
16618 * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
16619 Add rules for the time module, since they're now needed
16620 for tzalloc etc.
16621 * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
16622 (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
16623 * src/editfns.c: Include errno.h.
16624 (set_time_zone_rule): Omit unnecessary forward decl.
16625 (initial_tz): Remove, replacing with ...
16626 (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
16627 (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
16628 (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
16629 (tzlookup): New static functions.
16630 (init_editfns): New arg DUMPING. All uses changed.
16631 (init_editfns): Omit most initialization if dumping, not if
16632 !initialized. Initialize wall_clock_tz and local_tz.
16633 (emacs_nmemftime, format_time_string): Time zone argument can now
16634 be any time zone, not just a boolean for UTC or local time. All
16635 callers changed.
16636 (Fformat_time_string, Fencode_time, Fcurrent_time_string)
16637 (Fcurrent_time_zone): New optional arg ZONE.
16638 (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
16639 the same form as with the other new additions.
16640 (decode_time_zone): Remove; no longer needed.
16641 (tzvalbuf): Now file-scope.
16642 (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
16643 (syms_of_editfns): Define Qwall.
16644 * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
16645 * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
16646 [!HAVE_TZALLOC]:
16647 Remove; now supplied by gnulib.
16648 * src/emacs.c (main):
16649 * src/lisp.h (init_editfns): Adjust to init_editfns API change.
16650
16651 2015-07-26 Shigeru Fukaya <shigeru.fukaya@gmail.com>
16652
16653 Fix infinite loop in delete-consecutive-dups
16654 * lisp/subr.el (delete-consecutive-dups): Work even if the last
16655 element is nil (Bug#20588). Avoid rescan of a circular list in
16656 deletion of last element.
16657
16658 2015-07-26 Martin Rudalics <rudalics@gmx.at>
16659
16660 Have `x-frame-geometry' return nil for terminal and initial
16661 frames (Bug#21132)
16662 * src/nsfns.m (Fx_frame_geometry):
16663 * src/xfns.c (Fx_frame_geometry): Return nil for initial and
16664 terminal frames.
16665 * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
16666 (Fx_frame_geometry): Return nil for terminal frames
16667
16668 2015-07-26 HOSOYA Kei <hosoyakei.free@gmail.com> (tiny change)
16669
16670 * etc/tutorials/TUTORIAL.ja: Improve translation.
16671
16672 2015-07-25 Eli Zaretskii <eliz@gnu.org>
16673
16674 Avoid crashes when w32 GUI functions are called in -batch
16675 * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
16676 (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
16677 FRAME_W32_WINDOW for initial frame. (Bug#21132)
16678
16679 Fix flyspell-check-previous-highlighted-word
16680 * lisp/textmodes/flyspell.el
16681 (flyspell-check-previous-highlighted-word): Really accept a
16682 numeric argument, as the doc string describes. Fix an off-by-one
16683 error in looking up overlays, so invocation with point immediately
16684 after a word would check that word. Clarify the doc string as
16685 Suggested by N. Jackson <nljlistbox2@gmail.com>. (Bug#21129)
16686
16687 2015-07-24 Michael Albinus <michael.albinus@gmx.de>
16688
16689 Minor cleanup in tramp-tests.el
16690 * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
16691 Implement using the documented interface
16692 `tramp-connection-properties', rather than with internal functions.
16693
16694 2015-07-24 Harald Hanche-Olsen <hanche@math.ntnu.no> (tiny change)
16695
16696 Pass lambdas to `skeleton-read'
16697 * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
16698 * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
16699 lambdas to `skeleton-read' (bug#20386).
16700
16701 2015-07-24 Eli Zaretskii <eliz@gnu.org>
16702
16703 * INSTALL (DETAILED BUILDING AND INSTALLATION):
16704 Mention --without-imagemagick.
16705
16706 Don't require GUI frames and mouse for Flyspell menus
16707 * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
16708 (flyspell-emacs-popup): Require neither a GUI frame nor mouse
16709 support, since pop-up menus work with text terminals and can be
16710 controlled via the keyboard.
16711
16712 Improve documentation of Flyspell commands
16713 * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
16714 can be invoked via the keyboard. Mention those commands by name
16715 and add them to the fn index. (Bug#21125)
16716
16717 2015-07-23 Michael Albinus <michael.albinus@gmx.de>
16718
16719 Fix some Tramp problems with HP-UX
16720 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
16721 Add "tab0" to stty call.
16722 * test/automated/tramp-tests.el (tramp-persistency-file-name):
16723 Set to nil.
16724 (tramp--test-hpux-p): New defun.
16725 (tramp--test-utf8): Use it.
16726
16727 2015-07-22 Glenn Morris <rgm@gnu.org>
16728
16729 * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
16730
16731 2015-07-22 Eli Zaretskii <eliz@gnu.org>
16732
16733 Fix point positioning in ffap-next-guess
16734 * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
16735 as our callers expect. This was clobbered as part of fixing
16736 bug#5673. (Bug#21107)
16737 (ffap-gopher-at-point): Set ffap-string-at-point-region.
16738
16739 2015-07-22 Martin Rudalics <rudalics@gmx.at>
16740
16741 * lisp/window.el (even-window-sizes): Fix customization type.
16742
16743 Optionally even widths of `display-buffer' windows. (Bug#21100)
16744 * lisp/window.el (quit-restore-window): Restore width if
16745 requested.
16746 (display-buffer-record-window): Record width when window is
16747 reused and horizontally combined.
16748 (even-window-sizes): New option to allow evening window widths.
16749 (even-window-heights): Defalias to `even-window-sizes'.
16750 (window--even-window-heights): Rename to
16751 `window--even-window-sizes'. Handle side-by-side windows.
16752 (display-buffer-use-some-window): Call `window--even-window-sizes'
16753 instead of `window--even-window-heights'.
16754 * lisp/help.el (resize-temp-buffer-window): Fix indentation.
16755 * doc/lispref/windows.texi (Choosing Window Options): Describe
16756 `even-window-sizes'.
16757 (Coordinates and Windows): Fix typo.
16758
16759 2015-07-22 Stephen Leake <stephen_leake@stephe-leake.org>
16760
16761 Add file name to autoload error messages
16762 * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
16763 Add condition-case to add file name to error message.
16764
16765 2015-07-22 Michael Albinus <michael.albinus@gmx.de>
16766
16767 * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
16768 Use 0.0.0.1 as test host.
16769
16770 2015-07-21 Stefan Monnier <monnier@iro.umontreal.ca>
16771
16772 (advice--called-interactively-skip): Fix inf-loop (bug#21083)
16773 * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
16774 Fix inf-loop (bug#21083).
16775
16776 2015-07-21 Glenn Morris <rgm@gnu.org>
16777
16778 * test/automated/package-test.el (package-test-signed):
16779 Update for recent changes.
16780
16781 * test/automated/elisp-mode-tests.el
16782 (elisp-xref-finds-both-function-and-variable)
16783 (elisp-xref-finds-only-function-for-minor-mode):
16784 Update for recent xref name changes.
16785
16786 2015-07-21 Dmitry Gutov <dgutov@yandex.ru>
16787
16788 Make eldoc timer non-repeatable
16789 * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
16790 non-repeatable. Since it's on post-command hook, that just wasted
16791 CPU cycles.
16792
16793 2015-07-21 Michael Albinus <michael.albinus@gmx.de>
16794
16795 Mention `tramp-connection-properties' in NEWS
16796
16797 Sync with Tramp repository
16798 * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
16799 required prior changing its configuration.
16800 (Connection caching, Predefined connection information)
16801 (Remote shell setup): Fix typos.
16802 (Predefined connection information): Describe, how to overwrite
16803 parameters of `tramp-methods'.
16804 (Remote programs, Remote processes, Traces and Profiles):
16805 Simplify example.
16806 (Remote programs): Remove superfluous comment.
16807 * doc/misc/trampver.texi: Update release number.
16808 * lisp/net/tramp-cache.el (tramp-connection-properties):
16809 Adapt docstring.
16810 * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
16811 (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
16812 (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
16813 "gvfs-mkdir -p ..." does not work robust.
16814 (tramp-gvfs-maybe-open-connection):
16815 Adapt `tramp-get-method-parameter' call.
16816 * lisp/net/tramp-sh.el (tramp-methods):
16817 Add `tramp-remote-shell-login' parameter where it fits.
16818 (tramp-get-remote-path): Use it.
16819 (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
16820 (all): Adapt `tramp-get-method-parameter' calls.
16821 * lisp/net/tramp.el (tramp-methods): Adapt docstring.
16822 (tramp-get-method-parameter): Replace argument METHOD by VEC.
16823 Check also for hits in `tramp-connection-properties'. Adapt docstring.
16824 (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
16825 (all): Adapt `tramp-get-method-parameter' calls.
16826 * lisp/net/trampver.el Update release number.
16827 * test/automated/tramp-tests.el (tramp--instrument-test-case):
16828 Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
16829 (tramp-test13-make-directory, tramp--test-adb-p)
16830 (tramp--test-smb-or-windows-nt-p): Simplify.
16831 (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
16832 (tramp--test-special-characters): Fix docstring. Add gvfs and
16833 ftp tests.
16834 (tramp--test-utf8): Fix docstring.
16835
16836 2015-07-20 Dmitry Gutov <dgutov@yandex.ru>
16837
16838 Add new xref-query-replace command
16839 * lisp/progmodes/xref.el (xref--match-buffer-bounds):
16840 New function, extracted from xref-pulse-momentarily.
16841 (xref-query-replace): New command.
16842 (xref--query-replace-1): New helper function.
16843 (xref--xref-buffer-mode-map): Add `r' binding.
16844
16845 2015-07-20 Paul Eggert <eggert@cs.ucla.edu>
16846
16847 Simplify icalendar decoding of Z dates
16848 * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
16849 Simplify calculation of time strings with trailing "Z".
16850
16851 2015-07-19 Dmitry Gutov <dgutov@yandex.ru>
16852
16853 Do not corrupt grep-find-ignored-files
16854 * lisp/progmodes/project.el (project-ignores): Change the order of
16855 the arguments to nconc, in order not to corrupt grep-find-ignored-files.
16856
16857 Add xref-match-item, and use it
16858 * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
16859 (xref-file-location): Add reader for the column slot.
16860 (xref-match-item): New class.
16861 (xref-match-bounds): A method implementation for it.
16862 (xref-make-match): New constructor function.
16863 (xref--current-item): New private variable.
16864 (xref-pulse-momentarily): Use it.
16865 (xref--pop-to-location): Change the first argument to an xref
16866 item, instead of location, bind xref--current-item.
16867 Update all callers.
16868 (xref-next-line, xref-prev-line, xref--next-error-function)
16869 (xref--mouse-2): Look for the property `xref-item',
16870 instead of `xref-location'.
16871 (xref--item-at-point): Likewise. This function replaces
16872 `xref-location-at-point'. Update all callers.
16873 (xref--insert-xrefs): Add the `xref-item' text property, instead
16874 of `xref-location'.
16875 (xref--collect-match): Use xref-make-match.
16876
16877 * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
16878 Update all references.
16879
16880 * lisp/progmodes/xref.el (xref--xref): Rename the `description'
16881 slot to `summary'.
16882
16883 vc-hg: Perform the print-log call asynchronously
16884 * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
16885 asynchronously (bug#21067).
16886
16887 Add xref-after-jump-hook and xref-after-return-hook
16888 * lisp/progmodes/xref.el (xref-after-jump-hook)
16889 (xref-after-return-hook): New hooks.
16890 (xref-pulse-on-jump): Remove, in favor of the above.
16891 (xref-pulse-momentarily): Rename from xref--maybe-pulse.
16892 (xref--pop-to-location, xref--display-position)
16893 (xref-pop-marker-stack): Use the new hooks, as requested in
16894 http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
16895
16896 2015-07-19 Bozhidar Batsov <bozhidar@batsov.com>
16897
16898 * lisp/progmodes/js.el (js-mode): Correct the lighter.
16899
16900 2015-07-19 Leo Liu <sdl.web@gmail.com>
16901
16902 Fix a bug in cfengine3-mode
16903 * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
16904 eldoc-documentation-function.
16905
16906 2015-07-18 Julien Danjou <julien@danjou.info>
16907
16908 sieve-mode: support "body" test command
16909 * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
16910 Add missing "body" test command.
16911
16912 2015-07-18 Eli Zaretskii <eliz@gnu.org>
16913
16914 Fix info-apropos when the default encoding is Latin-N
16915 * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
16916 'undecided', so that it is set to the encoding of the Info file we
16917 are about to insert. Otherwise, 'info-apropos' will fail to find
16918 some index nodes in some UTF-8 encoded files, if the buffer's
16919 previous encoding is Latin-N or some such.
16920
16921 2015-07-18 Ivan Andrus <darthandrus@gmail.com>
16922
16923 * lisp/epg.el (epg--start): Check that gpgconf can be found
16924 before calling it.
16925
16926 Expose more file types to OS X that Emacs understands
16927 * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
16928 sty, dtx, json, and org files. Export UTIs for el, elc, and org files.
16929
16930 2015-07-18 Eli Zaretskii <eliz@gnu.org>
16931
16932 Fix visual-order cursor movement when lines are truncated
16933 * src/xdisp.c (Fmove_point_visually): When lines are truncated,
16934 simulate display in a window of infinite width, to allow move_it_*
16935 functions reach positions outside of normal window dimensions.
16936 Remove code that tried to handle a subset of these situations by
16937 manual iteration of buffer text. (Bug#17777)
16938
16939 Fix following Info cross-references to anchors
16940 * lisp/info.el (Info-read-subfile): Add to the returned value the
16941 length of subfile preamble, after converting it to file's byte
16942 offset, as expected by the caller. Use bufferpos-to-filepos.
16943 (Info-find-node-2): If searching for a node with a
16944 1000-character slop fails, try again with a 10000-character slop,
16945 to account for known bugs in Texinfo 5.0 and 5.1. (Bug#21055)
16946 * lisp/international/mule-util.el (bufferpos-to-filepos): New
16947 function.
16948 * etc/NEWS: Mention bufferpos-to-filepos.
16949
16950 Fix scrolling backwards on TTY frames under scroll-conservatively
16951 * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
16952 in moving backwards on TTY frames. (Bug#21080)
16953
16954 2015-07-17 Dmitry Gutov <dgutov@yandex.ru>
16955
16956 Consider a jsdoc tag to be a beginning of a paragraph as well
16957 * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
16958 consider a jsdoc tag to be a beginning of a paragraph as well.
16959
16960 2015-07-17 Artur Malabarba <bruce.connor.am@gmail.com>
16961
16962 * lisp/emacs-lisp/package.el: Fix warnings.
16963
16964 * lisp/emacs-lisp/package.el (package-buffer-info):
16965 Add author and maintainers to `package-buffer-info'.
16966
16967 * lisp/emacs-lisp/package.el: Many small changes.
16968 Replace all instances of 'face with 'font-lock-face.
16969 (describe-package-1): Improve some strings and move the summary
16970 up the list.
16971 (package-install-file): Update docstring.
16972 (package-menu-hide-package): Bind to `H'.
16973
16974 * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
16975 Fix error handling.
16976
16977 2015-07-17 Paul Eggert <eggert@cs.ucla.edu>
16978
16979 Fix hang with large yanks This should fix the bug fixed by Mike
16980 Crowe's patch in:
16981 https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
16982 A problem in this area has been reported by several users; see
16983 Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
16984 This fix differs from Mike Crowe's patch in that it should avoid a
16985 race condition that could lose SIGIO signals. ignore_sigio dates
16986 back to the 1980s when some platforms couldn't block signals, and
16987 could only ignore them, which led to races when signals arrived
16988 while being ignored. We shouldn't have to worry about those old
16989 platforms now.
16990 * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
16991 * src/emacs.c (shut_down_emacs):
16992 Don't call ignore_sigio; unrequest_sigio should suffice.
16993 * src/keyboard.c (kbd_buffer_store_buffered_event):
16994 Use unrequest_sigio, not ignore_sigio.
16995 (kbd_buffer_get_event):
16996 Call request_sigio when getting the ball rolling again.
16997
16998 2015-07-17 Artur Malabarba <bruce.connor.am@gmail.com>
16999
17000 * lisp/obsolete/longlines.el (longlines-search-function):
17001 Fallback on `isearch-search-fun-default'.
17002
17003 2015-07-17 Tassilo Horn <tsdh@gnu.org>
17004
17005 Support @-mentions
17006 * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
17007 of mentions/messages with @nick instead of just nick.
17008
17009 2015-07-16 Michael Albinus <michael.albinus@gmx.de>
17010
17011 Fix bug#20943
17012 * lisp/autorevert.el (auto-revert-handler): Do not check for
17013 `buffer-modified-p'.
17014 * lisp/files.el (buffer-stale--default-function): Check for
17015 `buffer-modified-p'.
17016 * test/automated/auto-revert-tests.el
17017 (auto-revert-test02-auto-revert-mode-dired): Adapt test.
17018
17019 2015-07-16 Ari Roponen <ari.roponen@gmail.com>
17020
17021 Fix delete-dups bug on long lists
17022 * lisp/subr.el (delete-dups):
17023 Don't mistakenly keep some dups when applied to long lists.
17024
17025 2015-07-16 Paul Eggert <eggert@cs.ucla.edu>
17026
17027 Better heuristic for C stack overflow
17028 Improve the heuristic for distinguishing stack overflows from
17029 other SIGSEGV causes (Bug#21004). Corinna Vinschen explained that
17030 the getrlimit method wasn't portable to Cygwin; see:
17031 https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
17032 Corinna suggested pthread_getattr_np but this also has problems.
17033 Instead, replace the low-level system stuff with a simple
17034 heuristic based on known good stack addresses.
17035 * src/eval.c, src/lisp.h (near_C_stack_top): New function.
17036 * src/sysdep.c: Don't include <sys/resource.h>.
17037 (stack_direction): Remove. All uses removed.
17038 (stack_overflow): New function.
17039 (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
17040 Make SEGV fatal in non-main threads.
17041
17042 2015-07-16 Daiki Ueno <ueno@gnu.org>
17043
17044 epg: Automatically start pinentry server
17045 * lisp/epg-config.el (epg-gpgconf-program): New variable.
17046 * lisp/epg.el (epg--start): Call `pinentry-start' if
17047 allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
17048
17049 2015-07-15 Katsumi Yamaoka <yamaoka@jpl.org>
17050
17051 * lisp/gnus/nnimap.el: Fix my last bogus change.
17052 Reinstall Stefan Monnier's change that was made in
17053 <83d824bc4041332f338ad7e5e830f443535aa300>.
17054
17055 2015-07-15 Paul Eggert <eggert@cs.ucla.edu>
17056
17057 Merge from gnulib
17058 This incorporates:
17059 2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
17060 2015-07-05 acl-permissions: Fix on FreeBSD
17061 2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
17062 * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
17063 * lib/set-permissions.c: Copy from gnulib.
17064
17065 Port to stricter C99
17066 * src/keyboard.h (kbd_buffer_store_event_hold):
17067 Don't return a void expression.
17068
17069 2015-07-15 Xue Fuqiao <xfq.free@gmail.com>
17070
17071 * doc/emacs/frames.texi (Creating Frames):
17072 Fix the command `C-x 5 m' runs.
17073
17074 2015-07-14 Michael Albinus <michael.albinus@gmx.de>
17075
17076 New autorevert tests
17077 * test/automated/auto-revert-tests.el: New file.
17078
17079 2015-07-14 Paul Eggert <eggert@cs.ucla.edu>
17080
17081 Clear gcprolist etc. after stack overflow
17082 After stack overflow, command_loop calls init_eval, and this needs to
17083 clear gcprolist and byte_stack_list (Bug#20996).
17084 * src/alloc.c (init_alloc):
17085 Move gcprolist and byte_stack_list initialization from here ...
17086 * src/eval.c (init_eval): ... to here.
17087
17088 2015-07-13 Xue Fuqiao <xfq.free@gmail.com>
17089
17090 * doc/emacs/windows.texi (Pop Up Window): Fix the description
17091 of `C-x 4 m'.
17092
17093 2015-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17094
17095 Avoid deprecated enums in mac-ct font backend driver
17096 * src/macfont.m (mac_font_copy_default_descriptors_for_language)
17097 (mac_ctfont_get_advance_width_for_glyph)
17098 (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
17099
17100 Cache font family in mac-ct font backend driver
17101 * src/macfont.m (macfont_family_cache): New variable.
17102 (syms_of_macfont): Initialize it.
17103 (macfont_available_families_cache): New variable.
17104 (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
17105 (macfont_set_family_cache, macfont_invalidate_available_families_cache)
17106 (macfont_handle_font_change_notification)
17107 (macfont_init_font_change_handler)
17108 (macfont_copy_available_families_cache): New functions.
17109 (macfont_create_family_with_symbol): Use font family caches.
17110 (macfont_list, macfont_list_family):
17111 Use macfont_copy_available_families_cache instead of
17112 mac_font_create_available_families.
17113
17114 2015-07-12 Dmitry Gutov <dgutov@yandex.ru>
17115
17116 Show the default value in the prompt
17117 * lisp/progmodes/xref.el: Add `M-?' binding for
17118 xref-find-references. Declare functions `grep-read-files' and
17119 `grep-expand-template'.
17120 (xref--read-identifier): Show the default value in the prompt.
17121
17122 * lisp/progmodes/xref.el (xref-find-regexp): When called with
17123 prefix argument, ask for file patterns to search as well. When
17124 prompting for the directory, require an existing one.
17125 (xref-collect-matches): Add a new argument, FILES. Use it in the
17126 above function.
17127
17128 Add `project-ignores'
17129 * lisp/progmodes/project.el (project-ignores): New generic
17130 function, and an implementation for the VC project type.
17131 * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
17132 variant of rgrep-default-command that handles a generic list of
17133 ignores.
17134 (xref-collect-matches): Use it, and pass through to it the value
17135 of the newly added argument.
17136 (xref-find-regexp): Handle ignored paths within the project.
17137 Remove outdated comment.
17138 * lisp/vc/vc.el (vc-default-ignore-completion-table):
17139 Skip the comments and the empty lines.
17140
17141 2015-07-12 Xue Fuqiao <xfq.free@gmail.com>
17142
17143 * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
17144
17145 2015-07-11 Eric Abrahamsen <eric@ericabrahamsen.net>
17146
17147 gnus-registry.el: Correct function argument order
17148 * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
17149 Reverse the order of function arguments.
17150
17151 2015-07-11 Dmitry Gutov <dgutov@yandex.ru>
17152
17153 Bind grep-highlight-matches to nil
17154 * lisp/progmodes/xref.el (xref-collect-matches):
17155 Bind grep-highlight-matches to nil (bug#20728).
17156
17157 2015-07-11 Nikolaus Rath <Nikolaus@rath.org>
17158
17159 nnimap.el: Fix IMAP message size parsing
17160 * lisp/gnus/nnimap.el (nnimap-transform-headers):
17161 Don't assume that UID comes before RFC822.SIZE.
17162
17163 2015-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
17164
17165 * lisp/gnus/nnimap.el: Clean up "unused var" warnings
17166 (auth-source-creation-prompts): Declare.
17167 (nnimap-retrieve-headers, nnimap-status-message)
17168 (nnimap-request-create-group, nnimap-request-delete-group)
17169 (nnimap-close-group, nnimap-request-move-article)
17170 (nnimap-request-accept-article, nnimap-request-newgroups)
17171 (nnimap-request-post, nnimap-dummy-active-number)
17172 (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
17173 (nnimap-parse-flags): Remove unused var `p'.
17174 (nnimap-retrieve-group-data-early): Remove unused var `groups'.
17175 (nnimap-flags-to-marks): Remove unused var `totalp'.
17176
17177 2015-07-10 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
17178
17179 * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
17180
17181 2015-07-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17182
17183 * src/macfont.m (macfont_list): Ignore font families lacking
17184 font descriptors.
17185
17186 2015-07-09 Dmitry Gutov <dgutov@yandex.ru>
17187
17188 Don't check the exit status, it can be misleading
17189 * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
17190 exit status, it can be misleading.
17191
17192 Introduce a Project API
17193 * lisp/progmodes/project.el: New file.
17194 * lisp/cedet/ede.el (project-try-ede): New function.
17195 (project-root): New implementation.
17196 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
17197 Set project-search-path-function.
17198 (elisp--xref-find-references): Delegate some logic to
17199 project-search-path.
17200 (elisp-search-path): New function.
17201 (elisp-xref-find): Don't implement `matches' anymore.
17202 * lisp/progmodes/etags.el: Don't implement `matches'.
17203 Delegate some logic to project-search-path.
17204 (etags-search-path): New function.
17205 * lisp/progmodes/xref.el (xref-find-function):
17206 Remove `matches' from the API.
17207 (xref-find-regexp): Move whatever common logic was in elisp and
17208 etags implementations, and search the directories returned by
17209 project-directories and project-search-path.
17210
17211 2015-07-09 Nicolas Petton <nicolas@petton.fr>
17212
17213 * test/automated/map-tests.el (test-map-delete-return-value):
17214 Uncomment test.
17215
17216 Add support for gv.el in map.el
17217 * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
17218 * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
17219 * test/automated/map-tests.el: Update tests to work with the new
17220 implementations of map-elt and map-put.
17221
17222 2015-07-09 Glenn Morris <rgm@gnu.org>
17223
17224 * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
17225
17226 2015-07-09 Dmitry Gutov <dgutov@yandex.ru>
17227
17228 Syntax-propertize until the end of the line first
17229 * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
17230 until the end of the line first.
17231
17232 2015-07-09 Xue Fuqiao <xfq.free@gmail.com>
17233
17234 * doc/emacs/files.texi (File Archives): Add a cross reference.
17235
17236 2015-07-08 Nikolaus Rath <Nikolaus@rath.org>
17237
17238 nnimap.el: Handle plain value for nnimap-stream
17239 * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
17240 capabilities, so that a 'plain value for the `nnimap-stream' server
17241 variable is handled correctly.
17242 * doc/misc/gnus.texi (Customizing the IMAP Connection):
17243 Document the 'plain option.
17244
17245 2015-07-08 Leo Liu <sdl.web@gmail.com>
17246
17247 Fix bug in thing-at-point--bounds-of-well-formed-url
17248 * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
17249 sure boundary contains current point.
17250
17251 2015-07-08 Dmitry Gutov <dgutov@yandex.ru>
17252
17253 * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
17254 in the end.
17255
17256 Declare whitespace-line-column a safe file-local
17257 * lisp/whitespace.el (whitespace-line-column): Declare to be a
17258 safe file-local when the value is an integer.
17259
17260 2015-07-08 Eric Abrahamsen <eric@ericabrahamsen.net>
17261
17262 gnus-group.el: Check if group names are already strings
17263 * lisp/gnus/gnus-group.el (gnus-group-group-name):
17264 The group name may already be a string.
17265 Specifically, in the group list reached from the *Server* buffer,
17266 the 'gnus-group text property returns a string. Everywhere else
17267 it returns a symbol.
17268
17269 nnimap.el: Remove unused let variables
17270 * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
17271
17272 2015-07-08 Eli Zaretskii <eliz@gnu.org>
17273
17274 Support "maximized" property of runemacs's shortcut
17275 * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
17276 the '--maximized' switch to Emacs.
17277
17278 Support "minimized" property of runemacs's shortcut
17279 * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
17280 pass the '--iconic' switch to Emacs. (Bug#20991)
17281
17282 2015-07-08 Xue Fuqiao <xfq.free@gmail.com>
17283
17284 Doc fixes
17285 * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
17286 C-w' in Diff mode.
17287 * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
17288 Add a cross reference.
17289
17290 2015-07-08 Nicolas Richard <youngfrog@members.fsf.org>
17291
17292 * lisp/obsolete/landmark.el: Add Obsolete-since header.
17293
17294 2015-07-07 Glenn Morris <rgm@gnu.org>
17295
17296 * test/automated/ert-tests.el (ert-test-deftest):
17297 Update for recent changes.
17298
17299 2015-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
17300
17301 (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
17302 * lisp/emacs-lisp/gv.el (gv-setter): New function.
17303 (gv-invalid-place): New error.
17304 (gv-get): Use them.
17305 (gv-synthetic-place, gv-delay-error): New places.
17306 * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
17307 (cl-defgeneric, cl-defmethod): Use gv-setter.
17308
17309 2015-07-07 Fabrice Popineau <fabrice.popineau@gmail.com>
17310
17311 Make vc-tests work with MSYS svn program
17312 * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
17313 svn is an MSYS program.
17314
17315 2015-07-07 Ken Brown <kbrown@cornell.edu>
17316
17317 Improve recent change to emacsclient on Cygwin
17318 * lisp/server.el (server-process-filter): Remove redundant check
17319 that 'cygwin-convert-file-name-from-windows' is defined as a
17320 function on Cygwin. Don't call that function unless its argument
17321 starts with a drive letter.
17322
17323 2015-07-07 Artur Malabarba <bruce.connor.am@gmail.com>
17324
17325 * lisp/emacs-lisp/package.el (package-compute-transaction):
17326 Fix void variable due to `found-something' being in the wrong `let'.
17327
17328 2015-07-07 Nicolas Richard <theonewiththeevillook@yahoo.fr>
17329
17330 * lisp/play/landmark.el: Move to lisp/obsolete/.
17331
17332 2015-07-07 Martin Rudalics <rudalics@gmx.at>
17333
17334 Have `x-show-tip' handle `right' and `bottom' frame parameters
17335 * src/nsfns.m (compute_tip_xy, Fx_show_tip)
17336 * src/w32fns.c (compute_tip_xy, Fx_show_tip)
17337 * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
17338 tooltips also via `right' and `bottom' frame parameters.
17339
17340 2015-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
17341
17342 Add online-help support to describe types
17343 * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
17344 (describe-symbol): Improve the selection of default.
17345 * lisp/help-mode.el: Require cl-lib.
17346 (describe-symbol-backends): Move from help-fns.el.
17347 (help-make-xrefs): Use it.
17348 * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
17349 for types.
17350 (cl--typedef-regexp): New const.
17351 (find-function-regexp-alist): Add entry for types.
17352 (cl-help-type, cl-type-definition): New buttons.
17353 (cl-find-class): New function.
17354 (cl-describe-type): New command.
17355 (cl--describe-class, cl--describe-class-slot)
17356 (cl--describe-class-slots): New functions, moved from eieio-opt.el.
17357 * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
17358 (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
17359 New functions. Moved from eieio-opt.el.
17360 (cl--generic-class-parents): New function, extracted from
17361 cl--generic-struct-specializers.
17362 (cl--generic-struct-specializers): Use it.
17363 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
17364 Improve constructor's docstrings.
17365 (cl-struct-unknown-slot): New error.
17366 (cl-struct-slot-offset): Use it.
17367 * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
17368 definition in current-load-list.
17369 * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
17370 (eieio--add-new-slot): Set it.
17371 (eieio-defclass-internal): Use new name for current-load-list.
17372 (eieio-oref): Add compiler-macro to warn about unknown slots.
17373 * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
17374 as compile-time as well. Improve constructor docstrings.
17375 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
17376 (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
17377 (eieio-class-def): Remove button.
17378 (eieio-help-constructor): Use new name for load-history element.
17379 (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
17380 (eieio-method-documentation): Move to cl-generic.el.
17381 (eieio-display-method-list): Use new names.
17382 * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
17383 Add "define-linline".
17384 (lisp-fdefs): Remove "defsubst".
17385 (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
17386 * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
17387 (macroexp--warn-and-return): Use it to avoid inf-loops.
17388 Add `compile-only' argument.
17389
17390 2015-07-06 Fabián Ezequiel Gallina <fgallina@gnu.org>
17391
17392 python.el: Fix local/remote shell environment setup
17393 * lisp/progmodes/python.el (python-shell-with-environment):
17394 Fix remote/local environment setup.
17395 * test/automated/python-tests.el (python-shell-with-environment-1)
17396 (python-shell-with-environment-2): New tests.
17397
17398 2015-07-06 Glenn Morris <rgm@gnu.org>
17399
17400 * lisp/simple.el (set-variable): Tweak recent doc fix.
17401
17402 2015-07-06 Ken Brown <kbrown@cornell.edu>
17403
17404 * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
17405
17406 2015-07-06 Glenn Morris <rgm@gnu.org>
17407
17408 * lisp/simple.el (set-variable): Use user-error for type mismatch.
17409
17410 2015-07-06 Ken Brown <kbrown@cornell.edu>
17411
17412 * src/emacs.c (main): Don't increase the stack size on Cygwin.
17413
17414 2015-07-06 Stefan Monnier <monnier@iro.umontreal.ca>
17415
17416 (describe-symbol): Rewrite describe-function-or-variable
17417 * lisp/help-fns.el (describe-symbol-backends): New var.
17418 (help-xref-stack-item): Declare.
17419 (describe-symbol): Rename from describe-function-or-variable.
17420 Rewrite using describe-symbol-backends instead of help-xref-interned.
17421 * lisp/help.el (help-map): Use it.
17422 * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
17423 (help-xref-interned): Make it into an obsolete alias.
17424
17425 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
17426 `file' arg (bug#20972). Always use utf-8-emacs. Use with-temp-buffer
17427 and cl-letf.
17428
17429 2015-07-06 Wolfgang Jenkner <wjenkner@inode.at>
17430
17431 Fix parsing glitches in dired-mark-sexp (bug#13575)
17432 * lisp/dired-x.el (dired-x--string-to-number): New function.
17433 (dired-mark-sexp): Use it. Tweak dired-re-inode-size. Fix usage
17434 of directory-listing-before-filename-regexp. Consider
17435 forward-word harmful and replace it. Add more verbiage in
17436 comments and doc string.
17437
17438 2015-07-06 Fabián Ezequiel Gallina <fgallina@gnu.org>
17439
17440 python.el: Respect process environment for remote shells
17441 * lisp/progmodes/python.el
17442 (python-shell-calculate-process-environment): Calculate
17443 process-environment or tramp-remote-process-environment depending
17444 whether current file is remote.
17445 (python-shell-calculate-exec-path): Calculate exec-path or
17446 tramp-remote-path depending whether current file is remote.
17447 (python-shell-with-environment): New macro.
17448 (python-shell-prompt-detect, python-shell-calculate-command)
17449 (python-shell-make-comint, python-check): Use it.
17450
17451 python.el: Avoid making let-bound defvars buffer local (Bug#18244)
17452 * lisp/progmodes/python.el (python-shell--interpreter)
17453 (python-shell--interpreter-args): New vars.
17454 (inferior-python-mode, python-shell-make-comint): Use them.
17455
17456 python.el: Fixes for IPython 3.x (Bug#20580)
17457 * lisp/progmodes/python.el:
17458 (python-shell-completion-native-setup): Fix IPython 3.x setup.
17459 (python-shell-completion-native-get-completions): Fix timeout
17460 logic.
17461
17462 python.el: Fix mark-defun behavior (Bug#19665)
17463 * lisp/progmodes/python.el (python-mark-defun): New function.
17464 * test/automated/python-tests.el (python-mark-defun-1)
17465 (python-mark-defun-2, python-mark-defun-3): New tests.
17466
17467 2015-07-05 Glenn Morris <rgm@gnu.org>
17468
17469 * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
17470 such as "extends(parent), private". (Bug#20969)
17471 * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
17472 New tests.
17473
17474 2015-07-05 Paul Eggert <eggert@cs.ucla.edu>
17475
17476 Avoid duplicate calls to current_timespec
17477 * src/process.c (wait_reading_process_output):
17478 Cache current_timespec results as long as we're not waiting.
17479
17480 2015-07-05 Ian Kelling <ian@iankelling.org>
17481
17482 Avoid returning early reading process output due to SIGIO
17483 * src/process.c (wait_reading_process_output): Extend the behavior of
17484 not breaking due to not finding output when a timer has lowered the
17485 timeout to include when SIGIO lowers the timeout.
17486
17487 Don't return as fast reading any process output
17488 * src/process.c (wait_reading_process_output):
17489 The patch for Bug#17647 returns too fast sometimes when reading
17490 from any processes. Revert part of it, and limit the timeout more
17491 sensibly (Bug#20978).
17492
17493 Refactor timeouts in wait_reading_process_output
17494 * src/process.c (wait_reading_process_output):
17495 Simplify timeouts with an enum. Remove a redundant condition.
17496 (Bug#20978)
17497
17498 Remove ADAPTIVE_READ_BUFFERING ifdef
17499 * src/process.c (make-process, make-pipe-process, deactivate_process)
17500 (wait_reading_process_output, read_process_output, send_process)
17501 (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
17502 added in case there was an operating system in which it was not
17503 useful. That was 11 years ago and it hasn't happened. Make
17504 development easier by not considering the effect of changes on a
17505 theoretical OS where this is disabled (Bug#20978).
17506
17507 2015-07-05 Glenn Morris <rgm@gnu.org>
17508
17509 * lisp/simple.el (set-variable): Doc fix.
17510
17511 * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
17512
17513 2015-07-05 Ian Kelling <ian@iankelling.org>
17514
17515 accept-process-output fix
17516 This is a followon to the fix for bug#17647 (Bug#20976).
17517 * src/process.c (status_notify): Fix too high return in some cases.
17518
17519 2015-07-05 Artur Malabarba <bruce.connor.am@gmail.com>
17520
17521 * lisp/character-fold.el (character-fold-table):
17522 Only fold decompositions if at least one character is non-spacing.
17523 (Bug#20975)
17524
17525 2015-07-05 Paul Eggert <eggert@cs.ucla.edu>
17526
17527 Merge from gnulib
17528 This incorporates:
17529 2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
17530 2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
17531 2015-07-02 update-copyright: fix test failure with perl >= 5.22
17532 2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
17533 2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
17534 * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
17535 * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
17536
17537 2015-07-05 Christoph Wedler <christoph.wedler@sap.com>
17538
17539 Respect `prog-indentation-context' in python.el
17540 * lisp/progmodes/python.el (python-indent-guess-indent-offset)
17541 (python-indent-context, python-indent--calculate-indentation)
17542 (python-info-current-defun)
17543 (python-info-dedenter-opening-block-message)
17544 (python-info-line-ends-backslash-p)
17545 (python-info-beginning-of-backslash)
17546 (python-info-continuation-line-p): Use `prog-widen'.
17547 (python-indent--calculate-indentation)
17548 (python-indent--calculate-levels)
17549 (python-indent-calculate-indentation): Use `prog-first-column'.
17550 (python-indent--calculate-levels): Simplify.
17551 Ignore also initial empty lines for syntax calculation.
17552 * lisp/progmodes/python.el (python-indent-context): Return
17553 :no-indent for first non-empty line, not just in line 1.
17554 * test/automated/python-tests.el (python-indent-base-case)
17555 (python-indent-inside-paren-1, python-indent-inside-paren-2)
17556 (python-indent-inside-paren-3, python-indent-inside-paren-4)
17557 (python-indent-inside-paren-5, python-indent-inside-paren-6)
17558 (python-indent-after-backslash-1)
17559 (python-indent-after-backslash-2)
17560 (python-indent-after-backslash-3)
17561 (python-indent-after-backslash-4, python-indent-inside-string-1):
17562 Expect :no-indent for first non-empty line.
17563
17564 2015-07-04 Daniel Colascione <dancol@dancol.org>
17565
17566 Factor isearch word description into new function
17567 * lisp/isearch.el (isearch--describe-word-mode): New function.
17568 (isearch-message-prefix, isearch-query-replace): Use it.
17569
17570 2015-07-04 Eli Zaretskii <eliz@gnu.org>
17571
17572 Fix mouse pointer on w32 when a menu is active
17573 * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
17574 shape while a menu is in use. This started happening since we now
17575 send WM_EMACS_SHOWCURSOR messages when the mouse moves.
17576
17577 2015-07-04 Martin Rudalics <rudalics@gmx.at>
17578
17579 Fix processing of alpha parameter for Windows tip frames (Bug#17344)
17580 * src/w32fns.c (x_create_tip_frame): Fix processing alpha
17581 parameter. (Bug#17344)
17582
17583 Have `compilation-set-window' use right window for getting fringes
17584 (Bug#20829)
17585 * lisp/progmodes/compile.el (compilation-set-window):
17586 Take `window-fringes' from argument window.
17587
17588 2015-07-03 Glenn Morris <rgm@gnu.org>
17589
17590 Update eieio tests for recent eieio-core change.
17591 * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
17592 * test/automated/eieio-tests.el
17593 (eieio-test-32-slot-attribute-override-2):
17594 Replace the deleted eieio--class-v with cl--find-class.
17595
17596 2015-07-03 Martin Rudalics <rudalics@gmx.at>
17597
17598 Fix some issues with `window-divider-mode'
17599 * lisp/frame.el (window-divider-default-places): New option.
17600 (window-divider-mode): Remove option.
17601 (window-divider-mode): Make it a "regular" minor mode.
17602 (window-divider-width-valid-p): Drop frame- prefix.
17603 (window-divider-mode-apply): New argument ENABLE. Drop frame-
17604 prefix. Handle `window-divider-default-places'.
17605 (frame--window-divider-mode-set-and-apply): Remove.
17606 (window-divider-default-bottom-width)
17607 (window-divider-default-right-width): Drop :group entries.
17608 * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
17609 (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
17610 (menu-bar-no-window-divider): Set `window-divider-default-places'
17611 and call `window-divider-mode'.
17612 * doc/emacs/frames.texi (Window Dividers): Document
17613 `window-divider-default-places'.
17614
17615 2015-07-02 Xue Fuqiao <xfq.free@gmail.com>
17616
17617 * doc/emacs/display.texi (Displaying Boundaries):
17618 * doc/emacs/search.texi (Word Search): Add cross references.
17619
17620 2015-07-02 Paul Eggert <eggert@cs.ucla.edu>
17621
17622 -batch should not affect ‘’ -> `' display
17623 * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
17624 -batch (Bug#20926).
17625
17626 2015-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
17627
17628 * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
17629 * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
17630 * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
17631 Use cl--find-class instead.
17632
17633 * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
17634
17635 2015-07-02 Martin Rudalics <rudalics@gmx.at>
17636
17637 Some further fixes in Change Window node (Bug#20183)
17638 * doc/emacs/windows.texi (Change Window): Replace "rearranging"
17639 by "resizing" in section title. Add some concept indices.
17640 Suggested by N. Jackson (Bug#20183).
17641
17642 * doc/emacs/windows.texi (Change Window): Reference window
17643 dividers.
17644
17645 Document new `window-divider-mode'.
17646 * lisp/frame.el (window-divider-mode): Fix doc-string.
17647 * doc/emacs/frames.texi (Window Dividers): New section.
17648
17649 Improve accessibility of window dividers (Bug#20183)
17650 * lisp/faces.el (window-divider)
17651 (window-divider-first-pixel, window-divider-last-pixel): Change
17652 membership from `frames' to `window-divider' customization group.
17653 * lisp/frame.el (window-divider): New customization group.
17654 (window-divider-mode): New minor mode.
17655 (window-divider-default-bottom-width)
17656 (window-divider-default-right-width): New options.
17657 (frame--window-divider-previous-mode): New variable.
17658 (frame-window-divider-width-valid-p)
17659 (frame--window-divider-mode-apply)
17660 (frame--window-divider-mode-set-and-apply): New functions.
17661 * lisp/menu-bar.el (menu-bar-options-save): Save
17662 window-divider-mode settings.
17663 (menu-bar-window-divider-customize)
17664 (menu-bar-bottom-and-right-window-divider)
17665 (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
17666 (menu-bar-no-window-divider): New functions.
17667 (menu-bar-showhide-window-divider-menu): New variable.
17668 (menu-bar-showhide-menu): Show/hide window divider menu.
17669 * lisp/mouse.el (mouse-split-window-vertically)
17670 (mouse-split-window-horizontally): Replace `error' by
17671 `user-error'. Bind `window-combination-resize' to nil.
17672 (top-level): Add/reorder mouse key bindings on mode- and
17673 vertical-line.
17674
17675 2015-07-02 Paul Eggert <eggert@cs.ucla.edu>
17676
17677 Don't display ‘’ as `' under X in en_GB
17678 The curved quote setup code invokes (char-displayable-p ?‘),
17679 but this isn’t reliable until after the X frame replaces the
17680 terminal frame (Bug#20926).
17681 * lisp/international/mule-cmds.el (set-locale-environment):
17682 Move curved quote setup code from here ...
17683 * lisp/startup.el (command-line): ... to here, after creating
17684 the X frame.
17685
17686 2015-07-01 Nicolas Richard <youngfrog@members.fsf.org>
17687
17688 * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
17689
17690 * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
17691 to reverse the meaning (Bug#15631).
17692
17693 2015-07-01 Eli Zaretskii <eliz@gnu.org>
17694
17695 Be more tolerant to fonts named "Foobar-12"
17696 * src/frame.c (x_set_font): If font_spec_from_name returns nil,
17697 don't barf; instead, request a new fontset to be generated. This
17698 avoids unnecessarily rejecting fonts named against XLFD rules. See
17699 http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
17700 for the description of the original problem.
17701 * lisp/faces.el (set-face-attribute): Don't be fooled too easily
17702 by a hyphen in a font's name.
17703
17704 Fix value of posn-at-pont in R2L lines
17705 * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
17706 coordinate of -1, for a newline in a right-to-left line that
17707 overflowed into the left fringe.
17708
17709 2015-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
17710
17711 (cl--copy-slot-descriptor): Copy the `props' alist as well
17712 * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
17713 Rename from cl--copy-slot-descriptor.
17714 (cl--copy-slot-descriptor): New function. Copy the alist (bug#20914).
17715
17716 2015-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
17717
17718 * lisp/term/xterm.el (xterm--query): Avoid generating garbage
17719 (xterm-query-timeout): New var.
17720 (xterm--query): Use it. Fallback on async method if we timeout before
17721 getting the first byte of the reply (bug#12354).
17722
17723 2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
17724
17725 Spelling fixes
17726 * lisp/character-fold.el (character-fold-search):
17727 * lisp/emacs-lisp/package.el (package-hidden-regexps):
17728 Fix typos.
17729
17730 2015-06-30 Xue Fuqiao <xfq.free@gmail.com>
17731
17732 * doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
17733
17734 2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
17735
17736 In strings, prefer plain ` and ' to \` and \'
17737 * lisp/allout.el (allout-insert-listified):
17738 * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
17739 * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
17740 (ls-lisp-string-lessp):
17741 * lisp/menu-bar.el (menu-bar-open):
17742 * lisp/obsolete/otodo-mode.el (todo-top-priorities):
17743 * lisp/progmodes/compile.el (compile):
17744 * lisp/progmodes/etags.el (tags-loop-scan):
17745 * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
17746 * lisp/subr.el (posn-actual-col-row):
17747 * lisp/term/pc-win.el (x-list-fonts):
17748 * lisp/textmodes/texinfmt.el (texinfmt-version):
17749 * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
17750 * lisp/time.el (display-time-world-list):
17751 * lisp/tmm.el (tmm-menubar):
17752 * src/buffer.c (syms_of_buffer):
17753 * src/fileio.c (syms_of_fileio):
17754 Omit unnecessary and confusing backslash before quote.
17755 * lisp/erc/erc.el (erc-cmd-LASTLOG):
17756 * lisp/progmodes/flymake.el (flymake-fix-file-name):
17757 * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
17758 Fix string that was intended to escape a backslash and not a quote.
17759
17760 2015-06-30 Glenn Morris <rgm@gnu.org>
17761
17762 * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
17763
17764 * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
17765 Replace hard-coded lists with wildcard + filter-out.
17766
17767 * configure.ac (system-configuration-features): Add X11, NS.
17768
17769 Improve reproducibility of generated loaddefs file
17770 * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
17771 Make the return value the modtime of the input file (if no autoloads).
17772 (update-directory-autoloads): In the "no autoloads" section,
17773 use "most recent modtime" rather than "current time".
17774
17775 2015-06-30 Artur Malabarba <bruce.connor.am@gmail.com>
17776
17777 * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
17778 (Bug#20930)
17779
17780 2015-06-30 Nicolas Petton <nicolas@petton.fr>
17781
17782 * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
17783
17784 Add seq-min and seq-max
17785 Bump version number.
17786 * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
17787 * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
17788
17789 2015-06-30 Eli Zaretskii <eliz@gnu.org>
17790
17791 Make sure sleep-for always delays for as long as it's told
17792 * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
17793 a loop, to ensure we always wait exactly the required amount of
17794 time. (Bug#15990)
17795
17796 2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
17797
17798 Fix pointer signedness glitch
17799 * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
17800
17801 2015-06-30 Eli Zaretskii <eliz@gnu.org>
17802
17803 Don't block changes in mouse pointer inside 'track-mouse'
17804 * etc/NEWS:
17805 * doc/lispref/frames.texi (Mouse Tracking): Document the special
17806 effect of setting 'track-mouse' to 'dragging'.
17807 * lisp/textmodes/artist.el (artist-mouse-draw-continously):
17808 * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
17809 * lisp/mouse-drag.el (mouse-drag-throw):
17810 * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
17811 to avoid changes in the shape of the mouse pointer.
17812 * src/xdisp.c (define_frame_cursor1): Don't change the mouse
17813 pointer shape when do_mouse_tracking has the value of 'dragging',
17814 not just any non-nil value. (Bug#20934)
17815 (syms_of_xdisp): DEFSYM 'dragging'.
17816
17817 2015-06-30 Artur Malabarba <bruce.connor.am@gmail.com>
17818
17819 * lisp/isearch.el (isearch-toggle-word): Fix toggle.
17820
17821 * lisp/emacs-lisp/package.el (package-compute-transaction):
17822 Don't assume version sorting.
17823
17824 * lisp/emacs-lisp/package.el (package--save-selected-packages):
17825 Don't save before init time, to avoid overwriting configurations.
17826 (Bug#20855)
17827
17828 2015-06-30 Xue Fuqiao <xfq.free@gmail.com>
17829
17830 * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
17831 references.
17832
17833 2015-06-29 Ted Zlatanov <tzz@lifelogs.com>
17834
17835 Update for the upcoming CFEngine 3.7 release: support macros and
17836 quoted context strings; reformat JSON; indent promise attributes 2
17837 units by default; give function parameter descriptions in the eldoc
17838 glue.
17839 * lisp/progmodes/cfengine.el: Update version and docs and fix name.
17840 Autoload `json-pretty-print'. Support new features in 3.7.
17841 (cfengine-parameters-indent): Set default promise attribute indent to
17842 2 more than the promise itself.
17843 (cfengine3-macro-regex): New variable to match the new macro syntax.
17844 (cfengine3-font-lock-keywords): Use it to highlight macros.
17845 (cfengine3-indent-line): Use it to indent macros to column 0.
17846 (cfengine3-class-selector-regex): Update for the new quoted strings
17847 format.
17848 (cfengine3-reformat-json-string): New function to reformat a JSON
17849 string using `json-pretty-print'.
17850 (cfengine3-format-function-docstring): Use function parameter
17851 description if it's provided by the cf-promises syntax dump.
17852
17853 2015-06-29 Michael R. Mauger <michael@mauger.com>
17854
17855 Cygwin emacsclient handles w32 file names
17856 * lisp/server.el (server-process-filter): Allow Cygwin's
17857 emacsclient to be used as a file handler on MS-Windows.
17858
17859 2015-06-29 Katsumi Yamaoka <yamaoka@jpl.org>
17860
17861 * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
17862 (bug#20925).
17863
17864 2015-06-29 Eli Zaretskii <eliz@gnu.org>
17865
17866 * doc/lispref/text.texi (Sticky Properties): Improve wording.
17867 (Bug#20924)
17868
17869 Allow font names that end in "-NN", where NN is a number
17870 * src/font.c (font_load_for_lface): If the font-spec didn't match
17871 any available fonts, try again without interpreting trailing "-NN"
17872 as the font size. For the description of the original problem, see
17873 http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
17874
17875 .gdbinit followup to changes in !USE_LSB_TAG
17876 * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
17877 !USE_LSB_TAG, as Emacs no longer does.
17878
17879 2015-06-29 Wolfgang Jenkner <wjenkner@inode.at>
17880
17881 * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
17882 Otherwise `s p' of f and F will stomp on each other's value.
17883 (Bug#20916)
17884
17885 2015-06-29 Artur Malabarba <bruce.connor.am@gmail.com>
17886
17887 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
17888 Don't block remember-pos if buffer isn't displayed. (Bug#20921)
17889
17890 2015-06-29 Nicolas Richard <theonewiththeevillook@yahoo.fr>
17891
17892 * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
17893 as additional guess.
17894
17895 * lisp/emacs-lisp/package.el (describe-package): Convert the guess
17896 to a string.
17897
17898 2015-06-28 Paul Eggert <eggert@cs.ucla.edu>
17899
17900 apropos-library quoting fix
17901 * lisp/apropos.el (apropos-library): Quote library consistently
17902 with the rest of the quoting used by apropos.
17903
17904 Clarify interpreter-mode-alist doc
17905 * lisp/files.el (interpreter-mode-alist):
17906 Reword to avoid confusing quoting that wasn't working anyway.
17907
17908 2015-06-28 Michael Albinus <michael.albinus@gmx.de>
17909
17910 Sync with Tramp 2.2.12
17911 * doc/misc/trampver.texi:
17912 * lisp/net/trampver.el: Update release number.
17913 * test/automated/tramp-tests.el (tramp-test13-make-directory):
17914 Fix cleanup.
17915
17916 2015-06-28 Artur Malabarba <bruce.connor.am@gmail.com>
17917
17918 * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
17919
17920 2015-06-27 Dmitry Gutov <dgutov@yandex.ru>
17921
17922 Bind grep-highlight-matches around the rgrep call
17923 * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
17924 around the rgrep call (bug#20728).
17925
17926 Put "--color" before the other options in grep-command
17927 * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
17928 before the other options in grep-command (bug#20912).
17929
17930 Add --color Grep option to the command dynamically
17931 * lisp/progmodes/grep.el (grep-template, grep-find-template):
17932 Update the description for <C>. (Bug#20728)
17933 (grep-compute-defaults): Don't add the --color option to
17934 grep-options. Only add it to grep-command.
17935 (grep-expand-keywords): Expand the env value opts into <C>.
17936 (grep-expand-template): Replace cf in the env with the opts list,
17937 that can include -i and --color.
17938 * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
17939 "--color=always" from the template, because we don't have to.
17940
17941 2015-06-27 Paul Eggert <eggert@cs.ucla.edu>
17942
17943 cl-extra fixes for most-negative-fixnum
17944 * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
17945 Don't mishandle an argument equal to most-negative-fixnum,
17946 whose absolute value equals itself.
17947 (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
17948
17949 Initialize cl--gensym-counter to 0
17950 Previously it was initialized to a random value, which made it
17951 harder to reproduce earlier Emacs runs. The need for a random
17952 value went away when Emacs introduced and used the #: syntax for
17953 uninterned symbols (Bug#20862).
17954 * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
17955 Document that cl--gensym-counter now starts with 0.
17956 * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
17957 (cl--random-time): Move to near only remaining use.
17958 * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
17959
17960 Improve docstring for macroexp-let2
17961 * lisp/emacs-lisp/macroexp.el (macroexp-let2):
17962 Improve as per suggestion by RMS in:
17963 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
17964 Also, rename args to match new doc string.
17965
17966 2015-06-27 Eli Zaretskii <eliz@gnu.org>
17967
17968 Fix VC test suite on MS-Windows
17969 * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
17970 always starts with 3 slashes after the colon.
17971 * test/automated/vc-tests.el (vc-test--create-repo-function): Use
17972 'w32-application-type' to invoke CVS on MS-Windows with properly
17973 formatted CVSROOT directory name.
17974
17975 Add a new function w32-application-type
17976 * src/w32proc.c (Fw32_application_type): New function.
17977
17978 Avoid error in TLS connections due to incorrect format
17979 * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
17980 the call to 'error', instead of the unsupported %u. Reported by
17981 lo2net <fangtao0901@gmail.com>. (Bug#20908)
17982
17983 2015-06-26 Artur Malabarba <bruce.connor.am@gmail.com>
17984
17985 * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
17986
17987 2015-06-26 Leo Liu <sdl.web@gmail.com>
17988
17989 * lisp/emacs-lisp/cl-indent.el: Fix indentation for
17990 `with-output-to-string' in elisp.
17991
17992 Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
17993 with-output-to-string".
17994 This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
17995
17996 2015-06-26 Eli Zaretskii <eliz@gnu.org>
17997
17998 Minor corrections in ELisp manual
17999 * doc/lispref/nonascii.texi (Character Properties): Correct
18000 inaccuracies in description of values of the Unicode properties.
18001
18002 Fix invisible mouse pointers on Windows.
18003 * src/w32fns.c: Include windowsx.h.
18004 (w32_wnd_proc): If the mouse moved and the mouse pointer is
18005 invisible, make it visible again even when the main (Lisp)
18006 thread is busy.
18007 * src/w32term.c (w32_toggle_invisible_pointer): Rather then
18008 garbaging the frame have the input thread call SetCursor.
18009
18010 2015-06-26 Martin Rudalics <rudalics@gmx.at>
18011
18012 Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
18013 * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
18014 for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
18015 * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
18016 (w32_toggle_invisible_pointer): New function.
18017 (w32_create_terminal): Add w32_toggle_invisible_pointer as
18018 toggle_invisible_pointer_hook for this terminal.
18019
18020 2015-06-25 Xue Fuqiao <xfq.free@gmail.com>
18021
18022 Doc fix for deletion commands
18023 'delete-char' does not respect the value of 'delete-active-region'.
18024 * doc/emacs/killing.texi (Deletion):
18025 Fix documentation for some single-char deletion commands.
18026
18027 * doc/emacs/help.texi (Apropos):
18028 Improve documentation of 'apropos-do-all'.
18029
18030 * doc/emacs/help.texi (Help Summary):
18031 Improve documentation of 'describe-mode'.
18032
18033 2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
18034
18035 Fix submake dependency bug with .h files
18036 * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
18037 Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
18038 before the submake in $(libsrc) would spin off a subsubmake
18039 for $(lib) in parallel with our submake for $(lib) (Bug#20894).
18040
18041 2015-06-25 Artur Malabarba <bruce.connor.am@gmail.com>
18042
18043 * lisp/character-fold.el (character-fold-table): Reuse `table'.
18044
18045 2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
18046
18047 Translate undisplayable ‘ to `
18048 * doc/lispref/help.texi (Keys in Documentation):
18049 * lisp/international/mule-cmds.el (set-locale-environment):
18050 * lisp/term/w32console.el (terminal-init-w32console):
18051 * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
18052 If ‘ is not displayable, transliterate it to `, not to '. See:
18053 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
18054
18055 Fix C99 incompatibilities in Cairo code
18056 * src/image.c (xpm_load) [USE_CAIRO]:
18057 * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
18058 Fix pointer signedness problem.
18059
18060 2015-06-25 Oleh Krehel <ohwoeowho@gmail.com>
18061
18062 lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
18063 * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
18064 `with-output-to-string' should have the same indent as `progn'.
18065 This is in line with the declaration of `with-output-to-string'.
18066
18067 2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
18068
18069 Get ‘./configure; make -C src emacs’ to work
18070 Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
18071 * lib-src/Makefile.in (../lib/libgnu.a):
18072 * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
18073
18074 2015-06-24 Paul Eggert <eggert@cs.ucla.edu>
18075
18076 Fix GC bugs --with-wide-int and Qnil == 0
18077 Use the same alignment for the !USE_LSB_TAG case as for the
18078 more-typical USE_LSB_TAG case. The attempt to support arbitrary
18079 alignments with !USE_LSB_TAG had subtle bugs in garbage collection
18080 once we changed the representation of symbols so that Qnil == 0.
18081 Problem reported by Eli Zaretskii (Bug#20862).
18082 * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
18083 * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
18084 (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
18085 Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
18086 * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
18087 This optimization in the !USE_LSB_TAG case is no longer valid when
18088 symbols are represented via offsets. Change the only use to
18089 assume that pointers might hide in objects.
18090 * src/lisp.h (alignas) [!USE_LSB_TAG]:
18091 Require support in this case, too.
18092 (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
18093 This is OK, because the !USE_LSB_TAG case now applies only when
18094 Lisp_Object is wider than void *, so there's no longer any need
18095 to shift the offset. Not shifting the offset means that
18096 symbol representations have the same alignment as pointers,
18097 which the GC assumes.
18098
18099 2015-06-24 Xue Fuqiao <xfq.free@gmail.com>
18100
18101 * doc/lispintro/emacs-lisp-intro.texi (Data types):
18102 Improve documentation of 'substring'.
18103
18104 2015-06-24 Artur Malabarba <bruce.connor.am@gmail.com>
18105
18106 * lisp/character-fold.el (character-fold-table): Fix table generation.
18107
18108 2015-06-24 Glenn Morris <rgm@gnu.org>
18109
18110 * nextstep/Makefile.in (all): Make it the first target.
18111 (../src/emacs${EXEEXT}): Add rule for making it.
18112
18113 2015-06-24 Artur Malabarba <bruce.connor.am@gmail.com>
18114
18115 * etc/NEWS: Fix mention to old function name.
18116
18117 * lisp/character-fold.el: New file (Bug#20887)
18118 (character-fold-to-regexp): New function.
18119 * lisp/replace.el (replace-search): Check value of
18120 `character-fold-search'.
18121 * lisp/isearch.el: Move character-folding code to
18122 character-fold.el
18123 (isearch-toggle-character-fold): New command.
18124 (isearch-mode-map): Bind it to "\M-sf".
18125 (isearch-mode): Check value of `character-fold-search'.
18126
18127 2015-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
18128
18129 lisp/subr.el (remove-from-invisibility-spec): Handle the t case
18130 * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
18131 is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
18132
18133 * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
18134 (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
18135
18136 2015-06-24 Glenn Morris <rgm@gnu.org>
18137
18138 * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
18139
18140 2015-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
18141
18142 lisp/gnus/nnmaildir.el: Silence lexical warnings
18143 * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
18144 functional style.
18145 (nnmaildir--update-nov): Remove unused var `numdir'.
18146 (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
18147 (nnmaildir-request-group, nnmaildir-request-create-group)
18148 (nnmaildir-request-post, nnmaildir-request-move-article)
18149 (nnmaildir-request-accept-article, nnmaildir-active-number):
18150 Mark unused args.
18151 (nnmaildir-get-new-mail, nnmaildir-group-alist)
18152 (nnmaildir-active-file): Declare.
18153 (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
18154 (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
18155 `mark', `end', `new-mark', and `mark-sym'.
18156 (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
18157 `nlist2'.
18158 (nnmaildir-request-expire-articles):
18159 Remove unused vars `article', `stop' and `nlist2'.
18160 (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
18161 `end'. Use nnmaildir--article when dyn-binding is needed.
18162 Give the value directly in the `let' for `del-mark', `del-action',
18163 `add-action', and `set-action'. Don't use `add-to-list' on a local var.
18164 (nnmaildir-close-server): Declare those local vars that need to be
18165 dyn-bound.
18166
18167 2015-06-24 Paul Eggert <eggert@cs.ucla.edu>
18168
18169 * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
18170
18171 Port selection info fix to clang
18172 * src/keyboard.h (kbd_buffer_store_event_hold):
18173 Don't assume C11 semantics for alignof (Bug#20756).
18174
18175 Fix bug that munged selection info
18176 On some optimizing C compilers, copying a structure did not
18177 copy the padding bytes between elements, and the type punning
18178 between struct input_data and struct selection_input_data did
18179 not work. Change the C code to use a proper union type instead.
18180 Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
18181 * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
18182 (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
18183 (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
18184 (mark_kboards):
18185 Use union buffered_input_event, not struct input_event.
18186 (clear_event, deliver_input_available_signal, process_special_events):
18187 Remove unnecessary forward decls.
18188 (kbd_buffer_store_buffered_event): New function, mostly just the
18189 old kbd_buffer_store_event_hold, except its argument is of type
18190 union buffered_input_event, not struct input_event.
18191 (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
18192 not needed otherwise. Argument is now of type
18193 struct selection_input_event *, not struct input_event *.
18194 All callers changed.
18195 (clear_event): Arg is now of type union buffered_input_event *,
18196 not struct input_event *. All callers changed.
18197 * src/keyboard.h [HAVE_X11]: Include "xterm.h".
18198 (union buffered_input_event): New type.
18199 (kbd_buffer_store_event_hold): Now an inline function,
18200 defined here.
18201 * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
18202 (struct input_event): Use it.
18203 * src/xselect.c (struct selection_event_queue):
18204 Make elements be of type struct selection_input_event,
18205 not struct input_event.
18206 (selection_input_event_equal): New static function.
18207 (x_queue_event): Use it.
18208 (x_queue_event, x_decline_selection_request)
18209 (x_selection_current_request, x_reply_selection_request)
18210 (x_handle_selection_request, x_handle_selection_clear)
18211 (x_handle_selection_event): Use struct selection_input_event,
18212 not struct input_event. All callers changed.
18213 (x_convert_selection): Omit unused first arg. All callers changed.
18214 (Fx_disown_selection_internal): Omit unnecessary union.
18215 * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
18216 rather than rolling our own equivalent. Prefer sie.kind when
18217 setting up that kind of structure.
18218 Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
18219 * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
18220 (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
18221 (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
18222 (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
18223 (SELECTION_EVENT_TIME, x_handle_selection_event):
18224 Arg is now of type struct selection_input_event *)
18225 not struct input_event *. All callers changed.
18226
18227 2015-06-23 Glenn Morris <rgm@gnu.org>
18228
18229 * Makefile.in (install-arch-dep): Simplify with Make conditionals.
18230
18231 2015-06-23 Artur Malabarba <bruce.connor.am@gmail.com>
18232
18233 * lisp/isearch.el: Fold many unicode characters to ASCII.
18234 (isearch-character-fold-search, isearch--character-fold-extras)
18235 (isearch--character-fold-table): New variable.
18236 (isearch--character-folded-regexp): New function.
18237 (isearch-search-fun-default): Use them.
18238 * lisp/replace.el (replace-character-fold): New variable.
18239 (replace-search): Use it.
18240 * etc/NEWS: Document it.
18241
18242 2015-06-23 Glenn Morris <rgm@gnu.org>
18243
18244 Check for an input event before showing a dialog box. (Bug#20813)
18245 * lisp/subr.el (y-or-n-p):
18246 * src/fns.c (Fyes_or_no_p): Check last-input-event as well
18247 as last-nonmenu-event.
18248
18249 2015-06-23 Jürgen Hartmann <juergen_hartman_@hotmail.com> (tiny change)
18250
18251 Respect ‘switch-to-visible-buffer’ more rigidly. (Bug#20861)
18252 * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
18253 (switch-to-prev-buffer, switch-to-next-buffer): Respect
18254 switch-to-visible-buffer independent of the windows history.
18255
18256 2015-06-23 Paul Eggert <eggert@cs.ucla.edu>
18257
18258 * src/keyboard.c (last_timer_event): Remove unused var.
18259
18260 2015-06-23 Artur Malabarba <bruce.connor.am@gmail.com>
18261
18262 * test/automated/package-test.el (package-test-update-listing):
18263 Fix test.
18264
18265 2015-06-23 Glenn Morris <rgm@gnu.org>
18266
18267 Revert 2014-06-25 nextstep/Makefile change.
18268 * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
18269 (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
18270 not as an order-only prerequisite.
18271
18272 * configure.ac (--with-ns): Enable by default on OS X.
18273
18274 2015-06-23 Leo Liu <sdl.web@gmail.com>
18275
18276 Fix shell-for/backward-command to exclude spaces
18277 * lisp/shell.el (shell-forward-command, shell-backward-command):
18278 Handle the 'move case from re-search-forward/backward.
18279 fixes debbugs:20873
18280
18281 2015-06-22 Juri Linkov <juri@linkov.net>
18282
18283 * lisp/replace.el (query-replace-read-from): Add separator to
18284 the local binding of text-property-default-nonsticky. (Bug#20690)
18285
18286 * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
18287 (Bug#20785)
18288
18289 2015-06-22 Ken Brown <kbrown@cornell.edu>
18290
18291 Enable CPU profiling on Cygwin
18292 * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
18293 change that undefined this.
18294 (SIGEV_SIGNAL): Ensure that this is defined as a macro.
18295 * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
18296 Cygwin.
18297
18298 Improve diagnostics of profiler-cpu-start
18299 * src/profiler.c (setup_cpu_timer): Change return type to 'int';
18300 return -1 if the sampling interval is invalid.
18301 (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
18302 fails. (Bug#20843)
18303
18304 2015-06-22 Artur Malabarba <bruce.connor.am@gmail.com>
18305
18306 * lisp/emacs-lisp/package.el: Exclude packages by name.
18307 (package-hidden-regexps): New variable.
18308 (package-menu--refresh): Use it.
18309 (package-menu-hide-package): New command.
18310
18311 * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
18312
18313 2015-06-22 Eli Zaretskii <eliz@gnu.org>
18314
18315 Fix debug-timer-check on systems without HAVE_TIMERFD
18316 * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
18317 the expired timers, since wait_reading_process_output doesn't.
18318 (debug_timer_callback): Enlarge the tolerance to 20 msec.
18319
18320 Fix RCS crashes in vc-test
18321 * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
18322 ports of 'ci' on MS-Windows by always passing the -t- switch.
18323
18324 2015-06-22 Glenn Morris <rgm@gnu.org>
18325
18326 * doc/emacs/package.texi (Packages):
18327 * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
18328
18329 * doc/misc/efaq-w32.texi (Downloading): Copyedits. (Bug#20851)
18330
18331 2015-06-22 Paul Eggert <eggert@cs.ucla.edu>
18332
18333 Port tests to help-quote-translation
18334 * test/automated/ert-x-tests.el (ert-test-describe-test):
18335 * test/automated/package-test.el (package-test-describe-package)
18336 (package-test-signed): Allow straight quotes, too.
18337
18338 2015-06-22 Dmitry Gutov <dgutov@yandex.ru>
18339
18340 Make find-function-on-key use the current window
18341 * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
18342 Extract from `find-function-on-key', add a second argument.
18343 (find-function-on-key): Use it (bug#19679).
18344 (find-function-on-key-other-window)
18345 (find-function-on-key-other-frame): New commands.
18346
18347 2015-06-21 Nicolas Petton <nicolas@petton.fr>
18348
18349 Revert "Define `map-elt' as a generalized variable"
18350 This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
18351
18352 2015-06-21 Ken Brown <kbrown@cornell.edu>
18353
18354 Drop support for CPU profiling on Cygwin
18355 * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
18356 (Bug#20843)
18357
18358 2015-06-21 Paul Eggert <eggert@cs.ucla.edu>
18359
18360 Fix some “nested” quoting confusion in doc strings
18361 * lisp/emacs-lisp/advice.el (ad-map-arglists):
18362 * lisp/kermit.el (kermit-clean-on):
18363 * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
18364 * src/keyboard.c (Frecursive_edit):
18365 Use curved quotes when quoting text containing apostrophe,
18366 so that the apostrophe isn't curved in the output.
18367
18368 2015-06-21 Nicolas Petton <nicolas@petton.fr>
18369
18370 Define `map-elt' as a generalized variable
18371 * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
18372 * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
18373 * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
18374 `setf' with `map-elt'.
18375 * test/automated/map-tests.el: Comment out `test-map-put-literal'.
18376
18377 2015-06-21 Michael Albinus <michael.albinus@gmx.de>
18378
18379 Improve error handling in tramp-adb.el
18380 * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
18381 Improve error handling.
18382
18383 2015-06-21 Nicolas Petton <nicolas@petton.fr>
18384
18385 Reuse `alist-get' in map.el
18386 * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
18387 elements.
18388
18389 2015-06-21 Eli Zaretskii <eliz@gnu.org>
18390
18391 Fix bytecomp-tests--warnings when $TMPDIR has a long name
18392 * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
18393 Allow the warning to begin on the 3rd, not only 2nd line, which
18394 happens if temporary-file-directory has a very long name.
18395
18396 Expect 2 icalendar tests to fail on MS-Windows
18397 * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
18398 (icalendar-real-world): Make them expected failures on MS-Windows.
18399
18400 2015-06-20 Paul Eggert <eggert@cs.ucla.edu>
18401
18402 Improve port of settings UI to older displays
18403 * lisp/cus-start.el (standard): Don't assume curved quotes are
18404 easily distinguishable when users are tinkering with a setting
18405 that affects how curved quotes are generated.
18406
18407 Fix quoting in electric-quote-mode doc string
18408 * lisp/electric.el (electric-quote-mode): Fix quoting.
18409 This is a fallout from the recent change introducing
18410 ‘help-quote-translation’.
18411
18412 Spelling fix
18413
18414 * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
18415
18416 * src/doc.c (syms_of_doc): Remove unused symbols.
18417
18418 2015-06-20 Martin Rudalics <rudalics@gmx.at>
18419
18420 * lisp/window.el (window-state-put): Undedicate target window
18421 before putting STATE into it. (Bug#20848)
18422
18423 2015-06-19 Paul Eggert <eggert@cs.ucla.edu>
18424
18425 Merge from origin/emacs-24
18426 a5e6f33 Fixes: debbugs:20832
18427 b9f02cf Fixes: debbugs:20832
18428
18429 2015-06-19 Eli Zaretskii <eliz@gnu.org>
18430
18431 Fix file-in-directory-p when the directory is UNC
18432 * lisp/files.el (file-in-directory-p): Support files and
18433 directories that begin with "//". (Bug#20844)
18434
18435 2015-06-19 Stephen Berman <stephen.berman@gmx.net>
18436
18437 * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
18438 in the minibuffer. (Bug#20832)
18439
18440 2015-06-19 Nicolas Richard <youngfrog@members.fsf.org>
18441
18442 * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
18443 for adding new todo file is empty but modified. (Bug#20832)
18444
18445 2015-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
18446
18447 (filepos-to-bufferpos): Further tweaks to the utf-16 code
18448 * lisp/international/mule-util.el (filepos-to-bufferpos):
18449 Fix typo. Move non-exact check to the utf-16 branch (the only one
18450 affected). Don't use byte-to-position for the utf-16 case.
18451
18452 2015-06-19 Eli Zaretskii <eliz@gnu.org>
18453
18454 Minor fixes in filepos-to-bufferpos
18455 * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
18456 test for utf-8-emacs. Exempt single-byte encodings from the
18457 'use-exact' path when QUALITY is 'exact'. Test UTF-16 encodings
18458 for BOM before subtracting 2 bytes. Use 'identity' when adjusting
18459 UTF-16 encoded files for CR-LF EOLs.
18460
18461 2015-06-19 Paul Eggert <eggert@cs.ucla.edu>
18462
18463 Improve the optional translation of quotes
18464 Fix several problems with the recently-added custom variable
18465 help-quote-translation where the code would quote inconsistently
18466 in help buffers. Add support for quoting 'like this', which
18467 is common in other GNU programs in ASCII environments. Change
18468 help-quote-translation to use more mnemonic values: values are now the
18469 initial quoting char, e.g., (setq help-quote-translation ?`) gets the
18470 traditional Emacs help-buffer quoting style `like this'. Change the
18471 default behavior of substitute-command-keys to match what's done in
18472 set-locale-environment, i.e., quote ‘like this’ if displayable,
18473 'like this' otherwise.
18474 * doc/lispref/help.texi (Keys in Documentation): Document
18475 new behavior of substitute-command-keys, and document
18476 help-quote-translation.
18477 * doc/lispref/tips.texi (Documentation Tips):
18478 Mention the effect of help-quote-translation.
18479 * etc/NEWS: Mention new behavior of substitute-command-keys,
18480 and merge help-quote-translation news into it.
18481 When talking about doc strings, mention new ways to type quotes.
18482 * lisp/cedet/mode-local.el (overload-docstring-extension):
18483 Revert my recent change to this function, which shouldn't be
18484 needed as the result is a doc string.
18485 * lisp/cedet/mode-local.el (mode-local-print-binding)
18486 (mode-local-describe-bindings-2):
18487 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
18488 * lisp/cus-theme.el (describe-theme-1):
18489 * lisp/descr-text.el (describe-text-properties-1, describe-char):
18490 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
18491 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
18492 (eieio-help-constructor):
18493 * lisp/emacs-lisp/package.el (describe-package-1):
18494 * lisp/faces.el (describe-face):
18495 * lisp/help-fns.el (help-fns--key-bindings)
18496 (help-fns--compiler-macro, help-fns--parent-mode)
18497 (help-fns--obsolete, help-fns--interactive-only)
18498 (describe-function-1, describe-variable):
18499 * lisp/help.el (describe-mode):
18500 Use substitute-command-keys to ensure a more-consistent quoting
18501 style in help buffers.
18502 * lisp/cus-start.el (standard):
18503 Document new help-quote-translation behavior.
18504 * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
18505 * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
18506 (help-xref-url-regexp):
18507 * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
18508 * lisp/wid-edit.el (widget-documentation-link-regexp):
18509 Also match 'foo', in case we're in a help buffer generated when
18510 help-quote-translation is ?'.
18511 * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
18512 (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
18513 (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
18514 (Fsubstitute_command_keys): Document and implement new behavior.
18515 (Vhelp_quote_translation): Document new behavior.
18516
18517 2015-06-18 Glenn Morris <rgm@gnu.org>
18518
18519 * lisp/cus-start.el (help-quote-translation): Add :version.
18520
18521 * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
18522
18523 2015-06-18 Alan Mackenzie <acm@muc.de>
18524
18525 Make translation of quotes to curly in doc strings optional.
18526 * src/doc.c (traditional, prefer-unicode): New symbols.
18527 (help-quote-translation): New variable.
18528 (Fsubstitute_command_keys): Make translation of quotes dependent on
18529 `help-quote-translation'; also translate curly quotes back to ASCII
18530 ones.
18531 * lisp/cus-start.el (top-level): Add a customization entry for
18532 `help-quote-translation'.
18533
18534 2015-06-18 Artur Malabarba <bruce.connor.am@gmail.com>
18535
18536 * lisp/emacs-lisp/package.el: Don't always propagate async errors
18537 (package--with-work-buffer-async): Only propagate the error if the
18538 callback returns non-nil.
18539 (package--download-one-archive): Return nil on the signature
18540 checking callback if we accept unsigned.
18541 (package--download-and-read-archives): Return non-nil on the
18542 archive download callback.
18543
18544 2015-06-18 Martin Rudalics <rudalics@gmx.at>
18545
18546 Set image_cache_refcount before x_default_parameter calls. (Bug#20802)
18547 * src/nsfns.m (Fx_create_frame):
18548 * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
18549 image_cache_refcount before first x_default_parameter call.
18550
18551 2015-06-18 Eli Zaretskii <eliz@gnu.org>
18552
18553 Improve and extend filepos-to-bufferpos
18554 * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
18555 Don't barf if F returns nil for some argument.
18556 (filepos-to-bufferpos): Expand to support UTF-16 and not assume
18557 that every encoding of type 'charset' is single-byte.
18558
18559 2015-06-18 Artur Malabarba <bruce.connor.am@gmail.com>
18560
18561 * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
18562 Properly delete packages. (Bug#20836)
18563
18564 2015-06-18 Eli Zaretskii <eliz@gnu.org>
18565
18566 Update data files from just-released Unicode 8.0
18567 * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
18568 status.
18569 * test/BidiCharacterTest.txt: Update from Unicode 8.0.
18570 * admin/unidata/BidiMirroring.txt:
18571 * admin/unidata/BidiBrackets.txt:
18572 * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
18573
18574 2015-06-18 Paul Eggert <eggert@cs.ucla.edu>
18575
18576 Document curved quotes a bit better
18577 * doc/emacs/basic.texi (Inserting Text):
18578 Mention C-x 8. Change example to use curved quote rather
18579 than infinity, as this lets us give more ways to do it.
18580 * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
18581 and quotation marks.
18582 * doc/emacs/text.texi (Quotation Marks):
18583 * doc/lispref/tips.texi (Documentation Tips):
18584 Add "curly quotes" and "curved quotes" to the index.
18585 * doc/emacs/text.texi (Quotation Marks):
18586 Give the C-x 8 shorthands for curved quotes.
18587 Cross-reference to "Quotation Marks".
18588
18589 2015-06-17 Daiki Ueno <ueno@gnu.org>
18590
18591 Add pinentry.el for better GnuPG integration
18592 * lisp/pinentry.el: New file.
18593 * etc/NEWS: Add entry about pinentry.el.
18594 * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
18595 (Bug#20550)
18596
18597 2015-06-17 Artur Malabarba <bruce.connor.am@gmail.com>
18598
18599 * lisp/emacs-lisp/package.el: Slightly better error reporting.
18600
18601 2015-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
18602
18603 (define-minor-mode): Use setq-default for :global minor modes
18604 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
18605 Use setq-default for :global minor modes (bug#20712).
18606
18607 2015-06-17 Eli Zaretskii <eliz@gnu.org>
18608
18609 Avoid infloop in redisplay with tall images
18610 * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
18611 down near ZV. (Bug#20808)
18612 Call bidi_unshelve_cache to avoid memory leaks. Use IT_CHARPOS
18613 instead of CHARPOS.
18614
18615 2015-06-17 Artur Malabarba <bruce.connor.am@gmail.com>
18616
18617 * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
18618 Fix error reporting.
18619
18620 * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
18621
18622 * lisp/emacs-lisp/package.el: Revert buffer after any operation
18623 Call `package-menu--post-refresh' after any operation that changes
18624 the package database (`package-install' and `package-delete'). To
18625 avoid performance issues in large transactions, these functions
18626 add `post-refresh' to `post-command-hook' instead of calling it
18627 immediately.
18628 (package-menu--mark-or-notify-upgrades): New function.
18629 (list-packages): Add it to `package--post-download-archives-hook'.
18630 (package-menu--post-refresh): Lose the upgrade-checking code, add
18631 code to remove itself from `post-command-hook'.
18632 (package-install, package-delete): Add it to `post-command-hook'.
18633 (package-menu-execute): Don't call `package-menu--post-refresh'.
18634
18635 2015-06-17 Stephen Leake <stephen_leake@stephe-leake.org>
18636
18637 Add missing function xref-location-group for elisp-mode.
18638 * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
18639
18640 2015-06-17 Wolfgang Jenkner <wjenkner@inode.at>
18641
18642 * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
18643 The behavior now matches the description in the manual. (Bug#20783)
18644
18645 2015-06-17 Xue Fuqiao <xfq.free@gmail.com>
18646
18647 * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
18648
18649 2015-06-17 Glenn Morris <rgm@gnu.org>
18650
18651 Generate char-script-table from Unicode source. (Bug#20789)
18652 * admin/unidata/Makefile.in (AWK): New, set by configure.
18653 (all): Add charscript.el.
18654 (blocks): New variable.
18655 (charscript.el, ${unidir}/charscript.el): New targets.
18656 (extraclean): Also remove generated charscript.el.
18657 * admin/unidata/blocks.awk: New script.
18658 * admin/unidata/Blocks.txt: New data file, from unicode.org.
18659 * lisp/international/characters.el: Load charscript.
18660 * src/Makefile.in (charscript): New variable.
18661 (${charscript}): New target.
18662 (${lispintdir}/characters.elc): Depend on charscript.elc.
18663 (temacs$(EXEEXT)): Depend on charscript.
18664
18665 * lisp/international/characters.el (char-script-table): Tweak
18666 some ranges to better match the source. (Bug#20789#17)
18667
18668 Remove "no-byte-compile: t" from a few files.
18669 * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
18670 * lisp/obsolete/patcomp.el: No reason not to compile these.
18671
18672 2015-06-16 Glenn Morris <rgm@gnu.org>
18673
18674 Fix some typos in copied Unicode data. (Bug#20789)
18675 * lisp/international/characters.el (char-script-table):
18676 * lisp/international/fontset.el (script-representative-chars)
18677 (setup-default-fontset): Fix typos.
18678
18679 * lisp/emacs-lisp/check-declare.el (check-declare-warn):
18680 Don't print filename twice (it's in the prefix now).
18681
18682 * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
18683 No longer needed.
18684
18685 Address a compilation warning.
18686 * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
18687 Replace 't' with '_' in pcase.
18688
18689 Address some check-declare warnings.
18690 * lisp/simple.el (tabulated-list-print):
18691 * lisp/progmodes/elisp-mode.el (xref-collect-matches):
18692 * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
18693 (ns-get-selection): Update declarations.
18694
18695 Address some compilation warnings.
18696 * lisp/elec-pair.el (electric-pair-post-self-insert-function):
18697 * lisp/vc/vc-git.el (vc-git-file-type-as-string):
18698 Replace 't' with '_' in pcase.
18699
18700 Address some compilation warnings.
18701 * lisp/face-remap.el (text-scale-adjust):
18702 * lisp/menu-bar.el (popup-menu-normalize-position):
18703 * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
18704 * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
18705 * lisp/emacs-lisp/generator.el (cps--transform-1):
18706 * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
18707 * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
18708 * lisp/progmodes/octave.el (octave-goto-function-definition)
18709 (octave-find-definition-default-filename):
18710 Replace 't' with '_' in pcase.
18711
18712 * lisp/emacs-lisp/pcase.el (pcase--u1):
18713 Paper-over today's bootstrap failure.
18714
18715 2015-06-16 Nicolas Petton <nicolas@petton.fr>
18716
18717 * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
18718
18719 * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
18720
18721 Better confirmation message in `find-alternate-file' (Bug#20830)
18722 * lisp/files.el (find-alternate-file'): Improve the confirmation
18723 message to show the buffer name.
18724
18725 Better docstring for null. (Bug#20815)
18726 * src/data.c (null): Improves the docstring, saying what null returns
18727 when OBJECT is non-nil.
18728
18729 2015-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
18730
18731 * lisp/net/newst-treeview.el: Use lexical-binding.
18732
18733 (filepos-to-bufferpos): Add missing cases. Make sure it terminates.
18734 * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
18735 New auxiliary function, extracted from filepos-to-bufferpos.
18736 Make sure it terminates.
18737 (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
18738 Add support for the `exact' quality.
18739
18740 2015-06-16 Cédric Chépied <cedric.chepied@gmail.com>
18741
18742 Identify feeds in newsticker treeview with :nt-feed property
18743 * lisp/net/newst-treeview.el:
18744 (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
18745
18746 2015-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
18747
18748 * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
18749 (pcase--self-quoting-p): Floats aren't self-quoting.
18750 (pcase): Tweak docstring.
18751 (pcase--u1): Deprecate the t pattern. Improve error detection for
18752 the nil pattern.
18753 (\`): Tweak docstring. Signal an error for unrecognized cases.
18754 (bug#20784)
18755
18756 2015-06-16 Eli Zaretskii <eliz@gnu.org>
18757
18758 Fix infloop in filepos-to-bufferpos
18759 * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
18760 offset calculation, and make it conditional on the eol-type of the
18761 file's encoding. (Bug#20825)
18762
18763 2015-06-16 Martin Rudalics <rudalics@gmx.at>
18764
18765 Fix handling of image cache refcounts. (Bug#20802)
18766 This backports Eli Zaretskii's solution of this problem for W32
18767 to X and NS.
18768 * src/nsfns.m (image_cache_refcount): Define unconditionally.
18769 (unwind_create_frame): If the image cache's reference count
18770 hasn't been updated yet, do that now.
18771 (Fx_create_frame): Set image_cache_refcount unconditionally.
18772 * src/xfns.c (image_cache_refcount): Define unconditionally.
18773 (unwind_create_frame): If the image cache's reference count
18774 hasn't been updated yet, do that now.
18775 (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
18776 unconditionally.
18777 * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
18778 X and NS.
18779
18780 2015-06-16 Nils Ackermann <nils@ackermath.info>
18781
18782 Improve reftex-label-regexps default value
18783 * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
18784 keyvals label regexp more strict to better cope with unbalanced
18785 brackets common in math documents.
18786
18787 2015-06-16 Glenn Morris <rgm@gnu.org>
18788
18789 * doc/emacs/calendar.texi (Format of Diary File):
18790 Move "nonmarking" from here...
18791 (Displaying the Diary): ... to here.
18792
18793 * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
18794 Swap the order of these nodes.
18795 * doc/emacs/emacs.texi: Update detailed menu for the above change.
18796
18797 * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
18798 Update date of examples.
18799 (Diary, Format of Diary File): Move example from former to latter.
18800 Reduce duplication.
18801
18802 No need for cp51932.el, eucjp-ms.el to not be compiled any more.
18803 * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
18804 Don't set no-byte-compile in the outputs.
18805 * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
18806
18807 2015-06-15 Glenn Morris <rgm@gnu.org>
18808
18809 * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
18810 * doc/emacs/calendar.texi (Diary, Format of Diary File):
18811 Update for above diary-file change.
18812
18813 * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
18814 (apply-macro-to-region-lines): Use user-error.
18815
18816 * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
18817 (pages-directory-for-addresses): Doc fixes.
18818
18819 2015-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
18820
18821 * lisp/info.el: Cleanup bytepos/charpos issues
18822 * lisp/international/mule-util.el: Use lexical-binding.
18823 (filepos-to-bufferpos): New function.
18824 * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
18825 (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
18826 (Info-read-subfile, Info-search): Use 0-based file positions.
18827
18828 * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
18829 (perl--syntax-exp-intro-keywords): New var.
18830 (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
18831 (bug#20800).
18832
18833 2015-06-15 Paul Eggert <eggert@cs.ucla.edu>
18834
18835 Fix quoting when making derived mode docstring
18836 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
18837 Nest regexp-quote inside format, not the reverse.
18838 Problem reported by Artur Malabarba in:
18839 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
18840
18841 2015-06-15 Eli Zaretskii <eliz@gnu.org>
18842
18843 Fix current-iso639-language on MS-Windows
18844 * lisp/international/mule-cmds.el (set-locale-environment):
18845 Downcase the locale name before interning it. This is so the
18846 'current-iso639-language' on MS-Windows matches the ':lang'
18847 property of font-spec objects.
18848
18849 Limit Symbola usage some more
18850 * lisp/international/fontset.el (setup-default-fontset): Limit
18851 Symbol coverage of Currency Symbols to u+20B6..u+20CF.
18852 (Bug#20727)
18853
18854 2015-06-15 Nicolas Petton <nicolas@petton.fr>
18855
18856 * lisp/emacs-lisp/map.el (map-let): Better docstring.
18857
18858 2015-06-15 Paul Eggert <eggert@cs.ucla.edu>
18859
18860 * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
18861 (help-fns-test-funny-names): Spelling fixes.
18862
18863 2015-06-14 Glenn Morris <rgm@gnu.org>
18864
18865 * lisp/version.el (emacs-repository-version-git): Demote errors.
18866 Check result is a hash.
18867
18868 2015-06-14 Artur Malabarba <bruce.connor.am@gmail.com>
18869
18870 * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
18871 Catch errors that happen before going async. (Bug#20809)
18872
18873 2015-06-14 Eli Zaretskii <eliz@gnu.org>
18874
18875 Another improvement of documentation of set-fontset-font
18876 * doc/lispref/display.texi (Fontsets): Say explicitly that
18877 CHARACTER can be a single codepoint.
18878 * src/fontset.c (Fset_fontset_font): Doc fix.
18879
18880 Another improvement for symbol and punctuation characters
18881 * lisp/international/fontset.el (setup-default-fontset): Exclude
18882 from Symbola character ranges for symbols and punctuation covered
18883 well by popular Unicode fonts. Prefer fixed-misc Unicode font, if
18884 installed and where its coverage of symbols and punctuation is
18885 known to be good. (Bug#20727)
18886
18887 2015-06-14 Christoph Wedler <christoph.wedler@sap.com>
18888
18889 Some generic support for multi-mode indentation.
18890 * lisp/progmodes/prog-mode.el (prog-indentation-context):
18891 New variable.
18892 (prog-first-column, prog-widen): New convenience functions.
18893
18894 2015-06-14 Artur Malabarba <bruce.connor.am@gmail.com>
18895
18896 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
18897 Don't assume that `tabulated-list-printer' will leave point at the
18898 end of the buffer. (Bug#20810)
18899
18900 2015-06-13 Glenn Morris <rgm@gnu.org>
18901
18902 Tweaks for getting repository version; a bit more like it was for bzr
18903 * lisp/version.el (emacs-repository-version-git)
18904 (emacs-repository--version-git-1): New functions,
18905 split from emacs-repository-get-version.
18906 (emacs-repository-get-version): Make the second argument meaningful.
18907
18908 * lisp/startup.el (command-line-1): Inform if skipping relative
18909 file names due to deleted PWD.
18910
18911 * src/xsmfns.c (x_session_initialize): Avoid libSM crash
18912 when starup directory is missing. (Bug#18851)
18913 (errno.h): Include it.
18914
18915 2015-06-13 Paul Eggert <eggert@cs.ucla.edu>
18916
18917 Better fix for documenting `X as "`X"
18918 Fix suggested by Stefan Monnier.
18919 * lisp/help-fns.el (help-fns--signature):
18920 Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
18921 * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
18922 Don't treat `X specially, as help-fns--signature now handles this.
18923
18924 2015-06-13 Eli Zaretskii <eliz@gnu.org>
18925
18926 Improve the default fontset when Symbola is not installed
18927 * lisp/international/fontset.el (setup-default-fontset): Only
18928 prepend Symbola and FreeMono font specs for symbols and
18929 punctuation; do not replace the default spec for them. This
18930 should have better results when Symbola/FreeMono are not
18931 installed. (Bug#20727)
18932
18933 Improve documentation of ':lang' in font specs
18934 * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
18935 use of the ':lang' property of the font spec.
18936 * doc/emacs/frames.texi (Fonts): Document the language names that
18937 can be in the STYLE part of XLFD.
18938 * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
18939 property.
18940
18941 * nt/README: Don't advertise the (obsolescent) w32 FAQ.
18942
18943 * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
18944
18945 Revert last change in fontset.el
18946 * lisp/international/fontset.el (setup-default-fontset): Revert
18947 the change "Configure Symbola font only if installed", since font
18948 search is evidently not yet set up when this function is called.
18949 (Bug#20727)
18950
18951 2015-06-12 Glenn Morris <rgm@gnu.org>
18952
18953 Ensure early startup warnings are visible at the end. (Bug#20792)
18954 * lisp/emacs-lisp/warnings.el (display-warning):
18955 If startup isn't complete, delay the warning.
18956 * lisp/startup.el (normal-top-level, command-line):
18957 Let display-warning automatically handle the needed delays.
18958 Run delayed-warnings-hook.
18959
18960 * lisp/version.el (emacs-repository-get-version):
18961 Avoid calling external executable if possible. (Bug#20799)
18962
18963 2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
18964
18965 Document `X as "`X", not as "(` X)"
18966 * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
18967 Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
18968
18969 * src/print.c (print_object): Minor simplification.
18970
18971 2015-06-12 Glenn Morris <rgm@gnu.org>
18972
18973 * src/buffer.c (init_buffer): Add final newline to message.
18974
18975 2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
18976
18977 Configure Symbola font only if installed
18978 * lisp/international/fontset.el (setup-default-fontset):
18979 Don't specify the Symbola font if it's not installed.
18980 Likewise for FreeMono. (Bug#20727)
18981
18982 2015-06-12 Eli Zaretskii <eliz@gnu.org>
18983
18984 Configure Symbola font only for symbols and punctuation
18985 * lisp/international/fontset.el (setup-default-fontset): Leave
18986 only symbols and punctuation in the fontset setup for Symbola
18987 font; remove "Greek and Coptic" and "Cyrillic Supplement".
18988 (Bug#20798)
18989
18990 2015-06-12 Andreas Schwab <schwab@linux-m68k.org>
18991
18992 Fix crash in fontset-info
18993 * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
18994 non-nil.
18995
18996 2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
18997
18998 Port to Solaris 10 sparc + Sun C 5.13
18999 * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
19000 Adjust to process.c change.
19001 * src/process.c (create_process): Declare volatile variables at
19002 top level of this function, so that they're less likely to be
19003 reused later in the function in the code executed by the vforked
19004 child. Do not declare locals used only in the vforked child, as
19005 they might share memory with locals still live in the parent.
19006 Instead, use the same variables in the child as in the parent.
19007 This works around a subtle bug that causes a garbage collector
19008 crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
19009
19010 2015-06-12 Glenn Morris <rgm@gnu.org>
19011
19012 * lisp/startup.el (normal-top-level): Don't let *Messages* get
19013 a nil default-directory.
19014
19015 2015-06-11 Glenn Morris <rgm@gnu.org>
19016
19017 * lisp/startup.el (normal-top-level): Use delay-warning. (Bug#20792)
19018
19019 Some progress towards starting with PWD deleted. (Bug#18851)
19020 * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
19021 * lisp/startup.el (normal-top-level, command-line-1):
19022 * lisp/minibuffer.el (read-file-name-default):
19023 Handle default-directory being nil.
19024
19025 2015-06-11 Paul Eggert <eggert@cs.ucla.edu>
19026
19027 Fix "not a tty" bug on Solaris 10
19028 * configure.ac (PTY_OPEN): Define to plain 'open'
19029 on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
19030 * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
19031 calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
19032 hosts that call grantpt which does its work via a setuid subcommand
19033 (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
19034 Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
19035 seems relevant in that case too.
19036
19037 2015-06-11 Juri Linkov <juri@linkov.net>
19038
19039 * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
19040 * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
19041 (Bug#20785)
19042
19043 2015-06-11 Glenn Morris <rgm@gnu.org>
19044
19045 * lisp/international/characters.el (char-script-table): Fix typo.
19046
19047 2015-06-11 Paul Eggert <eggert@cs.ucla.edu>
19048
19049 Fix quoting of help for functions with odd names
19050 While investigating Bug#20759, I discovered other quoting problems:
19051 C-h f mishandled characters like backslash and quote in function names.
19052 This fix changes the behavior so that 'C-h f pcase RET' now
19053 generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
19054 because '(format "%S" '(` FOO))' returns "(\\` FOO)". A comment
19055 in src/lread.c's read1 function says that the backslash will be
19056 needed starting in Emacs 25, which implies that 'format' is
19057 correct and the old pcase documention was wrong to omit the backslash.
19058 * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
19059 * lisp/help-fns.el (help-fns--signature):
19060 * lisp/help.el (help-add-fundoc-usage):
19061 * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
19062 Use help--make-usage-docstring rather than formatting
19063 help-make-usage.
19064 * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
19065 Return raw docstring.
19066 * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
19067 raw docstring. Take more care to distinguish raw from cooked dstrings.
19068 (describe-function-1): Let help-fns--signature substitute
19069 command keys.
19070 * lisp/help.el (help--docstring-quote): New function.
19071 (help-split-fundoc): Use it, to quote funny characters more
19072 systematically.
19073 (help--make-usage): Rename from help-make-usage, since this
19074 should be private. Leave an obsolete alias for the old name.
19075 (help--make-usage-docstring): New function.
19076 * test/automated/help-fns.el (help-fns-test-funny-names): New test.
19077
19078 2015-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19079
19080 * lisp/thingatpt.el (in-string-p): Revert last change,
19081 since in-string-p is not used in thingatpt.el but only from outside.
19082 Also, use lexical binding.
19083
19084 2015-06-11 Artur Malabarba <bruce.connor.am@gmail.com>
19085
19086 * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
19087 * test/automated/let-alist.el (let-alist-cons): Test it.
19088
19089 2015-06-11 Nicolas Richard <theonewiththeevillook@yahoo.fr>
19090
19091 * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
19092
19093 2015-06-10 Glenn Morris <rgm@gnu.org>
19094
19095 * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
19096
19097 Improve generated ChangeLog for gitmerge.el commits. (Bug#20717)
19098 * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
19099 * admin/gitmerge.el (gitmerge-commit-message):
19100 Exclude "skipped" messages from ChangeLog once again.
19101
19102 Slight namespace cleanup for thingatpt.el.
19103 * lisp/thingatpt.el (thing-at-point--in-string-p)
19104 (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
19105 (thing-at-point--read-from-whole-string): Rename from
19106 old versions without "thing-at-point--" prefix.
19107 Keep old versions as obsolete aliases. Update all uses.
19108
19109 * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
19110 Move requiring of finder from here...
19111 (checkdoc-package-keywords): ... to here.
19112
19113 Use 'user-error' in a few calendar files.
19114 * lisp/calendar/appt.el (appt-add):
19115 * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
19116 (calendar-generate):
19117 * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
19118 Replace 'error' with 'user-error'.
19119
19120 * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
19121
19122 * lisp/files-x.el (add-file-local-variable):
19123 Special-case 'lexical-binding'. (Bug#20641)
19124
19125 * lisp/progmodes/executable.el (executable-self-display): Obsolete.
19126 No longer autoload.
19127 * doc/misc/autotype.texi (Executables):
19128 Undocument executable-self-display.
19129
19130 * lisp/progmodes/executable.el (executable-self-display):
19131 Use non-obsolete tail syntax. (Bug#20779)
19132 (executable-self-display): Doc update.
19133
19134 2015-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
19135
19136 * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
19137 (finder-known-keywords): Silence byte-compiler.
19138
19139 2015-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
19140
19141 * lisp/simple.el (eval-expression): Macroexpand before evaluating
19142 (bug#20730).
19143
19144 * lisp/progmodes/sh-script.el: Better handle nested quotes.
19145 (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
19146 (sh-font-lock-quoted-subshell): Make sure double quotes within single
19147 quotes don't mistakenly end prematurely the surrounding string.
19148
19149 * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
19150
19151 2015-06-09 Glenn Morris <rgm@gnu.org>
19152
19153 * test/automated/Makefile.in (ELFILES): Sort.
19154
19155 * Makefile.in (SUBDIR_MAKEFILES):
19156 * lwlib/Makefile.in (WARN_CFLAGS):
19157 Use built-in Make functions rather than echo+sed.
19158
19159 2015-06-09 Eli Zaretskii <eliz@gnu.org>
19160
19161 Update char-script-table
19162 * lisp/international/characters.el (char-script-table): Update
19163 from Unicode 8.0 Draft.
19164
19165 Improve font selection for punctuation and other symbols
19166 * src/fontset.c (face_for_char): If the character's script is
19167 'symbol', and the font used for ASCII face has a glyph for it, use
19168 the font for the ASCII face instead of searching the fontsets.
19169 This comes instead of NS-specific code that used the current
19170 face's font instead, which is now disabled due to undesirable
19171 consequences. (Bug#20727)
19172
19173 2015-06-08 Dmitry Gutov <dgutov@yandex.ru>
19174
19175 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
19176 Skip past `#' to find BEG (bug#20771).
19177 * test/automated/elisp-mode-tests.el
19178 (elisp-completes-functions-after-hash-quote): New test.
19179
19180 2015-06-08 Eli Zaretskii <eliz@gnu.org>
19181
19182 Fix compilation warning/error in --without-x builds
19183 * src/xdisp.c (append_space_for_newline): Condition GUI-specific
19184 code on HAVE_WINDOW_SYSTEM.
19185
19186 Improve the default fontset wrt symbols
19187 * lisp/international/fontset.el (setup-default-fontset): Better
19188 setup of fontset-default for symbols: use Symbola and FreeMono.
19189 (Bug#20727)
19190
19191 2015-06-08 Oleh Krehel <ohwoeowho@gmail.com>
19192
19193 Add new command checkdoc-package-keywords
19194 * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
19195 New defcustom.
19196 (checkdoc-list-of-strings-p): Add doc.
19197 (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
19198 non-nil, call `checkdoc-package-keywords'.
19199 (checkdoc-get-keywords): New defun.
19200 (checkdoc-package-keywords): New command. Warns if the current file
19201 has package.el-style keywords that aren't in `finder-known-keywords'.
19202 * etc/NEWS: Add entry.
19203
19204 2015-06-08 Eli Zaretskii <eliz@gnu.org>
19205
19206 Avoid crashes when key-binding is called from a timer
19207 * src/keymap.c (Fkey_binding): Don't segfault if called with an
19208 empty vector as KEY. (Bug#20705)
19209
19210 Fix a thinko in arc-mode.el
19211 * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
19212 non-Zip64 case. (Bug#20769)
19213
19214 2015-06-08 Artur Malabarba <bruce.connor.am@gmail.com>
19215
19216 * lisp/emacs-lisp/package.el (package-delete): Make interactive.
19217
19218 2015-06-08 Oleh Krehel <ohwoeowho@gmail.com>
19219
19220 * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
19221 (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
19222 "*warn*", print the warning to the standard output. (bug#20754)
19223
19224 2015-06-07 Glenn Morris <rgm@gnu.org>
19225
19226 * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
19227
19228 * src/font.c (syms_of_font) <font-log>: Doc fix.
19229
19230 Remove the obsolete leading "*" from some C doc strings.
19231 * src/coding.c (syms_of_coding):
19232 * src/font.c (syms_of_font): Remove leading "*" from docs.
19233 * lisp/cus-start.el (enable-character-translation): Add it.
19234
19235 2015-06-07 Paul Eggert <eggert@cs.ucla.edu>
19236
19237 Move gen_origin from program to data
19238 That way, 'make change-history' needs to change only ChangeLog.2,
19239 instead of having to change two files.
19240 * ChangeLog.2: Add commit info for range that this file covers.
19241 * Makefile.in (new_commit_regexp): New macro.
19242 (change-history-nocommit): Simplify, by putting what used to be
19243 the gen_origin value into the data (ChangeLog.2) rather than
19244 into the program (gitlog-to-emacslog).
19245 * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
19246 the input file (e.g., ChangeLog.2) rather than by having a
19247 constant in the program. Substitute it into the output.
19248
19249 2015-06-07 Dmitry Gutov <dgutov@yandex.ru>
19250
19251 * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
19252 function name (bug#20759).
19253
19254 2015-06-07 Eli Zaretskii <eliz@gnu.org>
19255
19256 Adapt 'struct timespec' to next release of MinGW runtime
19257 * nt/inc/ms-w32.h (struct timespec): Don't declare if
19258 __struct_timespec_defined is defined.
19259
19260 2015-06-06 Paul Eggert <eggert@cs.ucla.edu>
19261
19262 Merge from gnulib
19263 This incorporates:
19264 2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
19265 2015-06-05 stdio: Don't redefine gets when using C++
19266 2015-06-05 acl-permissions: port to AIX, C89 HP-UX
19267 2015-06-02 file-has-acl: fix build on Mac OS X 10
19268 2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
19269 2015-06-01 pthread_sigmask: discount system version if a simple macro
19270 2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
19271 * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
19272 * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
19273 * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
19274 * lib/gnulib.mk: Regenerate.
19275
19276 2015-06-06 Juri Linkov <juri@linkov.net>
19277
19278 * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
19279 before calling grep-compute-defaults because now it affects the
19280 command lines computed in grep-compute-defaults. (Bug#20728)
19281
19282 2015-06-06 Glenn Morris <rgm@gnu.org>
19283
19284 Address some compilation warnings.
19285 * lisp/international/mule-cmds.el (w32-get-console-codepage)
19286 (w32-get-console-output-codepage):
19287 * lisp/progmodes/elisp-mode.el (xref-collect-references):
19288 * lisp/version.el (cairo-version-string): Declare.
19289 * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
19290
19291 2015-06-06 Eli Zaretskii <eliz@gnu.org>
19292
19293 Fix display when a font claims large values of ascent and descent
19294 This fixes bug#20628.
19295 * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
19296 coordinate of a hollow cursor glyph when the original glyph's
19297 ascent is too small.
19298 (get_font_ascent_descent, normal_char_ascent_descent)
19299 (normal_char_height): New functions.
19300 (handle_single_display_spec, append_space_for_newline)
19301 (calc_pixel_width_or_height, produce_stretch_glyph)
19302 (calc_line_height_property): Use normal_char_ascent_descent and
19303 normal_char_height.
19304 (x_produce_glyphs): When font-global values of ascent and descent
19305 are too large, use per-character glyph metrics instead, if
19306 possible. But don't allow the glyph row's ascent and descent
19307 values become smaller than the values from the metrics of the
19308 font's "normal" character.
19309 * src/xftfont.c (xftfont_draw):
19310 * src/w32font.c (w32font_draw): Correct the values of ascent and
19311 descent used to draw glyphless characters' hex code in a box.
19312 * src/xterm.c (x_draw_glyph_string_background):
19313 * src/xdisp.c (x_produce_glyphs):
19314 * src/w32term.c (x_draw_glyph_string_background):
19315 * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
19316 to detect fonts whose global ascent and descent values are too
19317 large to be used in layout decision, and redraw the background
19318 when that happens.
19319 * src/dispextern.h (FONT_TOO_HIGH): New macro.
19320 (get_font_ascent_descent): Add prototype.
19321 * src/xterm.c (x_new_font):
19322 * src/w32term.c (x_new_font):
19323 * src/nsterm.m (x_new_font):
19324 * src/font.c (font_open_entity):
19325 * src/composite.c (composition_gstring_width):
19326 Use get_font_ascent_descent to obtain reasonable values for ascent
19327 and descent of a font.
19328
19329 2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
19330
19331 Add assertion in adjust_point_for_property
19332 * src/keyboard.c (adjust_point_for_property): Add eassert for
19333 current buffer being shown in selected window.
19334
19335 2015-06-06 Dmitry Gutov <dgutov@yandex.ru>
19336
19337 Replace uses of in-string-p; make it obsolete
19338 * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
19339 (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
19340
19341 2015-06-06 Eli Zaretskii <eliz@gnu.org>
19342
19343 Fix Dired display of an explicit list of files by ls-lisp.el
19344 * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
19345 (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
19346 correct for when displaying individual files separately, not as
19347 part of listing a directory, in which case these values are not
19348 recomputed by 'ls-lisp-insert-directory', but used verbatim.
19349
19350 * lisp/dired.el (dired): Doc fix. (Bug#20739)
19351
19352 2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
19353
19354 Do not adjust point in a non-selected window
19355 * src/keyboard.c (command_loop_1): Do not adjust point when
19356 current buffer is not shown in selected window (Bug#20590).
19357
19358 * etc/DEBUG: Mention 'maybe_call_debugger'
19359
19360 2015-06-05 Nicolas Petton <nicolas@petton.fr>
19361
19362 Fix a unit test for map.el
19363 * test/automated/map-tests.el (test-map-let): Fix the test to work
19364 with the new syntax of `map-let'.
19365
19366 * lisp/emacs-lisp/map.el (map-let): Better docstring.
19367
19368 Better syntax for the map pcase pattern
19369 * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
19370 bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
19371
19372 * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
19373
19374 Fix a byte-compiler error in map-put and map-delete
19375 * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
19376 called with a symbol.
19377
19378 2015-06-05 Glenn Morris <rgm@gnu.org>
19379
19380 * admin/gitmerge.el (gitmerge-commit-message):
19381 Revert to including "skipped" messages in ChangeLog once again.
19382
19383 2015-06-05 Tassilo Horn <tsdh@gnu.org>
19384
19385 Use string> instead of equiv lambda with string<
19386 * lisp/help.el (view-emacs-news): Use string> instead of equivalent
19387 lambda with string<.
19388
19389 2015-06-05 Glenn Morris <rgm@gnu.org>
19390
19391 * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
19392 (map--delete-array): Fix typo.
19393
19394 * test/automated/map-tests.el: Replace "assert" with "should".
19395
19396 * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
19397 (SUBDIRS_REL): Derive from SUBDIRS.
19398
19399 Tweak some build messages.
19400 * lisp/Makefile.in ($(lisp)/loaddefs.el):
19401 * lisp/cus-dep.el (custom-make-dependencies):
19402 * lisp/finder.el (finder-compile-keywords): Say what we are doing.
19403 * lisp/international/titdic-cnv.el (batch-titdic-convert):
19404 Don't say how to compile.
19405
19406 2015-06-05 Paul Eggert <eggert@cs.ucla.edu>
19407
19408 Omit U+0332 COMBINING LOW LINE in previous change
19409 It turns out that it does not work on Ubuntu 15.04.
19410
19411 Fix transliteration of Bahá'í months
19412 * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
19413 Improve quality of Latin transliteration of Bahá'í month names.
19414
19415 Fix curved quotes in a few places
19416 * lisp/calc/calc-misc.el (calc-help): Fix quoting.
19417 The strings in question are not doc strings, so this partially
19418 undoes the recent change that assumed they were doc strings.
19419 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
19420 * lisp/info.el (Info-finder-find-node):
19421 Use curved quotes.
19422 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
19423 Also allow curved quotes in doc strings.
19424
19425 2015-06-04 Glenn Morris <rgm@gnu.org>
19426
19427 * lisp/Makefile.in (AM_V_at): Add missing definition.
19428
19429 * lisp/Makefile.in: Quieten output a bit.
19430 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
19431 Don't echo directories, since the commands we invoke print them.
19432
19433 * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
19434 (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
19435 (SUBDIRS_SUBDIRS): New variables.
19436 (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
19437 Remove.
19438 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
19439 (update-subdirs, compile-main, compile-clean):
19440 Replace "setwins" usage with new "SUBDIRS" variables.
19441
19442 * lisp/vc/compare-w.el (compare-windows-get-window-function):
19443 Fix :version tag.
19444
19445 2015-06-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19446
19447 * src/ftfont.c (ftfont_open2): Round divisions by upEM.
19448
19449 Undo removal of x_clear_area call on expose for GTK3 or cairo
19450 * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
19451 Clear exposed area. (Bug#20677)
19452
19453 2015-06-04 Glenn Morris <rgm@gnu.org>
19454
19455 * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
19456
19457 * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
19458
19459 * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
19460 Rename from quail-lao-update-translation, since lao.el defines that.
19461
19462 2015-06-04 Dmitry Gutov <dgutov@yandex.ru>
19463
19464 Handle new-style advice in find-funct
19465 * lisp/emacs-lisp/find-func.el (find-function-advised-original):
19466 Handle new-style advice. Return the symbol's function definition.
19467 (Bug#20718)
19468 (find-function-library): Update accordingly.
19469
19470 2015-06-04 Nicolas Petton <nicolas@petton.fr>
19471
19472 Merge branch 'map'
19473
19474 * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
19475
19476 Add new function string-greaterp
19477 * lisp/subr.el (string-greaterp): New function. Also aliased to
19478 `string>'.
19479 * test/automated/subr-tests.el (string-comparison-test): Add unit
19480 tests for `string>'and `string<'.
19481 * src/fns.c (string-lessp): Better docstring.
19482
19483 2015-06-04 Eli Zaretskii <eliz@gnu.org>
19484
19485 Fix timezone-related functions on MS-Windows
19486 * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
19487 'xputenv', even if no reallocation of tzvalbuf was necessary.
19488 This fixes a bug in timezone-related functions on MS-Windows.
19489 Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
19490
19491 2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
19492
19493 Don't pass raw directory name to 'error'
19494 * lisp/files.el (basic-save-buffer-2): Avoid format error if
19495 a directory name contains a string like "%s".
19496
19497 2015-06-03 Dmitry Gutov <dgutov@yandex.ru>
19498
19499 Override 'grep --color=always'
19500 * lisp/progmodes/xref.el (xref-collect-matches):
19501 Override --color=always in grep-find-template.
19502
19503 2015-06-03 Michael Albinus <michael.albinus@gmx.de>
19504
19505 Fix error introduced recently in file-notify-tests.el
19506 * test/automated/file-notify-tests.el
19507 (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
19508 (file-notify--deftest-remote): Revert previous patch, not
19509 necessary anymore.
19510
19511 2015-06-03 Wolfgang Jenkner <wjenkner@inode.at>
19512
19513 * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
19514 Starting from a display string after a newline, point went to the
19515 previous line. Also, fix an inadvertent use of a buffer position
19516 with FETCH_BYTE. (Bug#20701)
19517
19518 2015-06-03 Michael Albinus <michael.albinus@gmx.de>
19519
19520 Instrument file-notify-test.el in order to catch hydra error
19521 * test/automated/file-notify-tests.el (file-notify--deftest-remote):
19522 Wrap body by `ignore-case', in order to trap non-local errors.
19523
19524 2015-06-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19525
19526 Undo previous changes in non-toolkit scroll bar drawing
19527 * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
19528 [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window. (Bug#20668)
19529
19530 2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
19531
19532 * .gitignore: Also ignore doc/*/*/*.html and .ps.
19533
19534 Support quotes 'like this' in info files
19535 This is possible when 'makeinfo --disable-encoding' is used
19536 in Texinfo 5.
19537 * lisp/calc/calc-help.el (calc-describe-thing):
19538 * lisp/gnus/gnus-art.el (gnus-button-alist):
19539 * lisp/info.el (Info-find-index-name):
19540 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
19541 Also support quotes 'like this'.
19542 * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
19543 * lisp/finder.el (finder-font-lock-keywords): Remove var that
19544 hasn't been used in years, instead of bothering to fix its quoting.
19545
19546 2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
19547
19548 * .gitignore: Remove !test/etags/html-src/*.html.
19549 It's no longer needed, since *.html was removed. Sort.
19550
19551 2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
19552
19553 Restore <D> instead of '.' in grep-find-template
19554 * lisp/cedet/semantic/symref/grep.el
19555 (semantic-symref-grep-use-template): Update a comment.
19556 * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
19557 instead of '.' in grep-find-template (bug#20719).
19558 (rgrep): Pass nil as the directory to rgrep-default-command.
19559 * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
19560 default value for DIR.
19561 * lisp/progmodes/xref.el (xref-collect-matches): Drop the
19562 workaround.
19563
19564 2015-06-02 Glenn Morris <rgm@gnu.org>
19565
19566 * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
19567
19568 * configure.ac (emacs_config_features): Add Cairo.
19569
19570 * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
19571
19572 2015-06-02 Michael Albinus <michael.albinus@gmx.de>
19573
19574 Ensure that autorevert works for remote files in file-notify-tests.el
19575 * test/automated/file-notify-tests.el (file-notify--test-desc):
19576 New defvar.
19577 (file-notify--test-remote-enabled)
19578 (file-notify-test00-availability, file-notify-test01-add-watch)
19579 (file-notify-test02-events): Use it.
19580 (file-notify--test-event-test): Check proper descriptor.
19581 (file-notify-test03-autorevert): Ensure that
19582 `visited-file-modtime' has changed. (Bug#20392)
19583
19584 2015-06-02 Nicolas Petton <nicolas@petton.fr>
19585
19586 Add a pcase pattern for maps and `map-let' based on it
19587 * lisp/emacs-lisp/map.el (map-let): New macro.
19588 (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
19589 * test/automated/map-tests.el: New test for `map-let'.
19590
19591 2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
19592
19593 Reuse rgrep mechanics in xref-find-regexp
19594 * lisp/progmodes/grep.el (rgrep-default-command):
19595 Extract from `rgrep'.
19596 * lisp/progmodes/xref.el (xref-collect-references): Split from
19597 `xref-collect-matches'. Only handle the case of symbol search.
19598 (xref-collect-matches): Instead of Semantic Symref, use
19599 `rgrep-default-command', to take advantage of its directory and
19600 file ignore settings.
19601 (xref--collect-match): Remove the last argument, leaving the
19602 regexp construction up to the caller.
19603 * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
19604 Change to take the xref-collect- function to use as an argument.
19605 (elisp-xref-find): Update accordingly.
19606 * lisp/progmodes/etags.el (etags--xref-find-matches)
19607 (etags-xref-find): Same.
19608
19609 Move xref-elisp-location to elisp-mode.el
19610 * lisp/progmodes/xref.el (xref-elisp-location)
19611 (xref-make-elisp-location, xref-location-marker): Remove here.
19612 (xref--xref): Don't limit the type of the location slot.
19613 * lisp/progmodes/elisp-mode.el (xref-elisp-location):
19614 Define as a cl-struct here.
19615 (xref-location-marker): Move here.
19616
19617 2015-06-02 Eli Zaretskii <eliz@gnu.org>
19618
19619 Minor tweaks for .gitignore
19620 * .gitignore: Don't ignore versioned *.html and *.ps files.
19621 Don't ignore admin/notes/tags that might be ignored as TAGS
19622 on case-insensitive filesystems. (Bug#20710)
19623
19624 2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
19625
19626 Generate curved quotes in ert doc
19627 * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
19628 (ert-results-mode-menu)
19629 (ert-results-pop-to-backtrace-for-test-at-point)
19630 (ert-results-pop-to-messages-for-test-at-point)
19631 (ert-results-pop-to-should-forms-for-test-at-point)
19632 (ert-describe-test):
19633 Quote ‘like this’, not `like this', when generating doc strings
19634 and the like.
19635 * test/automated/ert-x-tests.el (ert-test-describe-test):
19636 Allow quoting ‘like this’.
19637
19638 2015-06-02 Nicolas Richard <youngfrog@members.fsf.org>
19639
19640 Add test for previous commit
19641 * test/automated/replace-tests.el: New file.
19642 (query-replace--split-string-tests): Add test for previous commit.
19643
19644 Avoid confusion in query-replace history when replacing NUL chars
19645 * lisp/replace.el (query-replace--split-string): New function.
19646 (query-replace-read-from): Rely on the 'separator' property
19647 instead of searching for the NUL character (Bug#20690).
19648
19649 2015-06-02 Glenn Morris <rgm@gnu.org>
19650
19651 Merge from origin/emacs-24
19652 8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
19653
19654 * admin/gitmerge.el (gitmerge-commit-message):
19655 Exclude "skipped" messages from ChangeLog.
19656
19657 2015-06-01 Michael Albinus <michael.albinus@gmx.de>
19658
19659 Sync with Tramp repository
19660 * lisp/net/tramp.el (tramp-message): Dump connection buffer error
19661 messages.
19662 (tramp-handle-make-auto-save-file-name): When calling
19663 `make-auto-save-file-name' internally, make sure it uses Unix-like
19664 behavior, not Windows-like behavior.
19665 * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
19666 the local case, because "chown" might fail on w32.
19667 * lisp/net/trampver.el (tramp-repository-get-version): Don't run
19668 for XEmacs.
19669
19670 2015-06-01 Eli Zaretskii <eliz@gnu.org>
19671
19672 MS-Windows followup for batch stdout/stderr output changes
19673 * lisp/international/mule-cmds.el (set-locale-environment):
19674 In batch mode, use console codepages for keyboard and terminal
19675 encoding. (Bug#20545)
19676
19677 Update .gitattributes for DOS EOL files
19678 * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
19679 CRLF end-of-line format.
19680
19681 NS equivalents of xterm.c and w32term.c changes
19682 * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
19683 glyph string background also when the font in use claims
19684 preposterously large global height value. Helps to remove
19685 artifacts left from previous displays when glyphless characters
19686 are displayed as hex code in a box.
19687 (x_new_font): Call get_font_ascent_descent to obtain a reasonable
19688 value for FRAME_LINE_HEIGHT, even when a font claims very large
19689 value for its height.
19690
19691 2015-06-01 Paul Eggert <eggert@cs.ucla.edu>
19692
19693 Avoid grave accent quoting in stderr diagnostics
19694 A few Emacs diagnostics go directly to stderr, and so can't easily
19695 contain curved quotes (as non-UTF-8 locales might mishandle them).
19696 Instead of bothering to add support for this rarity, reword the
19697 diagnostics so that they don't use grave accent to quote.
19698 * src/alloc.c (mark_memory): Fix comment.
19699 * src/buffer.c (init_buffer):
19700 * src/dispnew.c (init_display):
19701 * src/emacs.c (main, sort_args):
19702 * src/lread.c (dir_warning):
19703 * src/term.c (init_tty):
19704 * src/unexmacosx.c (unexec):
19705 * src/xfns.c (select_visual):
19706 * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
19707 Reword stderr diagnostics to avoid quoting `like this'.
19708 * src/unexmacosx.c: Include errno.h.
19709 * src/xfns.c (select_visual): Encode value for locale.
19710
19711 2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
19712
19713 Treat batch stdout/stderr like standard display
19714 Calls like (print FOO) could generate improperly encoded or
19715 hard-to-read output if FOO contains characters outside the system
19716 locale. Fix this by treating batch stdout and stderr like
19717 interactive standard display, when it comes to transliterating and
19718 encoding characters (Bug#20545).
19719 * doc/emacs/mule.texi (Communication Coding):
19720 * doc/lispref/display.texi (Active Display Table):
19721 * doc/lispref/nonascii.texi (Locales):
19722 * etc/NEWS:
19723 * src/coding.c (syms_of_coding):
19724 * src/dispnew.c (syms_of_display):
19725 Document this.
19726 * src/print.c: Include disptab.h.
19727 (printchar_to_stream): New function, with much of the guts of the
19728 old Fexternal_debugging_output, except this one also uses the
19729 standard display table.
19730 (printchar, strout, Fexternal_debugging_output): Use it.
19731
19732 2015-05-31 Glenn Morris <rgm@gnu.org>
19733
19734 * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
19735
19736 2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
19737
19738 Remove DEFSYMs that aren't used at the C level. Also:
19739 * src/decompress.c (Qzlib_dll):
19740 * src/font.c (Qunicode_sip):
19741 * src/frame.c (Qtip_frame):
19742 * src/ftfont.c (Qserif):
19743 * src/gnutls.c (Qgnutls_dll):
19744 * src/xml.c (Qlibxml2_dll):
19745 Move from here ...
19746 * src/w32fns.c (syms_of_w32fns): ... to here,
19747 as these are used only on MS-Windows.
19748
19749 2015-05-31 Michael Albinus <michael.albinus@gmx.de>
19750
19751 Use another default value for tramp-histfile-override
19752 * lisp/net/tramp-sh.el (tramp-histfile-override):
19753 Use ".tramp_history" as default.
19754 Fixes bug#20446
19755
19756 2015-05-29 Nicolas Petton <nicolas@petton.fr>
19757
19758 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
19759
19760 2015-05-16 Nicolas Petton <nicolas@petton.fr>
19761
19762 * etc/NEWS: Add an entry about map.el.
19763
19764 Improve the docstring of functions in map.el
19765 Since a map is not a data structure but a concept, adding information
19766 about the possible types of maps can be useful information.
19767 * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
19768 each public function.
19769
19770 2015-04-29 Nicolas Petton <nicolas@petton.fr>
19771
19772 * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
19773 specific tests depending on the type of the map.
19774
19775 * lisp/emacs-lisp/map.el: Better docstrings.
19776
19777 2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
19778
19779 * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
19780
19781 2015-04-25 Nicolas Petton <nicolas@petton.fr>
19782
19783 * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
19784
19785 * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
19786
19787 Fix a false negative in `map-elt' with alists and values being nil
19788 * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
19789 found but its associated value is nil, do not return the default
19790 value.
19791 * test/automated/map-tests.el: Add a regression test.
19792
19793 2015-04-24 Nicolas Petton <nicolas@petton.fr>
19794
19795 * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
19796
19797 Do not signal an error when trying to delete a key from an array
19798 * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
19799 the key is present to avoid signaling an error.
19800 * test/automated/map-tests.el: Add a test for deleting non-existing
19801 keys from maps.
19802
19803 * lisp/emacs-lisp/map.el: Better docstring.
19804
19805 Minor improvement in map-elt
19806 * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
19807 doing a lookup in arrays, but check the boundaries of the array
19808 instead.
19809 * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
19810 and a negative integer as key.
19811
19812 2015-04-21 Nicolas Petton <nicolas@petton.fr>
19813
19814 * test/automated/map-tests.el: Refactoring of test methods.
19815
19816 * test/automated/map-tests.el: Renamed from map-test.el.
19817
19818 2015-04-18 Nicolas Petton <nicolas@petton.fr>
19819
19820 * lisp/emacs-lisp/map.el (map-into): Better error message.
19821
19822 * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
19823
19824 Throw an error when converting a map into an unknown map type
19825 * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
19826 not valid.
19827 * test/automated/map-test.el: Add a regression test.
19828
19829 New library map.el similar to seq.el but for mapping data structures.
19830 * test/automated/map-test.el: New file.
19831 * lisp/emacs-lisp/map.el: New file.
19832
19833 2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
19834
19835 * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
19836 there's no explicit tag name (bug#20629).
19837
19838 2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
19839
19840 Remove format2
19841 * src/editfns.c, src/lisp.h (format2): Remove.
19842 It is more trouble than it's worth, now that we have CALLN.
19843 This is just a minor refactoring.
19844 * src/buffer.c (Fkill_buffer):
19845 * src/dbusbind.c (XD_OBJECT_TO_STRING):
19846 * src/fileio.c (barf_or_query_if_file_exists):
19847 Adjust to format2 going away.
19848
19849 Don't misencode C-generated messages
19850 Also, be more consistent about calls to 'Fmessage' vs 'message'.
19851 * src/alloc.c (Fgc_status):
19852 Prefer AUTO_STRING to build_string for Fmessage call.
19853 * src/data.c (Fmake_variable_buffer_local)
19854 (Fmake_local_variable, Fmake_variable_frame_local):
19855 * src/doc.c (store_function_docstring):
19856 Use Fmessage, not message, since the argument can contain
19857 non-ASCII characters, and this can cause the resulting message
19858 to be incorrectly encoded for the current environment.
19859 * src/fns.c (maybe_resize_hash_table):
19860 * src/xselect.c (x_clipboard_manager_save_all):
19861 Use message, not Fmessage, since Fmessage's power isn't needed here.
19862 * src/process.c (Fmake_network_process): Reword message to avoid %s.
19863 * src/xdisp.c (vmessage): Document restrictions on message contents.
19864 (message_nolog) [false]: Remove unused code.
19865
19866 Use \r rather than ^M in string literals
19867 This is less likely to cause problems on platforms that
19868 use CRLF (or CR!) termination for lines.
19869
19870 Update .gitattributes to match current sources
19871 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
19872 * .gitattributes: Accommodate tests that insist on DOS format.
19873 Remove test/automated/data/decompress/foo-gzipped.
19874 Add etc/e/eterm-color.
19875
19876 2015-05-30 Eli Zaretskii <eliz@gnu.org>
19877
19878 * doc/emacs/mule.texi (Modifying Fontsets):
19879 Document face-ignored-fonts. (Bug#20628)
19880
19881 Add etags test for the new -Q option
19882 * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
19883 * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
19884 * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
19885 test-case changes below.
19886 * test/etags/ETAGS.good_6: New file.
19887 * test/etags/cp-src/x.cc: New file.
19888 * test/etags/Makefile (CPSRC): Add x.cc.
19889 (check): Add one more test, for -Q.
19890
19891 2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
19892
19893 Use list for the tags completion table, not obarray
19894 * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
19895 list instead of an obarray
19896 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
19897 (tags-completion-table): Combine those lists.
19898 (tags-completion-table): Update the docstring.
19899
19900 2015-05-30 Eli Zaretskii <eliz@gnu.org>
19901
19902 Restore EOL format testing in etags
19903 * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
19904 * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
19905 * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
19906 test-case changes below.
19907 * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
19908 * test/etags/cp-src/c.C (B): Add back stray CR character.
19909 * test/etags/c-src/dostorture.c: Add back.
19910 * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
19911
19912 2015-05-30 Vitaly Takmazov <vitalyster@gmail.com> (tiny change)
19913
19914 Declare Emacs on MS-Windows to be DPI-aware
19915 * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
19916 * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
19917 This avoids Windows entering compatibility mode for Emacs,
19918 which causes fonts to look less nice.
19919
19920 2015-05-30 Michael Albinus <michael.albinus@gmx.de>
19921
19922 Improve Tramp traces
19923 * lisp/net/trampver.el (tramp-repository-get-version): New defun.
19924 * lisp/net/tramp.el (tramp-debug-message): Use it.
19925
19926 2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
19927
19928 backup-buffer minor reworking of internals
19929 * lisp/files.el (backup-buffer): Rework to avoid a couple of
19930 unused locals inadvertently introduced in the previous change.
19931
19932 backup-buffer now reports .emacs.d/%backup% ills
19933 * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
19934 fails due to disk space exhaustion or whatever, do not pretend
19935 that it succeeded. More generally, do a better job of checking
19936 for I/O failures, and limit the scope of the condition-case to
19937 just the operations where file errors should be caught and ignored
19938 (Bug#20595). Also, don't bother trying to delete later backups if
19939 an earlier deletion fails, as this is a sign of trouble and it's
19940 better to stop when there's trouble.
19941
19942 copy-file now truncates output after writing
19943 * src/fileio.c (Fcopy_file): Truncate output after writing rather
19944 than before. This is more likely to work than truncation before
19945 writing, if the file system is out of space or the user is over
19946 disk quota (Bug#20595). Also, check for read errors.
19947
19948 2015-05-29 Artur Malabarba <bruce.connor.am@gmail.com>
19949
19950 * lisp/emacs-lisp/package.el (package-load-all-descriptors):
19951 Don't load descriptors from directories above the package directories.
19952
19953 2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
19954
19955 Merge from gnulib
19956 This incorporates the following (Bug#20681):
19957 2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
19958 2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
19959 * lib/set-permissions.c: Copy from gnulib.
19960
19961 2015-05-29 Michael Albinus <michael.albinus@gmx.de>
19962
19963 Improve Tramp traces
19964 * lisp/net/tramp.el (tramp-call-process-region): New defun.
19965 * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
19966
19967 2015-05-29 Glenn Morris <rgm@gnu.org>
19968
19969 * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
19970
19971 2015-05-29 Wolfgang Jenkner <wjenkner@inode.at>
19972
19973 * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
19974 The signature was changed in the cairo branch, merged on 2015-05-23.
19975 This oversight broke compiling only the non-toolkit X version.
19976
19977 2015-05-29 Samer Masterson <samer@samertm.com>
19978
19979 * doc/lispref/os.texi: Update initial-buffer-choice docs.
19980
19981 2015-05-29 Glenn Morris <rgm@gnu.org>
19982
19983 * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
19984 Mark as an expected failure.
19985
19986 2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
19987
19988 Change package test to look for curved quotes
19989 * test/automated/package-test.el (package-test-describe-package)
19990 (package-test-signed): Search for curved single quotes as well as
19991 for grave accent and apostrophe.
19992
19993 2015-05-28 Katsumi Yamaoka <yamaoka@jpl.org>
19994
19995 * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
19996 cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
19997
19998 2015-05-28 Samer Masterson <samer@samertm.com>
19999
20000 Show files when `initial-buffer-choice' is non-nil
20001 * lisp/startup.el (command-line-1): When Emacs is given a file as an
20002 argument and `initial-buffer-choice' is non-nil, display both the file
20003 and `initial-buffer-choice'. For more than one file, show
20004 `initial-buffer-choice' and *Buffer List*. Refactor display-changing
20005 commands out of the command line arg parser.
20006 (initial-buffer-choice): Clarify docstring.
20007
20008 2015-05-28 Eli Zaretskii <eliz@gnu.org>
20009
20010 Fix last commit
20011 * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
20012 (gnulib module qcopy-acl): Add back, as it is harmless. This
20013 minimizes differences wrt lib/gnulib.mk.
20014
20015 Fix the MS-Windows build as followup to gnulib update
20016 * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
20017 set-permissions.c, as they don't compile on MinGW.
20018 (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
20019
20020 2015-05-28 Paul Eggert <eggert@cs.ucla.edu>
20021
20022 Revert my change to gnus-art.el
20023 * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
20024 It wasn't that important, and it caused a Gnus build to fail. See:
20025 http://www.randomsample.de:4456/builders/emacs-devel/builds/734
20026
20027 New minor mode Electric Quote
20028 This lets you easily insert quotes ‘like this’ by typing
20029 quotes `like this', and similarly you can easily insert
20030 quotes “like this” by typing quotes ``like this'' (Bug#20545).
20031 * doc/emacs/basic.texi (Inserting Text):
20032 * doc/emacs/modes.texi (Minor Modes):
20033 * etc/NEWS: Document it.
20034 * doc/emacs/text.texi (Quotation Marks): New section.
20035 * lisp/electric.el (electric-quote-comment)
20036 (electric-quote-string, electric-quote-paragraph):
20037 New custom vars.
20038 (electric--insertable-p)
20039 (electric-quote-post-self-insert-function): New functions.
20040 (electric-quote-mode, electric-quote-local-mode): New minor modes.
20041 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
20042 Add curved single quotes to electric-pair-text-pairs.
20043 Set electric-quote-string in this buffer.
20044
20045 A few more doc string fixes (Bug#20385)
20046
20047 Accept curved quotes in doc strings
20048 * lisp/info-look.el (info-lookup-guess-custom-symbol):
20049 (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
20050
20051 Generate curved quotes in pseudo-info nodes
20052 * lisp/info.el (Info-virtual-index-find-node)
20053 (Info-virtual-index, Info-apropos-find-node, info-apropos):
20054 Quote ‘like this’, not `like this', when generating pseudo-info nodes.
20055
20056 Fix minor quoting problems in doc strings
20057 Most of these fixes involve escaping grave accents that are
20058 actually intended to be grave accents, not left quotes.
20059 (Bug#20385)
20060
20061 Support curved quotes in doc strings
20062 Emacs's traditional doc string style has been to quote symbols
20063 `like this'. This worked well on now-obsolete terminals where
20064 ` and ' were symmetric quotes, but nowadays curved quotes
20065 ‘like this’ look better. Support quoting the new way too.
20066 (Bug#20385)
20067 * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
20068 ‘like-this’ as well as `like-this'.
20069 * etc/NEWS: Mention this.
20070 * lisp/cedet/mode-local.el (overload-docstring-extension)
20071 (mode-local-print-binding, mode-local-describe-bindings-2):
20072 * lisp/cus-theme.el (describe-theme-1):
20073 * lisp/descr-text.el (describe-text-properties-1, describe-char):
20074 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
20075 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
20076 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
20077 (eieio-help-constructor):
20078 * lisp/emacs-lisp/package.el (describe-package-1):
20079 * lisp/faces.el (describe-face):
20080 * lisp/help-fns.el (help-fns--key-bindings)
20081 (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
20082 (help-fns--interactive-only, describe-function-1):
20083 (describe-variable):
20084 * lisp/help.el (describe-mode):
20085 * lisp/international/mule-cmds.el (describe-input-method)
20086 (describe-language-environment):
20087 * lisp/international/mule-diag.el (describe-character-set)
20088 (print-coding-system-briefly, list-input-methods)
20089 (list-input-methods-1):
20090 Insert curved quotes rather than grave accent and apostrophe.
20091 * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
20092 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
20093 (checkdoc-proper-noun-region-engine):
20094 * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
20095 (lisp-cl-font-lock-keywords-2):
20096 * lisp/finder.el (finder-font-lock-keywords):
20097 * lisp/gnus/gnus-art.el (gnus-button-alist):
20098 * lisp/help-fns.el (help-do-arg-highlight)
20099 (describe-function-1, describe-variable):
20100 * lisp/help-mode.el (help-xref-symbol-regexp)
20101 (help-xref-info-regexp, help-xref-url-regexp):
20102 * lisp/help.el (describe-mode):
20103 * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
20104 * lisp/wid-edit.el (widget-documentation-link-regexp):
20105 Parse symbols quoted ‘like-this’ as well as `like-this'.
20106 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
20107 Add "‘" and "’" to electric-pair-text-pairs.
20108 (elisp--form-quoted-p): Also allow "‘" as a quoting char.
20109 (elisp-completion-at-point, elisp--preceding-sexp):
20110 Also treat "‘" and "’" as quoting chars.
20111
20112 substitute-command-keys now curves quotes
20113 So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
20114 * doc/lispref/help.texi (Keys in Documentation):
20115 * etc/NEWS: Document this.
20116 * src/doc.c (Fsubstitute_command_keys): Implement it.
20117
20118 2015-05-28 Glenn Morris <rgm@gnu.org>
20119
20120 * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
20121 (rmail-summary-by-topic, rmail-summary-by-senders):
20122 No longer strip leading/trailing whitespace.
20123
20124 * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
20125 (f90-no-block-limit): Add "enum". (Bug#20680)
20126 * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
20127 New tests.
20128
20129 2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
20130
20131 * lisp/isearch.el (isearch--current-buffer): Give a default value.
20132 Un-revert changes mistakenly dropped by f9fabb2b.
20133
20134 2015-05-27 Paul Eggert <eggert@cs.ucla.edu>
20135
20136 Merge from gnulib
20137 This incorporates:
20138 2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
20139 2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
20140 2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
20141 2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
20142 2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
20143 2015-05-26 stdio: fix probe on mingw under gcc 5.1
20144 * admin/merge-gnulib (GNULIB_MODULES):
20145 Replace qacl with qcopy-acl, since we don't need the rest of qacl.
20146 * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
20147 * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
20148 * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
20149 Get latest versions from gnulib.
20150 * lib/get-permissions.c, lib/set-permissions.c: New files.
20151 * lib/gnulib.mk, m4/gnulib-comp.m4:
20152 Regenerate.
20153 * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
20154
20155 2015-05-27 Dmitry Gutov <dgutov@yandex.ru>
20156
20157 * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
20158 process here.
20159 (vc-do-command): Rather than here (bug#20608).
20160
20161 2015-05-27 Ivan Shmakov <ivan@siamics.net>
20162
20163 Avoid gratuitous delete-dups in face-at-point
20164 * lisp/faces.el (face-at-point): Do not compute the properly
20165 ordered, duplicate-free list if only a single value is
20166 requested anyway. (Bug#20519)
20167
20168 Show the exact C-x 8 RET invocation in describe-char
20169 * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
20170 invocation instead of a template. (Bug#20522)
20171
20172 2015-05-27 Artur Malabarba <bruce.connor.am@gmail.com>
20173
20174 * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
20175 (package-menu--post-refresh): Call `tabulated-list-print' with the
20176 UPDATE argument. This only affects the refresh action, the revert
20177 action still erases tags.
20178 (package-menu-get-status): Change `assq' to `assoc'.
20179 (package-menu--mark-upgrades-1): New function.
20180 (package-menu--mark-upgrades-pending): New variable.
20181 (package-menu-mark-upgrades): Use them to delay marking until
20182 after refresh is done.
20183 (package-menu--post-refresh): Call mark-upgrades-1 if
20184 mark-upgrades-pending is non-nil.
20185
20186 2015-05-27 Michael Albinus <michael.albinus@gmx.de>
20187
20188 * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
20189 Fix typo in "Improve tramp-handle-make-auto-save-file-name"
20190 (commit 3953c4be2816537be95520605d45b866dc731f4b).
20191
20192 2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
20193
20194 * lisp/isearch.el (isearch--current-buffer): New var.
20195 (isearch-update): Set cursor-sensor-inhibit here.
20196 (isearch-done): Unset cursor-sensor-inhibit in the right buffer
20197 (bug#20532).
20198
20199 Change inhibit-point-motion-hooks to t
20200 * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
20201 to t and document it as obsolete.
20202
20203 2015-05-27 Eli Zaretskii <eliz@gnu.org>
20204
20205 Support ZIP files that use Zip64 extensions
20206 * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
20207 format of central directory offsets used by Zip64 extensions.
20208 (Bug#20665)
20209
20210 2015-05-27 Michael Albinus <michael.albinus@gmx.de>
20211
20212 New test tramp-test30-make-auto-save-file-name
20213 * test/automated/tramp-tests.el
20214 (tramp-test30-make-auto-save-file-name): New test.
20215 (tramp-test31-special-characters)
20216 (tramp-test31-special-characters-with-stat)
20217 (tramp-test31-special-characters-with-perl)
20218 (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
20219 (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
20220 (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
20221 (tramp-test34-recursive-load, tramp-test35-unload): Rename.
20222
20223 Improve tramp-handle-make-auto-save-file-name
20224 * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
20225 (tramp-handle-make-auto-save-file-name): Let native
20226 `make-auto-save-file-name' use `auto-save-file-name-transforms',
20227 if `tramp-auto-save-directory' is not set.
20228
20229 2015-05-27 Glenn Morris <rgm@gnu.org>
20230
20231 No longer set dired-directory in eshell. (Bug#16477)
20232 * lisp/eshell/esh-mode.el (eshell-mode):
20233 * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
20234
20235 * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
20236
20237 Make c-submit-bug-report file reports at debbugs.gnu.org. (Bug#15784)
20238 * lisp/progmodes/cc-mode.el (c-mode-help-address):
20239 Change to submit@debbugs.
20240 (c-mode-bug-package): New constant.
20241 (mail-position-on-field): Declare.
20242 (c-submit-bug-report): Insert X-Debbugs-Package header.
20243 * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
20244 Mention debbugs.gnu.org.
20245
20246 2015-05-26 Glenn Morris <rgm@gnu.org>
20247
20248 * lisp/mail/rmailsum.el: Commas no longer separate regexps. (Bug#19026)
20249 (rmail-summary-by-recipients, rmail-summary-by-topic)
20250 (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
20251 * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
20252
20253 2015-05-26 Paul Eggert <eggert@cs.ucla.edu>
20254
20255 Handle curved quotes in info files
20256 * lisp/calc/calc-help.el (calc-describe-thing):
20257 * lisp/info.el (Info-find-index-name)
20258 (Info-try-follow-nearest-node, Info-fontify-node):
20259 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
20260 In info files, process quotes ‘like this’ the same way we process
20261 quotes `like this'. This catches a few places we missed earlier.
20262
20263 2015-05-26 Dmitry Gutov <dgutov@yandex.ru>
20264
20265 xref-prompt-for-identifier: Use a list value
20266 * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
20267 value, to be interpreted as a list of commands.
20268 (xref--prompt-p): New function.
20269 (xref--read-identifier): Use it.
20270
20271 2015-05-26 Eli Zaretskii <eliz@gnu.org>
20272
20273 Teach MS-Windows font back-end return per-glyph ascent/descent
20274 * src/w32font.h (struct w32_metric_cache): Add ascent and descent
20275 values.
20276 * src/w32font.c (w32font_text_extents): Compute, cache, and
20277 accumulate per-glyph ascent and descent values, instead of copying
20278 global values from the font. If the values are not available from
20279 the font data, i.e., non-TTF fonts, fall back on font-global values.
20280 (compute_metrics): Compute and return per-glyph ascent and descent
20281 values, if returned by GetGlyphOutlineW, falling back on
20282 font-global values. (Bug#20628)
20283 * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
20284 height of rectangle to be drawn, to be compatible with
20285 XDrawRectangle. Fixes glyphless-char display as hex codes in a
20286 box, when per-glyph ascent/descent values are used.
20287
20288 2015-05-26 Artur Malabarba <bruce.connor.am@gmail.com>
20289
20290 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
20291 Don't sort if sorter is nil.
20292
20293 2015-05-26 Michael Albinus <michael.albinus@gmx.de>
20294
20295 Fix Bug#20621
20296 * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it. There
20297 are major modes which set `auto-save-mode' on their own rules;
20298 Tramp shall not overwrite such settings.
20299
20300 2015-05-26 Glenn Morris <rgm@gnu.org>
20301
20302 * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
20303 (desktop-load-file): Guess that "foobar" defines "foobar-mode".
20304 (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
20305 Doc updates.
20306 (vc-dir-mode): Remove unnecessary autoload.
20307
20308 2015-05-25 Philipp Stephani <phst@google.com>
20309
20310 * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
20311 (xterm--extra-capabilities-type): Add `getSelection'.
20312 (xterm--query): Add `no-async' argument.
20313 (xterm--init-activate-get-selection): New function.
20314 (terminal-init-xterm): Use it.
20315 (xterm--init-modify-other-keys): Rename from
20316 terminal-init-xterm-modify-other-keys.
20317 (xterm--init-bracketed-paste-mode): Rename from
20318 terminal-init-xterm-bracketed-paste-mode.
20319 (xterm--init-activate-set-selection): Rename from
20320 terminal-init-xterm-activate-set-selection.
20321 (xterm--selection-char): New function.
20322 (gui-backend-set-selection): Use it. Use the &context to only apply
20323 this method in terminals where we enabled the feature.
20324 (gui-backend-get-selection): New method.
20325
20326 2015-05-25 Daniel Colascione <dancol@dancol.org>
20327
20328 * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
20329 keyword constants to C++.
20330
20331 2015-05-25 Paul Eggert <eggert@cs.ucla.edu>
20332
20333 Make TAGS files more portable to MS-Windows
20334 * etc/NEWS: Document this.
20335 * lib-src/etags.c (readline_internal) [DOS_NT]:
20336 Don't treat CRs differently from GNUish hosts.
20337 * lisp/progmodes/etags.el (etags-goto-tag-location):
20338 Adjust STARTPOS to account for the skipped CRs in dos-style files.
20339
20340 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
20341
20342 Improve fix of bug#20634 in tramp-sh.el
20343
20344 2015-05-25 Eli Zaretskii <eliz@gnu.org>
20345
20346 Fix a typo in last commit
20347 * lib-src/etags.c (C_entries): Fix a typo.
20348 * test/etags/ETAGS.good_1:
20349 * test/etags/ETAGS.good_2:
20350 * test/etags/ETAGS.good_3:
20351 * test/etags/ETAGS.good_4:
20352 * test/etags/ETAGS.good_5:
20353 * test/etags/CTAGS.good: Update due to the change in etags.c.
20354
20355 Fix tagging of class members in C-like OO languages
20356 * lib-src/etags.c (longopts): Add new option --class-qualify and
20357 its shorthand -Q.
20358 (print_help): Add help text for --class-qualify.
20359 (main): Add handling of -Q.
20360 (consider_token, C_entries) <omethodparm>: Append argument types
20361 to Objective C methods only if --class-qualify was specified.
20362 Qualify C++, Objective C, and Java class members with their class
20363 names only if --class-qualify was specified.
20364 (C_entries): If --class-qualify was not specified, remove the
20365 namespace and class qualifiers from tag names of C++ methods.
20366 This allows to use etags.el as xref back-end without the
20367 tag-symbol-match-p method, which greatly increases the number of
20368 potentially false positives. (Bug#20629)
20369 * doc/man/etags.1: Update to document the new --class-qualify
20370 option.
20371 * test/etags/ETAGS.good_1:
20372 * test/etags/ETAGS.good_2:
20373 * test/etags/ETAGS.good_3:
20374 * test/etags/ETAGS.good_4:
20375 * test/etags/ETAGS.good_5:
20376 * test/etags/CTAGS.good: Update due to changes in etags.c.
20377
20378 2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
20379
20380 (cl-generic-define-method): Side effects are evil (bug#20644)
20381 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
20382 cons-cells that might be used as keys in an `equal' hash-table.
20383
20384 2015-05-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
20385
20386 Make erc timestamps visible again
20387 * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
20388 Make timestamps visible again (if requested).
20389
20390 2015-05-25 Eli Zaretskii <eliz@gnu.org>
20391
20392 Fix last change in etags.c that broke tagging compresed files
20393 * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
20394 quoting of decompression shell command for MS-Windows/MS-DOS.
20395
20396 2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
20397
20398 * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
20399 (Bug#20639)
20400
20401 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
20402
20403 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
20404 Fix typo in "Inhibit `epa-file-handler' in Tramp"
20405 (commit 89035e247591c8d688fce922b7079881aa110f33).
20406
20407 2015-05-25 Orivej Desh <orivej@gmx.fr> (tiny change)
20408
20409 Fix IPv6 addresses in Tramp
20410 * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
20411 Add square brackets around host name.
20412
20413 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
20414
20415 Inhibit `epa-file-handler' in Tramp (Bug#20634)
20416 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
20417 (tramp-sh-handle-insert-file-contents-literally): Inhibit also
20418 `epa-file-handler'.
20419
20420 2015-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
20421
20422 * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
20423 (pcase-let): Document the behavior in case the pattern doesn't match.
20424
20425 2015-05-24 Artur Malabarba <bruce.connor.am@gmail.com>
20426
20427 * lisp/emacs-lisp/tabulated-list.el: New optional print method.
20428 (tabulated-list-print): New optional argument, UPDATE. If
20429 non-nil, the list is printed by only adding and deleting the
20430 changed entries, instead of erasing the whole buffer. This method
20431 is much faster when few or no entries have changed.
20432 * doc/lispref/modes.texi (Tabulated List Mode): Document it.
20433 * etc/NEWS: Document it.
20434
20435 * lisp/emacs-lisp/tabulated-list.el: Improve printing.
20436 (tabulated-list--get-sorter): New function.
20437 (tabulated-list-print): Restore window-line when remember-pos is
20438 passed and optimize away the `nreverse'.
20439
20440 2015-05-24 Paul Eggert <eggert@cs.ucla.edu>
20441
20442 Simpilify etags TEX mode scanning
20443 * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
20444 Remove static vars.
20445 (TeX_commands): Deduce escapes here instead.
20446 (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
20447 This removes the need for a reset_input call.
20448
20449 Improve etags I/O error reporting
20450 * lib-src/etags.c:
20451 Don't include sys/types.h and sys/stat.h; no longer needed.
20452 (infilename): New static var.
20453 (process_file_name): Don't call 'stat'. Instead, just open the
20454 file for reading and report any errors. Don't bother making
20455 a copy of the file argument; it's not needed. Be more careful to
20456 use the failing errno when reporting an error.
20457 Quote the real name better (though no perfectly)
20458 when passing it to the shell.
20459 (reset_input): New function, which reports I/O errors.
20460 All uses of 'rewind' changed to use this function.
20461 (perhaps_more_input): New function, which also checks for
20462 I/O errors. All uses of 'feof' changed to use this function.
20463 (analyze_regex): Report an error if fclose fails.
20464 (readline_internal): Report an error if getc fails.
20465 (etags_mktmp): Return an error if close fails.
20466
20467 etags.c: avoid side effects in 'if'
20468 * lib-src/etags.c (process_file_name, Perl_functions)
20469 (TEX_decode_env): Hoist side effects into previous statement.
20470
20471 .gitignore tweaks
20472 * .gitignore: Ignore all *.stamp files. Sort.
20473 Ignore [0-9]*.txt (commonly used name for git patches)
20474 and /vc-dwim-log-* (vc-dwim temporary).
20475
20476 2015-05-24 Eli Zaretskii <eliz@gnu.org>
20477
20478 Fix last change in etags.c, which failed the test suite
20479 * lib-src/etags.c (intoken): Add '$' to the set, as it was there
20480 before the last change.
20481
20482 2015-05-23 Glenn Morris <rgm@gnu.org>
20483
20484 Remove charset map files from repository, generate in first bootstrap
20485 * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
20486 (all): Create the stamp file.
20487 (extraclean): Delete the stamp file.
20488 * src/Makefile.in (lispintdir, charsets): New variables.
20489 (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
20490 New rules.
20491 (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
20492 * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
20493 * etc/charsets/*.map: Remove from repository.
20494
20495 2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
20496
20497 Cleanup etags.c to use locale-independent code
20498 Although this doesn't alter behavior (as etags doesn't use
20499 setlocale), the new version is more clearly locale-independent and
20500 the executable is a bit smaller on my platform.
20501 * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
20502 Include <c-ctype.h> instead of <ctype.h>.
20503 (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
20504 (begtk, midtk):
20505 Remove; no longer needed.
20506 (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
20507 All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
20508 c_islower, c_tolower, respectively.
20509 (notinname, begtoken, intoken, endtoken): Rewrite as functions
20510 instead of macros, and initialize the tables at compile-time
20511 rather than at run-time.
20512
20513 Put default action first in src/Makefile
20514 * src/Makefile.in (all): Put this rule before lisp.mk.
20515 That way, plain 'make' works in the src directory again.
20516
20517 2015-05-23 Glenn Morris <rgm@gnu.org>
20518
20519 * Makefile.in: Fix extraclean rule.
20520 (extraclean_dirs): New.
20521 (extraclean): Use it.
20522
20523 2015-05-23 Eli Zaretskii <eliz@gnu.org>
20524
20525 Avoid compiler warning in image.c on MS-Windows
20526 * src/w32term.h (x_query_color): Add prototype, to avoid compiler
20527 warning in image.c.
20528
20529 2015-05-23 Glenn Morris <rgm@gnu.org>
20530
20531 Fix --without-toolkit-scroll-bars builds.
20532 * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
20533 Add new argument to x_clear_area1.
20534 (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20535 Update x_clear_area arguments.
20536
20537 * admin/charsets/glibc/: New directory, imported from glibc 2.21.
20538 * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
20539 Change to included version.
20540 (LOCAL, local, totalclean): Remove.
20541 (extraclean): Delete all generated files.
20542
20543 2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
20544
20545 * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
20546 CVS/Entries exists.
20547
20548 * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
20549
20550 * lisp/progmodes/etags.el (tags-completion-at-point-function):
20551 Don't trust the find-tag function.
20552
20553 2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
20554
20555 Pacify --enable-gcc-warnings
20556 * src/frame.h (x_query_color): Remove redundant extern decl.
20557 * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
20558 (ftcrfont_match, ftcrfont_open, ftcrfont_close)
20559 (ftcrfont_text_extents, ftcrfont_draw):
20560 * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
20561 (XTframe_up_to_date, x_clear_area1, x_clear_frame)
20562 (x_ins_del_lines, frame_highlight, frame_unhighlight)
20563 (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
20564 (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
20565 (x_update_window_begin, x_connection_closed)
20566 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
20567 (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
20568 (*x_gc_get_ext_data, x_extension_initialize)
20569 (x_cr_accumulate_data):
20570 Remove redundant static decl. Many of these GCC doesn't complain
20571 about, but we might as well clean out the duplication while we're
20572 in the neighborhood.
20573 * src/xterm.c (x_fill_trapezoid_for_relief):
20574 Remove decl of nonexistent function.
20575
20576 2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
20577
20578 Replace gui-method macros with cl-generic with &context
20579 * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
20580 (gui-method-declare, gui-call): Remove.
20581 (frame-creation-function): Use cl-defgeneric.
20582 (make-frame): Adjust callers.
20583 * lisp/menu-bar.el (menu-bar-edit-menu):
20584 Use gui-backend-selection-exists-p.
20585 * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
20586 (gui-backend-get-selection): New cl-generic to replace
20587 gui-get-selection method.
20588 (gui-backend-set-selection): New cl-generic to replace
20589 gui-set-selection method.
20590 (gui-selection-owner-p): New cl-generic to replace
20591 gui-selection-owner-p method.
20592 (gui-backend-selection-exists-p): New cl-generic to replace
20593 gui-selection-exists-p method. Adjust all callers.
20594 * lisp/server.el (server-create-window-system-frame): Don't ignore
20595 window-system spec even when unsupported.
20596 * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
20597 * lisp/startup.el (handle-args-function, window-system-initialization):
20598 Use cl-defgeneric.
20599 (command-line): Adjust calls accordingly.
20600 * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
20601 a window-system-initialization method.
20602 (handle-args-function, frame-creation-function): Use cl-defmethod.
20603 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
20604 (gui-get-selection): Use cl-defmethod on the new functions instead.
20605 * lisp/term/pc-win.el (w16-get-selection-value): Turn into
20606 a gui-backend-get-selection method.
20607 (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
20608 Use cl-defmethod on the new functions instead.
20609 (msdos-window-system-initialization): Turn into
20610 a window-system-initialization method.
20611 (frame-creation-function, handle-args-function): Use cl-defmethod.
20612 * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
20613 a window-system-initialization method.
20614 (handle-args-function, frame-creation-function): Use cl-defmethod.
20615 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
20616 (gui-get-selection): Use cl-defmethod on the new functions instead.
20617 * lisp/term/x-win.el (x-window-system-initialization): Turn into
20618 a window-system-initialization method.
20619 (handle-args-function, frame-creation-function): Use cl-defmethod.
20620 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
20621 (gui-get-selection): Use cl-defmethod on the new functions instead.
20622 * lisp/term/xterm.el (xterm--set-selection): Turn into
20623 a gui-backend-set-selection method.
20624 * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
20625 (Fns_selection_owner_p): Remove unused arg `terminal'.
20626 (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
20627
20628 2015-05-23 Eli Zaretskii <eliz@gnu.org>
20629
20630 Revert "Fix etags Bug#20629 that broke C++ support"
20631 This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
20632
20633 2015-05-23 Jan D <jan.h.d@swipnet.se>
20634
20635 Fix etags Bug#20629 that broke C++ support
20636 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
20637 Revert commit from Sun May 10 (Bug#20629).
20638
20639 Merge branch 'cairo'.
20640 Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
20641 Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
20642
20643 Merge branch 'master' into cairo
20644
20645 Fixes to compile cairo branch without cairo
20646 * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
20647 first argument.
20648 * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
20649 USE_CAIRO.
20650
20651 2015-05-23 Artur Malabarba <bruce.connor.am@gmail.com>
20652
20653 * lisp/emacs-lisp/package.el: Always update selected-packages.
20654 (package--update-selected-packages): New function.
20655 (package-menu-execute): Use it before starting the transaction,
20656 this way the list of selected packages is updated even when the
20657 transaction fails.
20658 (package-menu--perform-transaction): Don't edit selected-packages.
20659
20660 2015-05-23 Eli Zaretskii <eliz@gnu.org>
20661
20662 Fix etags reading of compressed files
20663 * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
20664 Include fcntl.h, for O_CLOEXEC.
20665 (process_file_name): Don't use 'popen', whose streams cannot be
20666 rewound. Instead, uncompress the file to a temporary file,
20667 created by 'etags_mktmp', and read from that as usual.
20668 (etags_mktmp): New function.
20669 * test/etags/ETAGS.good_1:
20670 * test/etags/ETAGS.good_2:
20671 * test/etags/ETAGS.good_3:
20672 * test/etags/ETAGS.good_4:
20673 * test/etags/ETAGS.good_5: Update to be consistent with latest
20674 changes in etags.c regarding reading compressed files.
20675
20676 Improve documentation of 'set-fontset-font'
20677 * doc/lispref/display.texi (Fontsets): Document the value of nil
20678 for the 3rd argument of 'set-fontset-font'.
20679
20680 Fix documentation of forward-line
20681 * src/cmds.c (Fforward_line): Clarify the return value if the line
20682 at end of accessible portion of the buffer has no newline.
20683 * doc/lispref/positions.texi (Text Lines): Document what happens
20684 if the line at end of accessible portion of buffer has no newline.
20685 (Bug#20587)
20686
20687 2015-05-22 Glenn Morris <rgm@gnu.org>
20688
20689 * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
20690
20691 * admin/charsets/mapconv (LC_ALL): Set to C.
20692
20693 * Makefile.in: Add admin/charsets into top-level clean rules.
20694 (clean): Add admin/charsets.
20695 (maybeclean_dirs): New variable.
20696 (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
20697
20698 * admin/charsets/Makefile.in (LOCAL, local): Fix members.
20699
20700 2015-05-22 Artur Malabarba <bruce.connor.am@gmail.com>
20701
20702 * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
20703
20704 2015-05-22 Glenn Morris <rgm@gnu.org>
20705
20706 Generate admin/charsets Makefile via configure, and make more portable
20707 * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
20708 (admin/charsets/Makefile): Generate it.
20709 * admin/charsets/Makefile.in: Rename from Makefile.
20710 (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
20711 New variables, set by configure.
20712 (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
20713 (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
20714 (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
20715 (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
20716 (TRANS_TABLE, CHARSETS): Add directory prefix to value.
20717 (all): Declare PHONY.
20718 (local): New PHONY target.
20719 (map_template): New template. Use to define short PHONY aliases.
20720 (*.map): Add directory prefixes to targets and prerequisites.
20721 Respect make verbosity.
20722 (JISC6226.map): Replace non-portable sed append without newline.
20723 (install): Remove rule.
20724 (clean): Only delete temporary sedscript.
20725 (bootstrap-clean, distclean, maintainer-clean, extraclean)
20726 (totalclean): New PHONY rules.
20727 * admin/charsets/mapconv (BASE): Replace basename with expr.
20728 (FILE): Add "mapfiles" subdirectory.
20729 (AWK): New variable. Use throughout in place of "awk".
20730 (main): Use "gunzip -c" in place of "zcat".
20731 Don't leave whitespace before "p", for older sed.
20732 * admin/charsets/mapfiles/PTCP154: Add final newline,
20733 to make older sed versions happy.
20734
20735 2015-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
20736
20737 * lisp/autorevert.el: Use lexical-binding. Fix hook usage.
20738 (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
20739 (auto-revert-notify-watch-descriptor): Use defvar-local.
20740 (find-file-hook, auto-revert-tail-mode)
20741 (auto-revert-notify-add-watch): Use setq-local.
20742 (auto-revert-notify-add-watch): Don't call make-local-variable on
20743 kill-buffer-hook (bug#20601).
20744
20745 2015-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
20746
20747 Change defgeneric so it doesn't completely redefine the function
20748 * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
20749 previously defined methods.
20750 (cl-generic-define-method): Let-bind purify-flag instead of
20751 using `fset'.
20752 (cl--generic-prefill-dispatchers): Only define during compilation.
20753 (cl-method-qualifiers): Remove redundant alias.
20754 (help-fns-short-filename): Silence byte-compiler.
20755 * test/automated/cl-generic-tests.el:
20756 Adjust to new defgeneric semantics.
20757
20758 2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
20759
20760 * lisp/emacs-lisp/package.el (package-menu-execute):
20761 Remove reference to remove-dups.
20762
20763 2015-05-21 kwhite <kwhite@gnu.org>
20764
20765 * lisp/erc/erc.el: Hide network/channel messages.
20766 (erc-network-hide-list, etc-channel-hide-list): New lists to define
20767 message types per network/channel.
20768 (erc-add-targets): New function to parse list of targets.
20769 (erc-hide-current-message-p): Modified to check for new targets.
20770
20771 2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
20772
20773 Don't quote nil and t in doc strings
20774 This is as per "Tips for Documentation Strings" in the elisp manual.
20775 For consistency, do the same in diagnostics and comments.
20776
20777 2015-05-21 Eli Zaretskii <eliz@gnu.org>
20778
20779 Fix a minor problem with mouse-face on mode line
20780 * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
20781 mouse face also if the mouse pointer hovers above mode-line glyphs
20782 that don't come from any Lisp string. (Bug#20620)
20783
20784 2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
20785
20786 * lisp/emacs-lisp/package.el: Fix selected-package logic.
20787 (package-menu-execute): Mark as selected all non-upgrade packages
20788 being installed.
20789 (package-menu--perform-transaction): Don't mark anything.
20790
20791 * lisp/emacs-lisp/package.el: Mode-line progress report.
20792 (package-menu--transaction-status): New variable.
20793 (package-menu-mode, package-menu--perform-transaction): Use it.
20794
20795 * lisp/emacs-lisp/package.el: Better transaction messages.
20796 (package-menu--partition-transaction): New function.
20797 (package-menu--prompt-transaction-p, package-menu-execute):
20798 Use it.
20799 (package-menu--perform-transaction): Don't do any messaging.
20800
20801 * lisp/emacs-lisp/package.el: Revert async package transactions.
20802 (package-menu-async): Update doc.
20803 (package-install-from-archive, package-download-transaction)
20804 (package-install, package-menu--perform-transaction)
20805 (package-menu-execute): Remove asynchronous functionality.
20806
20807 2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
20808
20809 Revert doc string changes to f90.el
20810 Problem reported by Glenn Morris in:
20811 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
20812 * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
20813 Revert recent changes to doc strings, as it's intended that they
20814 use grave accent, not quote.
20815
20816 2015-05-20 Bozhidar Batsov <bozhidar@batsov.com>
20817
20818 * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
20819 Improve parameter name.
20820
20821 * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
20822
20823 2015-05-20 Paul Eggert <eggert@cs.ucla.edu>
20824
20825 Don't require help-fns when not needed
20826 * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
20827 * lisp/emacs-lisp/elint.el:
20828 Don't require help-fns at the top level
20829 * lisp/emacs-lisp/advice.el (ad-arglist):
20830 * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
20831 Don't require help-fns. (Bug#17001)
20832
20833 2015-05-20 Eli Zaretskii <eliz@gnu.org>
20834
20835 Fix slash collapsing in etags on MS-Windows
20836 * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
20837 MS-Windows code from the Posix code, and support collapsing both
20838 forward- and back-slashes on MS-Windows. Fixes a regression found
20839 by the test suite.
20840
20841 Improve documentation of glyphless-char-display
20842 * doc/lispref/display.texi (Glyphless Chars): Improve
20843 documentation of glyphless character display.
20844
20845 Fix "acronym" display of glyphless characters on w32
20846 * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
20847 ignore "acronym" substitutes of 1 character for glyphless characters.
20848
20849 2015-05-20 Oleh Krehel <ohwoeowho@gmail.com>
20850
20851 Add an automated test for let-when-compile
20852 * test/automated/subr-tests.el (let-when-compile): New test.
20853
20854 Add let-when-compile macro instead of using pcase-let
20855 * lisp/subr.el (let-when-compile): New let-like macro that makes its
20856 bindings known to macros like `eval-when-compile' in the body.
20857 * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
20858 a `let-when-compile'. Also comment out the unused lexical var
20859 `el-kws-re'.
20860 The change greatly improves readability, while providing almost the
20861 same (even shorter) byte code: instead of pre-evaluating 10 variables,
20862 tossing them into a list, and destructuring that list a full screen
20863 page later, the variables are simply bound as they are evaluated,
20864 wrapped individually in `eval-when-compile'.
20865
20866 2015-05-20 Artur Malabarba <bruce.connor.am@gmail.com>
20867
20868 * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
20869 (package-delete-button-action): New function.
20870 (describe-package-1): Add Delete button.
20871
20872 * lisp/emacs-lisp/package.el: Better dependency description.
20873 (package--used-elsewhere-p): New optional arg, ALL, and return
20874 package-desc objects instead of names.
20875 (package-delete): Update accordingly.
20876 (describe-package-1): Describe which packages require the package.
20877
20878 2015-05-20 Martin Rudalics <rudalics@gmx.at>
20879
20880 Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
20881 * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
20882 Fix doc-string.
20883
20884 Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
20885 * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
20886 (switch-to-buffer): If the selected window is strongly dedicated
20887 to its buffer, signal error before prompting for buffer name.
20888 Handle `switch-to-buffer-in-dedicated-window'.
20889 * doc/lispref/windows.texi (Switching Buffers):
20890 Document `switch-to-buffer-in-dedicated-window'.
20891
20892 2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
20893
20894 Prefer "this" to “this” in doc strings
20895 This mostly just straightens quotes introduced in my previous patch.
20896 Suggested by Dmitry Gutov in:
20897 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
20898 * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
20899 * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
20900 * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
20901 * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
20902 * lisp/vc/log-edit.el, lisp/xt-mouse.el:
20903 Prefer straight double quotes to curved double quotes in doc strings.
20904
20905 Fix minor quoting problems in doc strings
20906 These were glitches regardless of how or whether we tackle the
20907 problem of grave accent in doc strings.
20908 * lisp/calc/calc-aent.el (math-restore-placeholders):
20909 * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
20910 * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
20911 * lisp/leim/quail/hebrew.el ("hebrew-new")
20912 ("hebrew-biblical-sil"):
20913 * lisp/leim/quail/thai.el ("thai-kesmanee"):
20914 * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
20915 Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
20916 * lisp/calendar/calendar.el (calendar-month-abbrev-array):
20917 * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
20918 * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
20919 * lisp/cedet/semantic/tag.el (semantic-tag-copy)
20920 (semantic-tag-components):
20921 * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
20922 * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
20923 * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
20924 * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
20925 * lisp/emacs-lisp/generator.el (iter-next):
20926 * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
20927 (gnus-article-mode-syntax-table):
20928 * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
20929 * lisp/net/soap-client.el (soap-wsdl-get):
20930 * lisp/net/telnet.el (telnet-mode):
20931 * lisp/org/org-compat.el (org-number-sequence):
20932 * lisp/org/org.el (org-remove-highlights-with-change)
20933 (org-structure-template-alist):
20934 * lisp/org/ox-html.el (org-html-link-org-files-as-html):
20935 * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
20936 (handwrite-12pt, handwrite-13pt):
20937 * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
20938 * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
20939 * lisp/progmodes/verilog-mode.el (verilog-tool)
20940 (verilog-string-replace-matches, verilog-preprocess)
20941 (verilog-auto-insert-lisp, verilog-auto-insert-last):
20942 * lisp/textmodes/makeinfo.el (makeinfo-options):
20943 * src/font.c (Ffont_spec):
20944 Fix minor quoting problems in doc strings, e.g., missing quote,
20945 ``x'' where `x' was meant, etc.
20946 * lisp/erc/erc-backend.el (erc-process-sentinel-2):
20947 Fix minor quoting problem in other string.
20948 * lisp/leim/quail/ethiopic.el ("ethiopic"):
20949 * lisp/term/tvi970.el (tvi970-set-keypad-mode):
20950 Omit unnecessary quotes.
20951 * lisp/faces.el (set-face-attribute, set-face-underline)
20952 (set-face-inverse-video, x-create-frame-with-faces):
20953 * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
20954 * lisp/mail/supercite.el (sc-attribs-%@-addresses)
20955 (sc-attribs-!-addresses, sc-attribs-<>-addresses):
20956 * lisp/net/tramp.el (tramp-methods):
20957 * lisp/recentf.el (recentf-show-file-shortcuts-flag):
20958 * lisp/textmodes/artist.el (artist-ellipse-right-char)
20959 (artist-ellipse-left-char, artist-vaporize-fuzziness)
20960 (artist-spray-chars, artist-mode, artist-replace-string)
20961 (artist-put-pixel, artist-text-see-thru):
20962 * lisp/vc/ediff-util.el (ediff-submit-report):
20963 * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
20964 Use double-quotes rather than TeX markup in doc strings.
20965 * lisp/skeleton.el (skeleton-pair-insert-maybe):
20966 Reword to avoid the need for grave accent and apostrophe.
20967 * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
20968 Don't use grave and acute accents to quote.
20969
20970 2015-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20971
20972 * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
20973 Silence compiler.
20974
20975 2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
20976
20977 Try to port new etags tests to MS-Windows
20978 * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
20979 * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
20980 * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
20981 Adjust to test-case changes below.
20982 * test/etags/Makefile (CSRC): Remove dostorture.c.
20983 Whatever it was trying to test, wasn't working portably.
20984 (LC_ALL): Remove. Apparently there wasn't an encoding problem,
20985 just a line-ending problem.
20986 * test/etags/c-src/dostorture.c: Remove.
20987 * test/etags/cp-src/c.C: Remove stray CR.
20988 * test/etags/html-src/algrthms.html: Remove trailing CRs.
20989 State UTF-8 as the encoding. The file is ASCII so it doesn't matter,
20990 but if someone edits it later it should stay UTF-8-compatible.
20991
20992 2015-05-19 Eli Zaretskii <eliz@gnu.org>
20993
20994 Fix display of overlapping window-specific overlays
20995 * src/keyboard.c (adjust_point_for_property): When adjusting point
20996 due to display strings, ignore overlays that are specific to
20997 windows other than the currently selected one.
20998 * src/xdisp.c (handle_single_display_spec): If the display
20999 property comes from an overlay, arrange for buffer iteration to
21000 resume only after the end of that overlay. (Bug#20607)
21001
21002 2015-05-19 Dmitry Gutov <dgutov@yandex.ru>
21003
21004 New command icomplete-force-complete-and-exit
21005 * lisp/icomplete.el (icomplete-force-complete-and-exit):
21006 New command
21007 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
21008 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
21009 (icomplete-minibuffer-map): Bind C-j to it.
21010 (icomplete-forward-completions, icomplete-backward-completions):
21011 Mention the new command in the docstring.
21012 * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
21013 Revert the previous fix for bug#17545.
21014
21015 2015-05-19 Martin Rudalics <rudalics@gmx.at>
21016
21017 Fix last commit
21018
21019 In Elisp manual explain how to override window manager positioning
21020 (Bug#20552)
21021 * doc/lispref/frames.texi (Position Parameters): Give example of
21022 how to override a window manager positioning decision.
21023
21024 Clarify concept of "surrogate minibuffer frames" (Bug#20538)
21025 * src/frame.c (Fdelete_frame): In doc-string mention that frame
21026 can't be deleted if it has a surrogate minibuffer.
21027 * doc/lispref/frames.texi (Minibuffers and Frames)
21028 (Deleting Frames): Explain "surrogate minibuffer frames".
21029
21030 * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
21031
21032 2015-05-18 Glenn Morris <rgm@gnu.org>
21033
21034 Add option to ignore commit lines matching a pattern in ChangeLog
21035 * build-aux/gitlog-to-changelog: Add --ignore-line option.
21036 * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
21037
21038 2015-05-18 Paul Eggert <eggert@cs.ucla.edu>
21039
21040 Don't skip new etags tests on non-UTF-8 hosts
21041 Problem reported by Eli Zaretskii for MS-Windows.
21042 * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
21043 (LC_ALL): Set to C if the current locale isn't UTF-8.
21044 (.PHONY): Remove ediff_1 thru ediff_5.
21045 (check): Always run.
21046
21047 2015-05-18 Glenn Morris <rgm@gnu.org>
21048
21049 * lisp/calculator.el (calculator-funcall):
21050 * lisp/textmodes/artist.el (artist-spray-random-points):
21051 Use standard degree/radian conversion utilities.
21052
21053 Further lisp-complete-symbol related cleanup.
21054 * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
21055 Unadvertise non-functional argument. Replace obsolete alias.
21056
21057 2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
21058
21059 Add a test case for Maven warning ouput
21060 * test/automated/compile-tests.el
21061 (compile-tests--test-regexps-data): Add a case for Maven warning
21062 ouput.
21063 (compile--test-error-line): Check the compilation message type, if
21064 it's specified in the test data.
21065
21066 2015-05-18 Paul Pogonyshev <pogonyshev@gmail.com>
21067
21068 Update Maven compilation-mode entry to distinguish warnings
21069 * lisp/progmodes/compile.el
21070 (compilation-error-regexp-alist-alist): Update Maven entry to
21071 distinguish warnings (bug#20556).
21072
21073 2015-05-18 Przemysław Wojnowski <esperanto@cumego.com>
21074
21075 * test/automated/sgml-mode-tests.el: New file.
21076
21077 2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
21078
21079 Improve handling of the first Git revision
21080 * lisp/vc/log-view.el (log-view-toggle-entry-display): When
21081 there's no next entry, delete until the end of the buffer.
21082 (log-view-end-of-defun-1): Stop at eob.
21083 * lisp/vc/vc-annotate.el
21084 (vc-annotate-show-diff-revision-at-line-internal): Don't give up
21085 when previous-revision is nil.
21086 * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
21087 with `--' to avoid ambiguity.
21088 (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
21089 returned revision string.
21090 (vc-git-annotate-time): Expect `^' before the first revision.
21091 * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
21092 REV1 is nil, and REV2 is not.
21093 * lisp/vc/vc.el: Update the description of the `diff' function.
21094
21095 2015-05-18 Oleh Krehel <ohwoeowho@gmail.com>
21096
21097 Allow checkdoc to be called in batch
21098 * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
21099 is non-nil, echo the error with `warn'.
21100 How it can be used in -batch:
21101 (with-current-buffer (find-file "checkdoc.el")
21102 (checkdoc-current-buffer t))
21103
21104 2015-05-18 Glenn Morris <rgm@gnu.org>
21105
21106 * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
21107
21108 2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
21109
21110 * admin/notes/unicode: New section "binary files".
21111
21112 Change new etags test to use UTF-8 encoding
21113 * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
21114 * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
21115 * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
21116 * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
21117 * test/etags/html-src/softwarelibero.html:
21118 Switch to UTF-8 encoding.
21119 * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
21120 Remove Makefile, as it's too incestuous to have the test input
21121 include the build procedure.
21122 (UTF8_LOCALE, UTF_ENCODING): New macros.
21123 (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
21124 (check): Skip if not UTF-8.
21125 (.PHONY): New rule.
21126 (FRC): Remove, as superseded by .PHONY. All uses removed.
21127 (regexfile): Prefer printf to echo when outputting oddball chars.
21128 (.PRECIOUS): Remove, as these files are not built.
21129
21130 Rename 'foo-gzipped' to 'foo.gz'
21131 * test/automated/data/decompress/foo.gz:
21132 Rename from test/automated/data/decompress/foo-gzipped,
21133 to make it easier for other tools to tell that it's compressed.
21134 * test/automated/zlib-tests.el (zlib--decompress):
21135 Adjust to renamed file.
21136
21137 2015-05-17 Dmitry Gutov <dgutov@yandex.ru>
21138
21139 Set up default-directory
21140 * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
21141 binding for `v'.
21142 (vc-annotate-show-changeset-diff-revision-at-line): Set up an
21143 appropriate value for default-directory.
21144
21145 2015-05-17 Samer Masterson <samer@samertm.com>
21146
21147 * lisp/eshell/em-term.el (eshell-term-sentinel):
21148 No-op by default, only kills term buffer if
21149 `eshell-destroy-buffer-when-process-dies' is non-nil. (Bug#18108)
21150 (eshell-destroy-buffer-when-process-dies): New custom to preserve
21151 previous behavior.
21152
21153 eshell: Introduce new buffer syntax
21154 The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
21155 buffer-name>'. Remove `eshell-buffer-shorthand', as it is no longer
21156 needed (Bug#19319).
21157 * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
21158 (eshell-get-target): Remove shorthand-specific code.
21159 * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
21160 '#<buffer-name>'.
21161
21162 2015-05-17 Jan D <jan.h.d@swipnet.se>
21163
21164 Merge branch 'master' into cairo
21165
21166 2015-04-26 Jan D <jan.h.d@swipnet.se>
21167
21168 Merge branch 'master' into cairo
21169
21170 Add PBM support for cairo
21171 * src/image.c (xcolor_to_argb32): New function.
21172 (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
21173 (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
21174 XImagePtr if ! USE_CAIRO.
21175 (pbm_load): Add cairo support.
21176
21177 2015-04-12 Jan D <jan.h.d@swipnet.se>
21178
21179 * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
21180 (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
21181 (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
21182 x_free_cr_resources.
21183
21184 Handle specified bg in images. Use generic libpng code for PNGs.
21185 * src/image.c (get_spec_bg_or_alpha_as_argb)
21186 (create_cairo_image_surface): New functions when USE_CAIRO.
21187 (xpm_load): Call the above functions. Handle XPM without mask
21188 when USE_CAIRO.
21189 (png_load_body): Handle USE_CAIRO case.
21190 (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
21191 instead.
21192 (jpeg_load_body): Call create_cairo_image_surface.
21193 (gif_load, svg_load_image): Handle specified background, call
21194 create_cairo_image_surface.
21195 * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
21196
21197 2015-04-11 Jan D <jan.h.d@swipnet.se>
21198
21199 Support GIF and TIFF with cairo
21200 * configure.ac: Allow jpeg with cairo.
21201 Allow tiff and gif with cairo.
21202 * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
21203 (tiff_load): Create cairo image surface if USE_CAIRO.
21204 (gif_load): Ditto.
21205
21206 Support JPEG with USE_CAIRO
21207 * configure.ac: Allow jpeg with cairo.
21208 * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
21209
21210 2015-04-05 Jan D <jan.h.d@swipnet.se>
21211
21212 Support RSVG and cairo
21213 * configure.ac: Allow rsvg with cairo. Move back HAVE_RSVG.
21214 * src/dispextern.h (struct image): Add cr_data2 if cairo.
21215 * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
21216 (x_clear_image): Free cr_data and cr_data2 if set.
21217 (xpm_load): Assign data to cr_data2.
21218 (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
21219
21220 2015-04-03 Jan D <jan.h.d@swipnet.se>
21221
21222 Introduce limited Xpm support (32 bit ZPixmap) for Cairo
21223 * configure.ac (HAVE_RSVG): Move after cairo.
21224 (USE_CAIRO): Disable rsvg, don't disable Xpm.
21225 * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
21226 (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
21227 don't return early.
21228 (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
21229 (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
21230 and create a surface.
21231
21232 Tool tips for menus did not show any text.
21233 * src/xterm.c (x_update_begin): Don't create any surface for non-visible
21234 tip frames, the geometry may be wrong.
21235
21236 Merge branch 'master' into cairo, fixes tooltips not shown.
21237
21238 Merge branch 'master' into cairo
21239
21240 Add CAIRO_CFLAGS to lwlib/Makefile.in
21241 * Makefile.in (CAIRO_CFLAGS): Add.
21242
21243 2015-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21244
21245 * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
21246
21247 2015-02-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21248
21249 Draw outermost line using black relief and erase corners also for cairo.
21250 * src/xterm.c [USE_CAIRO]: Include math.h.
21251 (enum corners) [USE_CAIRO]: New enum.
21252 (x_erase_corners_for_relief) [USE_CAIRO]: New function.
21253 (x_draw_relief_rect) [USE_CAIRO]: Use it. If box width is larger
21254 than 1, draw the outermost line using the black relief.
21255
21256 * src/xterm.c (x_fill_trapezoid_for_relief):
21257 Remove unnecessary cairo_close_path.
21258
21259 2015-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21260
21261 * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
21262
21263 * src/xterm.c (x_draw_stretch_glyph_string):
21264 Call x_reset_clip_rectangles instead of XSetClipMask.
21265
21266 Use int instead of unsigned int for width and height args.
21267 * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
21268 (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
21269 width and height args.
21270
21271 Modernize k&r cairo-related function declarations.
21272 * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
21273 (xg_print_frames_dialog): Modernize k&r declarations.
21274 * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
21275 (Fx_print_frames_dialog): Modernize k&r declarations.
21276 * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
21277 (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
21278 (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
21279 (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
21280 (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
21281 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
21282 (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
21283 (x_clear_area): Modernize k&r declarations.
21284
21285 Implement wave-style variant of underlining for cairo.
21286 * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
21287 (x_draw_underwave) [USE_CAIRO]: Use it.
21288
21289 * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
21290 instead of XFillRectangle.
21291
21292 2015-02-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21293
21294 Fix fringe bitmap initialization for cairo
21295 * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
21296 data for cairo image surface.
21297 * src/xterm.c (x_cr_define_fringe_bitmap):
21298 Call cairo_surface_mark_dirty.
21299
21300 2015-02-11 Jan D <jan.h.d@swipnet.se>
21301
21302 Add cairo drawing
21303 * configure.ac (with-cairo): New option.
21304 (USE_CAIRO): Default to yes for Gtk+ 3. Add code to test for cairo,
21305 set CAIRO_CFLAGS, CAIRO_LIBS. Add ftcrfonto to FONT_OBJ if cairo.
21306 Output "Does Emacs use cairo?".
21307 * lisp/version.el (emacs-version): Add cairo version.
21308 * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
21309 (FONT_OBJ): Add comment about ftcrfont.
21310 (ALL_CFLAGS): Add CAIRO_CFLAGS.
21311 (LIBES): Add CAIRO_LIBS.
21312 * src/dispextern.h (struct image): Add cr_data for cairo.
21313 (x_cr_init_fringe): Declare.
21314 * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
21315 * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
21316 * src/fringe.c (x_cr_init_fringe): New function name that shares code
21317 with w32_init_fringe.
21318 * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
21319 * src/ftfont.c (ftfont_info_size); New global variable.
21320 (ftfont_open2): New extern function almost the same as old ftfont_open,
21321 but takes the font_object as argument.
21322 (ftfont_open): Build font object and call ftfont_open2.
21323 * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
21324 * src/gtkutil.c (xg_clear_under_internal_border)
21325 (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
21326 Only queue_draw if not cairo. Change args to x_clear_area.
21327 (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
21328 (xg_page_setup_dialog, xg_get_page_setup, draw_page)
21329 (xg_print_frames_dialog): New functions for printing.
21330 * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
21331 (xg_print_frames_dialog): Declare.
21332 * src/image.c: Add defined (USE_CAIRO) for PNG.
21333 Add !defined USE_CAIRO for W32 PNG code.
21334 (x_clear_image): If cairo, destroy the surface in cr_data.
21335 (png_load): Add new cairo compatible implementation.
21336 (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
21337 * src/xfns.c: New section Printing.
21338 (x-export-frames, x-page-setup-dialog, x-get-page-setup)
21339 (x-print-frames-dialog): New printing functions.
21340 (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
21341 (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
21342 Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
21343 (syms_of_xfns): Provide cairo and defvar cairo-version-string.
21344 defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
21345 * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
21346 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
21347 (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
21348 (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
21349 Declare.
21350 (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
21351 (max_fringe_bmp, fringe_bmp): New variables.
21352 (x_gc_get_ext_data, x_extension_initialize)
21353 (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
21354 (x_set_cr_source_with_gc_foreground)
21355 (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
21356 (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
21357 (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
21358 (x_prepare_for_xlibdraw, x_set_clip_rectangles)
21359 (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
21360 (x_clear_window, x_fill_trapezoid_for_relief): New functions.
21361 (x_update_begin): Create cairo surface if needed.
21362 (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
21363 (x_update_end): Paint cairo drawing surface to xlib surface.
21364 (x_clear_under_internal_border, x_after_update_window_line): Adjust
21365 arguments to x_clear_area.
21366 (x_draw_fringe_bitmap): Call x_fill_rectangle. Get GC values and
21367 call x_cr_draw_image for cairo. Call x_reset_clip_rectangles instead
21368 of XSetClipMask.
21369 (x_set_glyph_string_clipping)
21370 (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
21371 instead of XSetClipRectangles.
21372 (x_clear_glyph_string_rect, x_draw_glyph_string_background):
21373 Use x_fill_rectangle instead of XFillRectangle.
21374 (x_draw_glyph_string_foreground)
21375 (x_draw_composite_glyph_string_foreground)
21376 (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
21377 instead of XDrawRectangle.
21378 (x_draw_relief_rect): Add code for USE_CAIRO.
21379 Call x_reset_clip_rectangles instead of XSetClipMask.
21380 (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
21381 x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
21382 instead of XSetClipMask.
21383 (x_draw_image_foreground, x_draw_image_foreground_1):
21384 x_draw_rectangle instead of XDrawRectangle.
21385 (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
21386 XFillRectangle.
21387 (x_draw_image_glyph_string): If img has cr_data, use it as
21388 a cairo surface.
21389 (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
21390 XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
21391 (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
21392 x_reset_clip_rectangles instead of XSetClipMask.
21393 (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
21394 (x_clear_area1): New function that calls XClearArea.
21395 (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
21396 non-cairo.
21397 (x_clear_frame): x_clear_window instead of XClearWindow.
21398 (x_scroll_run): Set frame garbaged if cairo.
21399 (XTmouse_position): Initialize *part to 0.
21400 (x_scroll_bar_create): Adjust arguments to x_clear_area.
21401 (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
21402 x_fill_rectangle instead of XFillRectangle.
21403 (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
21404 arguments to x_clear_area.
21405 (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
21406 (handle_one_xevent): Adjust arguments to x_clear_area.
21407 Destroy cairo surface for frame if ConfigureNotify.
21408 (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
21409 (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
21410 x_reset_clip_rectangles instead of XSetClipMask.
21411 (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
21412 x_reset_clip_rectangles instead of XSetClipMask.
21413 (x_clear_frame_area): Adjust arguments to x_clear_area.
21414 (x_free_frame_resources): Call x_prepare_for_xlibdraw.
21415 (x_term_init): Call x_extension_initialize if cairo.
21416 (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
21417 x_cr_destroy_fringe_bitmap for cairo.
21418 (x_initialize): Call x_cr_init_fringe for cairo.
21419 * src/xterm.h: Add include of cairo header files.
21420 (x_bitmap_record): Add img if cairo.
21421 (x_gc_ext_data): New struct for cairo.
21422 (x_display_info): Add ext_codes for cairo.
21423 (x_output): Add cr_context and cr_surface for cairo.
21424 (x_clear_area): Change arguments from Display*/Window to frame pointer.
21425 (x_query_color, x_begin_cr_clip, x_end_cr_clip)
21426 (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
21427 (x_cr_draw_frame, x_cr_export_frames): Declare.
21428
21429 2015-05-17 Johan Bockgård <bojohan@gnu.org>
21430
21431 Fix integer-valued `mouse-highlight' (Bug#20590)
21432 * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
21433
21434 2015-05-17 Eli Zaretskii <eliz@gnu.org>
21435
21436 MS-Windows followup for ASCIIfication of curved quotes
21437 * lisp/term/w32console.el (terminal-init-w32console): Repeat the
21438 test for curved quotes being displayable, after switching the
21439 terminal encoding. (Bug#20545)
21440
21441 2015-05-17 Jan D <jan.h.d@swipnet.se>
21442
21443 Add comment that x_shift_glyphs_for_insert is never called
21444 * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
21445 Add comment that this function is never called.
21446
21447 2015-05-16 Glenn Morris <rgm@gnu.org>
21448
21449 * src/lisp.mk: Remove from repository and generate at build-time.
21450 * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
21451 (shortlisp_filter): New variable.
21452 (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
21453 (distclean): Remove lisp.mk.
21454 * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
21455 * lisp/loadup.el: Tweak layout to make it easier to parse.
21456 * make-dist: Do not distribute src/lisp.mk.
21457
21458 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
21459
21460 Display shorter dates in Git annotate output
21461 * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
21462 format (when not overridden with vc-git-annotate-switches).
21463 (vc-git-annotate-time): Support the short format, as well as ISO
21464 8601 that has been used until now (bug#5428).
21465
21466 2015-05-16 Paul Eggert <eggert@cs.ucla.edu>
21467
21468 ASCIIfy curved quotes on displays lacking them
21469 * lisp/international/mule-cmds.el (set-locale-environment):
21470 If curved quotes don't work, display straight ASCII approximations
21471 (Bug#20545).
21472
21473 2015-05-16 Glenn Morris <rgm@gnu.org>
21474
21475 Small src/Makefile simplification
21476 * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
21477 * src/Makefile.in (lisp): Derive from shortlisp.
21478 ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
21479
21480 2015-05-16 Eli Zaretskii <eliz@gnu.org>
21481
21482 * lisp/help-mode.el (help-go-forward): Doc fix.
21483 (Bug#20577)
21484
21485 * doc/lispref/debugging.texi (Profiling): Improve indexing.
21486 (Bug#20576)
21487
21488 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
21489
21490 * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
21491 have one fewer `not'.
21492
21493 * lisp/vc/vc-git.el (vc-git-diff-switches)
21494 (vc-git-annotate-switches, vc-git-resolve-conflicts)
21495 (vc-git-program, vc-git-root-log-format): Remove the redundant
21496 :group declarations.
21497
21498 2015-05-16 Nicolas Petton <nicolas@petton.fr>
21499
21500 Removes the predicate from lisp-complete-symbol (Bug#20456)
21501 * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
21502 and remove it from the docstring.
21503
21504 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
21505
21506 Add new option vc-git-resolve-conflicts
21507 * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
21508 (vc-git-find-file-hook): Add to after-save-hook only when the
21509 above is non-nil.
21510 (vc-git-resolve-when-done): Update to honor the new variable.
21511 (Bug#20292)
21512
21513 2015-05-16 Artur Malabarba <bruce.connor.am@gmail.com>
21514
21515 * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
21516 (tabulated-list-init-header): Document new behavior.
21517 (tabulated-list-print-fake-header): Do nothing if
21518 `tabulated-list--header-string' is nil.
21519 (tabulated-list--header-string): Add a docstring.
21520 * doc/lispref/modes.texi (Tabulated List Mode): Document it.
21521 * etc/NEWS: Document it.
21522
21523 2015-05-15 Leo Liu <sdl.web@gmail.com>
21524
21525 Revert "Fix cps--gensym"
21526 * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
21527 fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
21528
21529 2015-05-15 Glenn Morris <rgm@gnu.org>
21530
21531 Replace AC_SUBST_FILE in configure with include in Makefiles
21532 * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
21533 (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
21534 (AUTO_DEPEND): New output variable.
21535 * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
21536 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
21537 (lwlib_deps_frag): Replace by conditional include.
21538 * lwlib/autodeps.mk: Remove file.
21539 * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
21540 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
21541 (oldxmenu_deps_frag): Replace by conditional include.
21542 * oldXMenu/autodeps.mk: Remove file.
21543 * src/Makefile.in (AUTO_DEPEND): New, set by configure.
21544 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
21545 (lisp_frag): Replace by an include.
21546 (deps_frag): Replace by conditional include.
21547 * src/autodeps.mk: Remove file.
21548
21549 Tweak japanese.el's loading of dependencies
21550 * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
21551 * lisp/language/japanese.el: Use require rather than load.
21552 * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
21553 Provide a feature.
21554 * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
21555 Provide a feature in the generated file.
21556
21557 2015-05-15 Jan D <jan.h.d@swipnet.se>
21558
21559 Fix NS warnings
21560 * src/nsmenu.m (ns_popup_dialog)
21561 * src/nsimage.m (initFromXBM:width:height:fg:bg:)
21562 * src/nsfns.m (Fx_create_frame): Remove unused variables.
21563 (Fns_read_file_name): Initialize fname, remove ret.
21564 * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
21565 (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
21566 Remove unused variable.
21567 (init): Add parantesis in if.
21568 (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
21569
21570 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
21571
21572 Fix a enum conversion warning in macfont.m
21573 * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
21574 (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
21575
21576 2015-05-15 Eli Zaretskii <eliz@gnu.org>
21577
21578 * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
21579 Support Aspell dictionaries with names like "de-alt". (Bug#20581)
21580
21581 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
21582
21583 * lisp/cus-start.el: Add ns-confirm-quit.
21584
21585 Fix warnings on OSX 10.10
21586 * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
21587 OSX versions.
21588 (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
21589 (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
21590 * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
21591 * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
21592 setScalesWhenResized for OSX < 10.6.
21593 * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
21594 * src/nsterm.m (ns_copy_bits): New function that does not use
21595 deprecated NSCopyBits.
21596 (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
21597 (runAlertPanel): New function.
21598 (applicationShouldTerminate:): Call runAlertPanel.
21599 (initFrameFromEmacs, toggleFullScreen:): Only call
21600 useOptimizedDrawing for OSX < 10.10.
21601 (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
21602 (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
21603 (draggingEntered:): Returns NSDragOperation.
21604 (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
21605
21606 2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
21607
21608 * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
21609 (package--init-file-ensured): New variable.
21610 (package-initialize, package--ensure-init-file): Use it.
21611
21612 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
21613
21614 Honor :fore/background for XBM on NS (Bug#14969)
21615 * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
21616 initFromXBM takes bg, fg args, remove flip arg.
21617 (ns_image_from_XBM): Add bg, fg args.
21618 * src/image.c (x_create_bitmap_from_data)
21619 (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
21620 * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
21621 initFromXBM. Remove flip arg.
21622 (initFromSkipXBM): Move code to initFromXBM.
21623 (initFromXBM): Actually set fg and bg, instead of playing alpha games.
21624 Use fg, bg from args (Bug#14969). Remove if (length) section, was
21625 always false.
21626 Remove bit flipping (bitPat, swt), generated incorrect images when
21627 width/height wasn't a multiple of 8.
21628 (setXBMColor:): Modify planes by comparing to saved xbm_fg.
21629 * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
21630 remove flip arg.
21631
21632 2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
21633
21634 * lisp/emacs-lisp/package.el: Be more careful with the init file.
21635 (package--ensure-init-file): Check that user-init-file is set,
21636 exists, is readable, and is writable. (Bug#20584)
21637 Also expand the docstring.
21638
21639 2015-05-14 Wilson Snyder <wsnyder@wsnyder.org>
21640
21641 Sync with upstream verilog-mode revision 6232468
21642 * lisp/progmodes/verilog-mode.el
21643 (verilog-font-lock-grouping-keywords-face)
21644 (verilog-highlight-grouping-keywords): Fix use of face when
21645 `verilog-highlight-grouping-keywords' set. Reported by Jeff Pompa.
21646 (verilog-auto-reset): Fix AUTORESET to ignore member resets if
21647 parent is reset, bug906. Reported by Ken Schmidt.
21648 (verilog-auto-inout-module): Add fourth regexp argument to
21649 AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
21650 Reported by John Tillema.
21651 (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
21652 modport if signal attachment is itself a modport. Reported by
21653 Matthew Lovell.
21654 (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
21655 always_comb and always_latch, bug844. Reported by Greg Hilton.
21656 (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
21657 with many curly-bracket pairs, bug663.
21658 (verilog-set-auto-endcomments): Fix end comments for functions of
21659 type void, etc. Reported by Alex Reed.
21660 (verilog-do-indent): Fix electric tab deleting form-feeds. Note
21661 caused by indent-line-to deleting tabls pre 24.5.
21662 (verilog-nameable-item-re): Fix nameable items that can have an
21663 end-identifier to include endchecker, endgroup, endprogram,
21664 endproperty, and endsequence. Reported by Alex Reed.
21665 (verilog-label-be): When auto-commenting a buffer, consider
21666 auto-comments on all known keywords (not just a subset thereof).
21667 Reported by Alex Reed.
21668 (verilog-auto-end-comment-lines-re)
21669 (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
21670 Automatically comment property/endproperty blocks to match other
21671 similar blocks like sequence/endsequence, function/endfunction, etc.
21672 Reported by Alex Reed.
21673 (verilog-set-auto-endcomments): Detect the function- or task-name
21674 when auto-commenting blocks that lack an explicit portlist.
21675 Reported by Alex Reed.
21676 (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
21677 allow post-AUTO user fixups, bug826. Reported by Dennis Muhlestein.
21678 (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
21679 is nil, fix indenting initial/final to match always statements,
21680 bug825. Reported by Tim Clapp.
21681 (verilog-extended-complete-re): Fix indentation of DPI-C imports
21682 with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
21683 Mao and Jason Forkey.
21684 (verilog-read-decls): Fix parsing typed interfaces. Fix
21685 AUTOINOUTMODPORT missing types. Reported by Stephan Bourduas.
21686 Fix localparam not being ignored in AUTOINSTPARAM,
21687 bug889. Reported by Shannon Hill.
21688 (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
21689 bug793. Reported by Pierre-David Pfister.
21690 (verilog-auto-arg-format, verilog-auto-arg-ports):
21691 Add verilog-auto-arg-format to support newlines in AUTOARG.
21692 Reported by Jie Xiao.
21693 (verilog-batch-execute-func): Do not batch re-auto files loaded by
21694 Local Variables. Fix printing "no changes to be saved" with
21695 verilog-batch. Reported by Dan Dever.
21696 (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
21697 interface-only modules, bug721. Reported by Dean Hoyt.
21698 Author: Alex Reed <acreed4@gmail.com>
21699 * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
21700 Don't treat '<keyword>:<identifier>' as the start of a labeled
21701 statement, bug905. Reported by Enzo Chi.
21702 (verilog-directive-re, verilog-compiler-directives)
21703 (verilog-keywords): Match full set of IEEE 2012-1800 compiler
21704 directives (plus some extras) when determining indentation, bug
21705 901. Reported by Bernd Beuster.
21706 (verilog-at-constraint-p): Fix indentation of coverpoint bins if
21707 iff expression doesn't start with word-character, bug900.
21708 (verilog-optional-signed-range-re, verilog-optional-signed-re):
21709 Fix incorrect indentation/alignment of unsigned declarations,
21710 bug897.
21711 (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
21712 always constructs, bug895.
21713 (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
21714 Reported by Eric Mastromarchi.
21715 (verilog-beg-of-statement): Fix indenting for some forms of
21716 constraintsm bug433. Reported by Brad Parker. Fix indentation of
21717 continued assignment incorrect if first line ends with ']', bug437.
21718 Reported by Dan Dever. Fix indention of cover inside an
21719 ifdef, bug 862. Reported by Bernd Beuster. Fix labeling do-while
21720 blocks, bug842.
21721 (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
21722 Reported by Kaushal Modi.
21723 (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
21724 (verilog-backward-token): Fix indenting sensitivity lists with
21725 named events, bug840. Reed.
21726 (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
21727 nil not honoring 'forever', 'foreach', and 'do' keywords.
21728
21729 2015-05-14 Paul Eggert <eggert@cs.ucla.edu>
21730
21731 Check for invalid GTK+ monitor scales
21732 * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
21733 INT_MAX for too-large scales. All callers changed to assume the
21734 result is valid (Bug#20432).
21735 (xg_frame_set_char_size, xg_update_scrollbar_pos):
21736 Calculate scale only if needed.
21737 Show ASCII approximations instead.
21738
21739 2015-05-14 Eli Zaretskii <eliz@gnu.org>
21740
21741 Fix daemon crashes when linum-mode is turned on early on
21742 * src/window.c (Fwindow_end): Don't try calling display engine
21743 functions on initial-frame frame. (Bug#20565)
21744
21745 Fix selective diff browsing in Ediff
21746 * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
21747 Go to the beginning of the region before searching for the
21748 ediff-regexp-focus-* regexps. (Bug#20568)
21749
21750 2015-05-14 Jan D <jan.h.d@swipnet.se>
21751
21752 Fixes bug#20142
21753 * src/gtkutil.c (delete_cb): Don't send delete event here, it does
21754 arrive in the main loop, even for Gtk 3 (Bug#20142).
21755
21756 Don't access display after i/o error (Bug#19147).
21757 * src/xterm.c (x_connection_closed): Add third arg ioerror.
21758 If ioerror, set display to 0 (Bug#19147).
21759 (x_error_quitter): Call x_connection_closed with third arg false.
21760 (x_io_error_quitter): Call x_connection_closed with third arg true.
21761
21762 Handle GTK_SCALE, fixes Bug#20432.
21763 * src/gtkutil.c (xg_get_gdk_scale): New function.
21764 (xg_frame_set_char_size)
21765 (x_wm_set_size_hint, xg_get_default_scrollbar_width)
21766 (xg_get_default_scrollbar_height)
21767 (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
21768 when setting sizes (Bug#20432).
21769
21770 2015-05-13 Leo Liu <sdl.web@gmail.com>
21771
21772 * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
21773
21774 2015-05-13 Glenn Morris <rgm@gnu.org>
21775
21776 Fix bootstrap (void function cl-member).
21777 * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
21778 * lisp/emacs-lisp/cl-seq.el: Provide a feature.
21779
21780 2015-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
21781
21782 * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
21783 * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
21784 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
21785 Avoid defalias for closures which are not immutable.
21786 (cl--generic-prefill-dispatchers): New macro. Use it to prefill
21787 the dispatchers table with various entries.
21788 * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
21789 * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
21790
21791 2015-05-13 Eli Zaretskii <eliz@gnu.org>
21792
21793 Improve tagging of C bindings in DEFVAR_*
21794 * src/Makefile.in (TAGS): Add --regex options to tag the C binding
21795 from DEFVAR_*.
21796
21797 2015-05-13 Paul Eggert <eggert@cs.ucla.edu>
21798
21799 * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
21800
21801 2015-05-12 Glenn Morris <rgm@gnu.org>
21802
21803 * lisp/progmodes/tcl.el (tcl-filter):
21804 Handle comint-prompt-read-only like gud.el does. (Bug#20549)
21805
21806 Add basic VC push support
21807 * lisp/vc/vc.el (vc-push): New autoloaded command.
21808 * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
21809 * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
21810 (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
21811 (vc-bzr-push): New.
21812 * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
21813 (vc-git-pull): Reimplement using vc-git--pushpull.
21814 (vc-git-push): New.
21815 * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
21816 (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
21817 * doc/emacs/maintaining.texi (Pulling / Pushing):
21818 Rename from "VC Pull". Mention pushing.
21819 (VC With A Merging VCS, VC Change Log): Update xrefs.
21820 (Branches): Update menu.
21821 * doc/emacs/emacs.texi: Update menu.
21822 * etc/NEWS: Mention this.
21823
21824 2015-05-12 Nicolas Petton <nicolas@petton.fr>
21825
21826 Improve the seq pcase pattern and the `seq-let' macro
21827 * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
21828 object is a sequence, and binds each element of ARGS to the
21829 corresponding element of the sequence.
21830
21831 2015-05-12 Eli Zaretskii <eliz@gnu.org>
21832
21833 Fix tags created from DEFVAR_* declarations in C
21834 * src/Makefile.in (TAGS): Improve the --regex argument to etags,
21835 to make tags extracted from DEFVAR_* declarations more accurate.
21836
21837 Add a test suite for etags
21838 * test/etags/: New test suite, adapted from
21839 http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
21840 whose original author is Francesco Potortì <pot@gnu.org>.
21841
21842 Fix tagging of symbols in C enumerations
21843 * lib-src/etags.c (consider_token): Don't tag symbols in
21844 expressions that assign values to enum constants. See
21845 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
21846 for details.
21847 (C_entries): Reset fvdef to fvnone after processing a preprocessor
21848 conditional and after a comma outside of parentheses.
21849
21850 2015-05-12 Glenn Morris <rgm@gnu.org>
21851
21852 * lisp/url/url-handlers.el (url-file-name-completion)
21853 (url-file-name-all-completions): Silence compiler.
21854
21855 * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
21856
21857 * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time. (Bug#20554)
21858
21859 2015-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
21860
21861 * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
21862 (cl--generic-mandatory-args): Remove.
21863 (cl--generic-split-args): New function.
21864 (cl-generic-define, cl--generic-lambda): Use it.
21865 (cl-generic-define-method): Use it as well, and add support for
21866 context args.
21867 (cl--generic-get-dispatcher): Handle &context dispatch.
21868 (cl--generic-cache-miss): `dispatch-arg' can now be a
21869 context expression.
21870 (cl--generic-dispatchers): Pre-fill.
21871 * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
21872 New test.
21873
21874 2015-05-11 Glenn Morris <rgm@gnu.org>
21875
21876 * make-dist: Abort if "make ChangeLog" fails. Add "--no-changelog".
21877
21878 2015-05-11 Stefan Monnier <monnier@iro.umontreal.ca>
21879
21880 * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
21881 * lisp/term/rxvt.el: Require term/xterm.
21882 (rxvt-function-map): Use xterm-rxvt-function-map.
21883 (rxvt-standard-colors): Move before first use.
21884 (terminal-init-rxvt): Use xterm--push-map and
21885 xterm-register-default-colors.
21886 (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
21887 * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
21888 Move shared bindings between rxvt and xterm to it.
21889 (xterm-function-map): Use it. Move the xterm-paste binding to
21890 xterm-rxvt-function-map (bug#20444).
21891 (xterm-standard-colors): Move before first use.
21892 (xterm--push-map): New function.
21893 (xterm-register-default-colors): Take standard colors as argument.
21894 (terminal-init-xterm): Use it. Adjust call to
21895 xterm-register-default-colors.
21896
21897 2015-05-11 Glenn Morris <rgm@gnu.org>
21898
21899 * lisp/term/x-win.el: Quieten --without-x compilation.
21900 (x-own-selection-internal, x-disown-selection-internal)
21901 (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
21902 Declare.
21903
21904 * Makefile.in (emacslog): Remove srcdir.
21905 (ChangeLog): Update for the above.
21906
21907 2015-05-10 Fabián Ezequiel Gallina <fgallina@gnu.org>
21908
21909 python.el: better limit for looking-back calls
21910 * lisp/progmodes/python.el (python-shell-accept-process-output):
21911 Use last comint prompt start as limit for looking-back.
21912
21913 2015-05-10 Stefan Monnier <monnier@iro.umontreal.ca>
21914
21915 CEDET (srecode-insert-fcn): Fix use of oref on a class
21916 * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
21917 on a class. Reported by Pierre Lorenzon.
21918 (srecode-template-inserter-point): Remove declaration.
21919
21920 CEDET (srecode-create-dictionary): Avoid obsolete object name
21921 * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
21922 Don't use a symbol as an object name. Reported by Pierre Lorenzon.
21923
21924 2015-05-10 Paul Eggert <eggert@cs.ucla.edu>
21925
21926 C-x 8 shorthands for curved quotes, Euro, etc.
21927 Although C-x 8 lets you insert arbitrary Unicode characters,
21928 it's awkward to use this to insert commonly used symbols such as curved
21929 quotes, the Euro symbol, etc. This patch adds simpler sequences for
21930 characters commonly found in English text and in basic math.
21931 For example, assuming the Alt key works on your keyboard and iso-transl
21932 is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
21933 to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
21934 (Bug#20499)
21935 * doc/emacs/mule.texi (Unibyte Mode):
21936 A few other printing characters now work too.
21937 * etc/NEWS: Document this.
21938 * lisp/international/iso-transl.el (iso-transl-char-map):
21939 Also support the following characters:
21940 ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
21941
21942 2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
21943
21944 Add xref-find-regexp
21945 * lisp/progmodes/xref.el (xref-find-function): Describe the
21946 `matches' action.
21947 (xref-find-regexp): New command, using it.
21948 (xref-collect-references): Rename to xref-collect-matches.
21949 (xref--collect-reference): Rename to xref--collect-match.
21950 (xref-collect-matches, xref--collect-match): Accept new argument,
21951 KIND. Update accordingly.
21952 (xref--regexp-to-extended): New function.
21953 * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
21954 `matches' action.
21955 (elisp--xref-find-matches): Accept new argument. Resolve a FIXME.
21956 * lisp/progmodes/etags.el (etags-xref-find):
21957 Support the `matches' action.
21958 (etags--xref-find-matches): New function.
21959
21960 2015-05-10 Glenn Morris <rgm@gnu.org>
21961
21962 * Makefile.in: Fixes for recent change-history changes.
21963 (change-history-nocommit): Update footer regexp.
21964 Ensure output script stays executable.
21965
21966 2015-05-10 Nicolas Petton <nicolas@petton.fr>
21967
21968 New version of `seq-let' based on a pcase pattern
21969 * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
21970 pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
21971
21972 2015-05-10 Przemysław Wojnowski <esperanto@cumego.com>
21973
21974 Add basic HTML5 tags and a template
21975 * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
21976 (html-tag-alist): Add HTML5 tags.
21977 (html-tag-help): Add new tags descriptions.
21978 (html-navigational-links): Template for nav links.
21979 (html-html5-template): Template for a HTML5 page.
21980
21981 2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
21982
21983 semantic/symref/grep: Don't use word boundaries
21984 * lisp/cedet/semantic/symref/grep.el
21985 (semantic-symref-perform-search): Instead of wrapping input in
21986 word boundaries, check that the characters before and after are
21987 not word constituents.
21988
21989 semantic/symref/grep: Support regexp search
21990 * lisp/cedet/semantic/symref.el
21991 (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
21992 the search type is regexp.
21993 * lisp/cedet/semantic/symref/grep.el
21994 (semantic-symref-perform-search): Support the regexp search type.
21995 Pass -E to Grep when it's used.
21996
21997 semantic-symref-regexp: Allow to input an arbitrary string
21998 * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
21999 Allow to input an arbitrary string interactively.
22000
22001 Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
22002 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
22003 Remove tag-symbol-match-p from the default value
22004 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
22005
22006 Declare find-tag obsolete
22007 * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
22008 xref-find-definitions.
22009
22010 2015-05-10 Jan D <jan.h.d@swipnet.se>
22011
22012 Draw composite string correctly (Bug#20537)
22013 * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
22014 New function.
22015 (ns_draw_glyph_string): Call it.
22016
22017 2015-05-09 Eli Zaretskii <eliz@gnu.org>
22018
22019 Avoid infloop in ERC
22020 * lisp/simple.el (line-move-to-column): Ignore field boundaries
22021 while computing line beginning position. (Bug#20498)
22022
22023 2015-05-08 Glenn Morris <rgm@gnu.org>
22024
22025 * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
22026 * build-aux/gitlog-to-emacslog: Check called from right directory.
22027 (srcprefix): Remove.
22028
22029 * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
22030 * Makefile.in (ChangeLog): No longer pass "distprefix".
22031 * make-dist: Update "make ChangeLog" syntax for the above change.
22032
22033 * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
22034 * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
22035
22036 * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
22037
22038 Add command-line option-parsing to gitlog-to-emacslog
22039 * build-aux/gitlog-to-emacslog: Add command-line options.
22040 By default, refuse to remove an existing output file.
22041 * Makefile.in (CHANGELOG): Update default.
22042 (ChangeLog): Do not test for existing file.
22043 (change-history-nocommit): Ensure temp file does not exist.
22044
22045 Quieten --without-x compilation
22046 * lisp/term/common-win.el: Provide a feature.
22047 * lisp/term/x-win.el (term/common-win): Require it.
22048
22049 * lisp/dired-aux.el (dired-do-print): Require lpr.
22050
22051 Quieten compilation, eg in --without-x builds
22052 * lisp/dired-aux.el (lpr-printer-switch):
22053 * lisp/frame.el (tool-bar-height):
22054 * lisp/linum.el (font-info):
22055 * lisp/window.el (font-info, overflow-newline-into-fringe)
22056 (tool-bar-height):
22057 * lisp/emacs-lisp/package-x.el (tar-data-buffer):
22058 * lisp/gnus/gnus-util.el (iswitchb-mode):
22059 * lisp/mail/rmailmm.el (libxml-parse-html-region):
22060 * lisp/net/nsm.el (gnutls-peer-status)
22061 (gnutls-peer-status-warning-describe):
22062 * lisp/net/shr.el (libxml-parse-xml-region):
22063 * lisp/url/url-http.el (gnutls-peer-status): Declare.
22064
22065 2015-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
22066
22067 CEDET (srecode-pop, srecode-peek): Don't use `subclass'
22068 * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
22069 `subclass' since they're never called with a class.
22070 (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
22071 srecode-dictionary-child-p.
22072
22073 2015-05-08 Nicolas Richard <theonewiththeevillook@yahoo.fr>
22074
22075 * lisp/help.el (help--binding-locus): Document argument POSITION.
22076 (Bug#20530)
22077
22078 2015-05-08 Paul Eggert <eggert@cs.ucla.edu>
22079
22080 Merge from gnulib
22081 * doc/misc/texinfo.tex: Get latest version.
22082
22083 2015-05-08 Oleh Krehel <ohwoeowho@gmail.com>
22084
22085 ffap.el (ffap-read-file-or-url): Fix completing-read call
22086 * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
22087 `completing-read' should be a symbol.
22088
22089 2015-05-08 Eli Zaretskii <eliz@gnu.org>
22090
22091 Verify file modifications by other programs
22092 * src/filelock.c (lock_file): Check whether the file was modified
22093 since it was visited even if 'create-lockfiles' is nil. (Bug#18828)
22094
22095 Fix keyboard macros that include function keys
22096 * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
22097 keys in the macro before returning. (Bug#20454)
22098
22099 2015-05-08 Glenn Morris <rgm@gnu.org>
22100
22101 * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
22102 "Copyright-paperwork-exempt". (Bug#20324)
22103
22104 * lisp/vc/log-edit.el: Handle "(tiny change)". (Bug#20324)
22105 (log-edit-rewrite-tiny-change): New variable.
22106 (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
22107 (log-edit-changelog-ours-p): Set log-edit-author to a cons.
22108 * etc/NEWS: Mention this.
22109
22110 * lisp/calc/calc.el (math-zerop): Declare.
22111
22112 * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
22113
22114 2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
22115
22116 * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
22117 Support the case when BINDINGS is a single tuple. (Bug#20525)
22118
22119 * etc/NEWS: Fix typo in previous commit
22120 (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
22121
22122 2015-05-07 Jan D <jan.h.d@swipnet.se>
22123
22124 * configure.ac: Warn for multiple display crash for all Gtk+ versions.
22125 Output URL to Gtk+ bug (Bug#20452).
22126
22127 * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
22128
22129 2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
22130
22131 * lisp/emacs-lisp/package.el: New "external" package status.
22132 An external package is any installed package that's not built-in
22133 and not from `package-user-dir', which usually means it's from an
22134 entry in `package-directory-list'. They are treated much like
22135 built-in packages, in that they cannot be through the Package Menu
22136 deleted and are not considered for upgrades.
22137 (package-desc-status): Identify if a package is installed outside
22138 `package-user-dir'.
22139 (package-menu--print-info-simple)
22140 (package-menu--status-predicate): Add support for it.
22141 * etc/NEWS: Document it.
22142
22143 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
22144
22145 * lisp/mail/rmail.el: Use lexical-binding.
22146 (rmail-bury): Remove unused var `buffer-to-bury'.
22147 (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
22148 (rmail-parse-url): Remove unused var `proto', `user', and `host'.
22149 (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
22150 (rmail-insert-inbox-text): Remove unused var `movemail'.
22151 (rmail-add-mbox-headers): Remove unused var `limit'.
22152 (rmail-undelete-previous-message): Remove unused var `value'.
22153 (rmail-reply): Remove unused vars `resent-to', `resent-cc',
22154 `resent-reply-to'.
22155 (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
22156 (rmail-restore-desktop-buffer): Rename arguments.
22157
22158 2015-05-06 Glenn Morris <rgm@gnu.org>
22159
22160 * Makefile.in (change-history-commit): Add missing piece of previous.
22161
22162 Avoid unnecessary bumping of Makefile.in's timestamp
22163 * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
22164 (emacslog): New variable.
22165 (ChangeLog): Use $emacslog. Don't pass $gen_origin.
22166 (unchanged-history-files): Use $emacslog rather than Makefile.in.
22167 (change-history-nocommit): Store hash in $emacslog.
22168 * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
22169 * admin/update_autogen (changelog_files): Update for the above.
22170
22171 * Makefile.in: Don't always insist on removing existing "ChangeLog".
22172 (CHANGELOG): New variable.
22173 (no-ChangeLog): Remove.
22174 (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
22175 (change-history-nocommit): Use a temp file rather than insisting
22176 on deletion of any existing "ChangeLog".
22177
22178 * build-aux/gitlog-to-emacslog: Allow specification of output.
22179
22180 * admin/update_autogen: Add option to update ChangeLog.
22181 (usage): Mention -H.
22182 (changelog_flag, changelog_n, changelog_files): New variables.
22183 (main): Check for -H, and maybe run change-history-nocommit.
22184
22185 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
22186
22187 * lisp/subr.el (delete-dups): Pre-size the hashtable.
22188
22189 * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
22190 cl--arglist-args is defined (bug#20517).
22191
22192 2015-05-06 Glenn Morris <rgm@gnu.org>
22193
22194 * Makefile.in (change-history-nocommit): New.
22195
22196 2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
22197
22198 * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
22199 timer when it is non-nil
22200 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
22201
22202 2015-05-06 Glenn Morris <rgm@gnu.org>
22203
22204 Quieten CEDET compilation
22205 * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
22206 Invert fboundp test to quieten on current Emacs.
22207 * lisp/cedet/ede/config.el (ede-shell-run-something)
22208 (semanticdb-file-table-object, semanticdb-needs-refresh-p)
22209 (semanticdb-refresh-table): Declare.
22210 (ede-preprocessor-map): Require semantic/db.
22211
22212 Quieten cc-mode compilation
22213 * lisp/progmodes/cc-awk.el (c-forward-sws):
22214 * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
22215 Declare.
22216
22217 2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
22218
22219 * lisp/subr.el (delete-dups): Avoid nreverse.
22220
22221 2015-05-06 Artur Malabarba <bruce.connor.am@gmail.com>
22222
22223 * lisp/subr.el (delete-dups): Make it destructive again.
22224
22225 2015-05-06 Paul Eggert <eggert@cs.ucla.edu>
22226
22227 * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
22228
22229 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
22230
22231 * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
22232 * lisp/emacs-lisp/testcover.el: Use lexical-binding.
22233 (testcover--read): Rename from testcover-read. Change calling
22234 convention. Use edebug-read-and-maybe-wrap-form now that edebug-read
22235 is gone.
22236 (testcover-start): Use add-function. Move edebug-all-defs binding to
22237 testcover--read.
22238 (testcover-this-defun): Tighten scope of edebug-all-defs binding.
22239 (testcover-mark): Remove unused var `item'.
22240 * src/lread.c (syms_of_lread): Default load-read-function to `read'.
22241
22242 2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
22243
22244 * lisp/subr.el (delete-dups): When there are more than 100 candidates,
22245 use a hash table. This can result in ~500 times speed-up for typical
22246 collections of size 5000, like that of `load-library'.
22247
22248 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
22249
22250 CEDET: Avoid `oref' on classes in a few more cases
22251 * lisp/cedet/ede/generic.el (ede-find-target):
22252 * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
22253 * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
22254 var `prefix'.
22255
22256 * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
22257 (grepflags, greppattern): Declare.
22258 (semantic-symref-perform-search): Remove unused var `pat'.
22259
22260 CEDET (srecode-compile-inserter): Avoid `oref' on classes
22261 * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
22262 Avoid `oref' on classes (bug#20491).
22263 (srecode-compile-split-code): Remove unused var `key'.
22264
22265 2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
22266
22267 Clean up pulse.el a little
22268 * lisp/cedet/pulse.el (pulse): Remove.
22269 (pulse-momentary-timer): Save instead of the stop time.
22270 (pulse-momentary-highlight-overlay):
22271 Call pulse-momentary-unhighlight first thing.
22272 Treat pulse-momentary-overlay as a single value, not a list.
22273 Save the created timer. Only pass the stop time to the timer.
22274 (pulse-tick): Update accordingly.
22275 (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
22276 single value. Cancel the timer.
22277
22278 2015-05-06 Tassilo Horn <tsdh@gnu.org>
22279
22280 * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
22281 Support the biblatex journaltitle field.
22282
22283 2015-05-05 Glenn Morris <rgm@gnu.org>
22284
22285 Minor declare-function improvement
22286 * lisp/emacs-lisp/bytecomp.el
22287 (byte-compile-macroexpand-declare-function):
22288 Handle declarations after calls. (Bug#20509)
22289
22290 * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
22291
22292 * lisp/w32-fns.el (w32-shell-name): Silence compiler.
22293
22294 2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
22295
22296 Pulse using a timer
22297 * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
22298 (pulse-momentary-highlight-overlay): Set up the timer instead of
22299 calling `pulse'
22300 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
22301 (pulse-tick): New function.
22302 (pulse-momentary-unhighlight): Cut off the stop time.
22303 (pulse-delay): Update the docstring WRT to not using sit-for.
22304
22305 Add semantic/symref/grep file patterns for ruby-mode
22306 * lisp/cedet/semantic/symref/grep.el
22307 (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
22308 Clarify the docstring.
22309
22310 Don't require match
22311 * lisp/progmodes/xref.el (xref--read-identifier): Don't require
22312 match. That doesn't work for every command, and some identifier
22313 completion tables are bound to be imperfect anyway.
22314
22315 2015-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
22316
22317 * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
22318 (semantic-grammar--template-expand): New function.
22319 (semantic-grammar-header, semantic-grammar-footer): Use it.
22320 (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
22321 (semantic-grammar-file-regexp): Refine regexp.
22322 (semantic-grammar-eldoc-get-macro-docstring):
22323 Use elisp-get-fnsym-args-string when available.
22324 (semantic-idle-summary-current-symbol-info): Use new elisp-* names
22325 instead of the old eldoc-* names.
22326 * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
22327 from elisp-mode.el. Tweak calling convention.
22328 * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
22329 (elisp-get-fnsym-args-string): Add `prefix' argument. Rename from
22330 elisp--get-fnsym-args-string.
22331 (elisp--highlight-function-argument): Add `prefix' arg.
22332 (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
22333 (elisp--docstring-format-sym-doc): Move back to eldoc.el.
22334
22335 2015-05-05 Glenn Morris <rgm@gnu.org>
22336
22337 * lisp/help-fns.el (describe-function-1):
22338 Handle builtins with advertised calling conventions. (Bug#20479)
22339
22340 2015-05-05 Nicolas Petton <nicolas@petton.fr>
22341
22342 Merge branch 'seq-let'
22343
22344 Update `seq-let' documentation
22345 * doc/lispref/sequences.texi: Update the documentation of `seq-let'
22346 with the support of `&rest'.
22347
22348 Add support for &rest in `seq-let'
22349 * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
22350 in the argument list.
22351 * test/automated/seq-tests.el: Add a test for parsing and binding
22352 `&rest' in `seq-let'.
22353
22354 2015-05-05 Pierre Lorenzon <devel@pollock-nageoire.net> (tiny change)
22355
22356 * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
22357 Add missing increment (Bug#20467).
22358 (eieio-object-value-create): Adjust to new slots representation
22359 (Bug#20467).
22360 (eieio-object-value-create): Fix missed adjustment to new
22361 representation of slots metadata.
22362
22363 2015-05-05 Nicolas Petton <nicolas@petton.fr>
22364
22365 * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
22366
22367 2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
22368
22369 Work around "Attempt to modify read-only object"
22370 * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
22371 elisp--xref-find-definitions, to work around "Attempt to modify
22372 read-only object" error.
22373
22374 Only skip some variables that have function counterparts
22375 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
22376 Only skip minor-mode-named variable if it's defined in a Lisp
22377 file, and it's in minor-mode-list (bug#20506).
22378 * test/automated/elisp-mode-tests.el
22379 (elisp-xref-finds-both-function-and-variable)
22380 (elisp-xref-finds-only-function-for-minor-mode): New tests.
22381
22382 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
22383
22384 * lisp/progmodes/xref.el (xref--location-at-point): Revert the
22385 previous change.
22386 (xref--insert-xrefs): Buttonize the whole line, including the
22387 number at the beginning.
22388
22389 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
22390 Make sure we're inside the let bindings.
22391 * test/automated/elisp-mode-tests.el
22392 (elisp-completes-functions-after-let-bindings): New test.
22393
22394 2015-05-04 Glenn Morris <rgm@gnu.org>
22395
22396 * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
22397 (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
22398 (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
22399 Remove outdated declarations.
22400
22401 Replace instances of "(eval-when-compile (autoload ...))"
22402 * lisp/gnus/gnus-art.el (nneething-get-file-name):
22403 Declare rather than autoload.
22404 * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
22405 Remove pointless autoload.
22406 * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
22407 (gnus-topic-create-topic, gnus-topic-enter-dribble):
22408 Declare rather than autoload.
22409 * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
22410 (mailcap-extension-to-mime): Autoload at run-time.
22411 * lisp/gnus/mm-util.el (latin-unity-massage-name)
22412 (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
22413 (latin-unity-representations-present-region):
22414 Declare rather than autoload.
22415 * lisp/gnus/mml-smime.el (epg-make-context)
22416 (epg-passphrase-callback-function): Autoload at run-time.
22417 (epg-context-set-signers, epg-context-result-for)
22418 (epg-new-signature-digest-algorithm)
22419 (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
22420 (epg-sign-string, epg-encrypt-string)
22421 (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
22422 (epg-configuration, epg-expand-group, epa-select-keys):
22423 Declare rather than autoload.
22424 * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
22425 Autoload at run-time.
22426 (gnus-group-topic-name, nnimap-buffer, nnimap-command)
22427 (gnus-registry-get-id-key, gnus-registry-action):
22428 Declare rather than autoload.
22429 * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
22430 * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
22431 (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
22432 (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
22433 (spam-stat-split-fancy): Remove pointless autoloads.
22434 * lisp/net/mairix.el: Load gnus-util when compiling.
22435 (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
22436 (message-field-value): Declare rather than autoload.
22437 (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
22438 Check gnus-alive-p is fbound.
22439 (vm-quit, vm-visit-folder, vm-select-folder-buffer)
22440 (vm-check-for-killed-summary, vm-error-if-folder-empty)
22441 (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
22442 Declare rather than autoload.
22443
22444 * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
22445
22446 * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
22447 (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
22448
22449 * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
22450
22451 * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
22452
22453 * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
22454 * lisp/emacs-lisp/package.el (epg-signature-status):
22455 Fix declarations.
22456
22457 * lisp/play/gametree.el (gametree-show-children-and-entry)
22458 (gametree-apply-layout, gametree-mouse-show-subtree)
22459 (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
22460
22461 * lisp/emacs-lisp/check-declare.el (check-declare-verify):
22462 Handle cl-defgeneric, cl-defmethod.
22463
22464 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
22465
22466 * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
22467 Highlight both type and symbol name.
22468
22469 Insert, highlight and align line numbers in xref output
22470 * lisp/progmodes/etags.el (xref-location-line): Specialize for
22471 xref-etags-location.
22472 * lisp/progmodes/xref.el (xref-location-line): New generic method.
22473 (xref-file-location): Add reader for the line slot.
22474 (xref--location-at-point): Skip to the `xref-location' property.
22475 (xref--collect-reference): Drop the line number from description.
22476 (xref--insert-xrefs): Insert, highlight and align line numbers.
22477
22478 2015-05-04 Daniel Colascione <dancol@dancol.org>
22479
22480 * lisp/simple.el (save-mark-and-excursion--save)
22481 (save-mark-and-excursion--restore): Fix previous commit
22482 (255a011f0ecf004b31c59945b10154b10fac3af1).
22483
22484 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
22485
22486 Don't pulse the indentation, or the newline
22487 * lisp/cedet/pulse.el (pulse-lighten-highlight)
22488 (pulse-reset-face): Fall back to the inherited background
22489 attribute in FACE.
22490 (pulse-momentary-highlight-region): Add autoload cookie.
22491 * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
22492 indentation, or the newline, if the line's non-empty
22493 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
22494
22495 2015-05-04 Daniel Colascione <dancol@dancol.org>
22496
22497 Add `save-mark-and-excursion', which has the old
22498 `save-excursion' behavior
22499 * doc/lispref/positions.texi (Excursions):
22500 Document `save-mark-and-excursion'.
22501 * lisp/font-lock.el (font-lock-fontify-block):
22502 Use `save-mark-and-excursion' instead of `save-excursion',
22503 restoring Emacs 24 behavior.
22504 * lisp/simple.el (save-mark-and-excursion--save)
22505 (save-mark-and-excursion--restore): New functions.
22506 (save-mark-and-excursion): New user macro.
22507 * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
22508 in `save-excursion' documentation.
22509
22510 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
22511
22512 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
22513 Classify lone symbol inside let varlist as variable.
22514 * test/automated/elisp-mode-tests.el
22515 (completest-variables-in-let-bindings): New test.
22516
22517 Add xref-pulse-on-jump
22518 * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
22519 Add autoload cookie.
22520 * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
22521 (xref--maybe-pulse): New function.
22522 (xref-pop-marker-stack, xref--pop-to-location)
22523 (xref--display-position): Use it.
22524 (xref--location-at-point): Use back-to-indentation.
22525
22526 2015-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
22527
22528 lisp/org/org-{macs,list}.el: Fix lexical warnings
22529 * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
22530 (org-list-get-next-item, org-list-get-prev-item)
22531 (org-list-get-children): Mark unused arg `struct'.
22532 (org-list-use-alpha-bul-p): Remove unused var `bul'.
22533 (org-toggle-checkbox): Mark unused var.
22534 (org-update-checkbox-count): Remove unused var `box-num'.
22535 (org-adapt-indentation): Declare.
22536 (org-list-parse-list): Declare var instead of adding a dummy duplicate.
22537 (org-list-send-list): Remove unused var `txt'.
22538 (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
22539 (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
22540 * lisp/org/org-macs.el: Use `declare'.
22541 (org-with-limited-levels): Declare dyn-bound vars.
22542
22543 2015-05-04 Eli Zaretskii <eliz@gnu.org>
22544
22545 Fix minor issues with CEDET on MS-Windows
22546 * lisp/cedet/semantic/symref/idutils.el
22547 (semantic-symref-parse-tool-output-one-line): Fix the search
22548 regexp to match MS-Windows file names with drive letters.
22549 (Bug#19468)
22550 * lisp/cedet/semantic/symref/grep.el
22551 (semantic-symref-grep-use-template): Remove "--color=always" from
22552 Grep switches on MS-Windows.
22553 (semantic-symref-grep-shell): Use shell-file-name as the default
22554 value, so this works not only on Posix platforms.
22555 (semantic-symref-perform-search): Use shell-quote-argument instead
22556 of literal '..' for portable quoting of Grep command-line
22557 argument. Use shell-command-switch instead of a literal "-c".
22558 * lisp/cedet/semantic/bovine/gcc.el
22559 (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
22560 for an absolute file name in a portable way.
22561
22562 2015-05-04 Artur Malabarba <bruce.connor.am@gmail.com>
22563
22564 * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
22565 (package-import-keyring, package-refresh-contents)
22566 (package-compute-transaction, package--save-selected-packages)
22567 (package-install-from-archive, package-delete)
22568 (package-menu--perform-transaction): Use `inhibit-message' instead.
22569 (package--compile): Set `warning-minimum-level' to :error.
22570
22571 2015-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
22572
22573 * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
22574 (terminal-init-screen): Use it (bug#20356).
22575 * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
22576 (xterm--extra-capabilities-type): New const.
22577 (xterm-extra-capabilities): Use it.
22578 (xterm--version-handler): Lower the pseudo-version for `screen'.
22579
22580 2015-05-03 Dmitry Gutov <dgutov@yandex.ru>
22581
22582 * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
22583 Always insert a newline at the end (to avoid mouse-face background
22584 tail at the last line).
22585
22586 elisp-completion-at-point: Prioritize being quoted over funpos
22587 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
22588 Only consider function position when not inside quoted form
22589 (bug#20425).
22590 * test/automated/elisp-mode-tests.el: New file.
22591
22592 Stop vc-print-log from jumping to the top
22593 * lisp/vc/vc.el (vc-print-log-internal): Pass nil
22594 GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
22595 is not specified.
22596 (vc-incoming-outgoing-internal): Always pass nil.
22597 (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
22598 call it, and don't set vc-sentinel-movepoint (bug#15322).
22599 (vc-print-root-log): Don't fetch the root working revision, nor
22600 pass it to vc-print-log-internal.
22601
22602 2015-05-02 Michael Vehrs <Michael.Burschik@gmx.de>
22603
22604 Fix display of keyboard layouts for right-to-left scripts
22605 * lisp/international/quail.el (quail-insert-kbd-layout):
22606 Force left-to-right paragraph direction.
22607
22608 2015-05-02 K. Handa <handa@gnu.org>
22609
22610 * src/cmds.c (internal_self_insert): When we insert spaces for
22611 padding, set point before the padding spaces, not after them.
22612
22613 2015-05-02 Nicolas Petton <nicolas@petton.fr>
22614
22615 * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
22616
22617 2015-05-02 Dmitry Gutov <dgutov@yandex.ru>
22618
22619 Fix etags-xref-find for references
22620 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
22621 Use `cl-mapcan'.
22622 * lisp/progmodes/etags.el (etags-xref-find): Ditto. Prompt for
22623 directory if no tags tables are loaded (bug#19468).
22624
22625 2015-05-02 Philipp Stephani <phst@google.com>
22626
22627 Update the options in whitespace-style defcustom
22628 * lisp/whitespace.el (whitespace-style): Use `set' instead of a
22629 `repeat' because the option is really set-like. Add missing
22630 options. Reorder options to match the order in the
22631 documentation. (Bug#20346)
22632
22633 2015-05-02 Eli Zaretskii <eliz@gnu.org>
22634
22635 Fix error diagnostics of c-macro-expand
22636 * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
22637 too early if no start-marker string was found -- that generally
22638 means cpp exited abnormally, and we still want to show its error
22639 messages to the user.
22640
22641 Don't require Texinfo 5.0 for Emacs documentation
22642 * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
22643 "@set txicodequotebacktick" instead of "@codequotebacktick on" and
22644 "@codequoteundirected on", respectively, to avoid requiring
22645 Texinfo 5.x for Emacs documentation.
22646
22647 2015-05-01 Simen Heggestøyl <simenheg@gmail.com>
22648
22649 * lisp/files.el (pwd):
22650 When called with a prefix argument, insert the current default
22651 directory at point.
22652
22653 2015-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
22654
22655 * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
22656 * lisp/isearch.el (isearch-mode-map): Don't inhibit
22657 function-key-map remapping for backspace (bug#20466).
22658
22659 2015-05-01 Dmitry Gutov <dgutov@yandex.ru>
22660
22661 Implement xref-find-references in etags and elisp-mode
22662 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
22663 (elisp-xref-find): Use it.
22664 * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
22665 * lisp/progmodes/xref.el (xref-collect-references):
22666 (xref--collect-reference): New functions.
22667
22668 2015-05-01 Paul Eggert <eggert@cs.ucla.edu>
22669
22670 Prefer plain characters to Texinfo circumlocutions
22671 For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
22672 'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
22673
22674 Fix single-quoting style in PDF manuals
22675 The PDF versions of the GNU manuals used curved single quotes to
22676 represent grave accent and apostrophe, which made it a pain to cut
22677 and paste code examples from them. Fix the PDF versions to use
22678 grave accent and apostrophe for Lisp source code, keystrokes, etc.
22679 This change does not affect the info files, nor does it affect
22680 ordinary uses of curved single quotes in PDF.
22681 * doc/emacs/docstyle.texi: New file, which specifies treatment for
22682 grave accent and apostrophe, as well as the document encoding.
22683 * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
22684 * doc/lispintro/emacs-lisp-intro.texi:
22685 * doc/lispref/back.texi, doc/lispref/book-spine.texi:
22686 * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
22687 * doc/misc/ada-mode.texi, doc/misc/auth.texi:
22688 * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
22689 * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
22690 * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
22691 * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
22692 * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
22693 * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
22694 * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
22695 * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
22696 * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
22697 * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
22698 * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
22699 * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
22700 * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
22701 * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
22702 * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
22703 * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
22704 * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
22705 * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
22706 * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
22707 * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
22708 * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
22709 * doc/misc/woman.texi:
22710 Use it instead of '@documentencoding UTF-8', to lessen the need for
22711 global changes like this in the future.
22712 * doc/emacs/Makefile.in (EMACS_XTRA):
22713 * doc/lispintro/Makefile.in (srcs):
22714 * doc/lispref/Makefile.in (srcs):
22715 Add dependency on docstyle.texi.
22716 * doc/misc/Makefile.in (style): New macro.
22717 (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
22718 (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
22719 Use it.
22720
22721 2015-05-01 Glenn Morris <rgm@gnu.org>
22722
22723 * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
22724
22725 * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
22726 (help-fns--signature): Declare.
22727
22728 * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
22729
22730 2015-05-01 Nicolas Petton <nicolas@petton.fr>
22731
22732 New macro seq-let, providing destructuring support to seq.el
22733 * lisp/emacs-lisp/seq.el (seq-let): New macro. `seq-let' is similar
22734 to `cl-destructuring-bind' but works on all sequence types supported
22735 by `seq.el'. Bump version number to 1.6.
22736 * test/automated/seq-tests.el: Add tests for seq-let.
22737 * doc/lispref/sequences.texi: Add documentation for seq-let.
22738
22739 2015-05-01 Pontus Michael <m.pontus@gmail.com>
22740
22741 * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
22742
22743 2015-05-01 Glenn Morris <rgm@gnu.org>
22744
22745 * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
22746
22747 2015-05-01 Artur Malabarba <bruce.connor.am@gmail.com>
22748
22749 * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
22750 This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
22751 This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
22752 With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
22753 (Bug#20445).
22754
22755 2015-05-01 K. Handa <handa@gnu.org>
22756
22757 * lisp/international/mule-cmds.el (input-method-use-echo-area):
22758 Change :type to 'boolean.
22759
22760 2015-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
22761
22762 Start using proportional fonts in eww by default
22763 * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
22764 it seems to work well.
22765
22766 Fix links in tables in shr
22767 * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
22768 makes (some) links in tables not work.
22769
22770 2015-05-01 Jan D <jan.h.d@swipnet.se>
22771
22772 * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
22773
22774 2015-04-30 Glenn Morris <rgm@gnu.org>
22775
22776 * lisp/emacs-lisp/ert.el (ert--special-operator-p):
22777 Update for 2015-02-08 change to indirect-function.
22778
22779 * lisp/term/ns-win.el (ns-get-selection-internal):
22780 Remove declaration for function deleted 2014-10-21.
22781
22782 * lisp/dom.el: Load subr-x when compiling, for when-let.
22783
22784 Silence some compilation warnings
22785 * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
22786 * lisp/emulation/cua-base.el (delete-active-region):
22787 * lisp/net/net-utils.el (w32-get-console-output-codepage):
22788 * lisp/term/ns-win.el (ns-own-selection-internal)
22789 (ns-disown-selection-internal, ns-selection-owner-p)
22790 (ns-selection-exists-p, ns-get-selection):
22791 Declare for compiler.
22792
22793 Function declaration updates prompted by 'make check-declare'
22794 * lisp/emacs-lisp/package.el (lm-homepage):
22795 * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
22796 * lisp/gnus/mm-decode.el (libxml-parse-html-region):
22797 * lisp/gnus/mml.el (libxml-parse-html-region):
22798 * lisp/gnus/nnrss.el (libxml-parse-html-region):
22799 * lisp/net/eww.el (libxml-parse-html-region):
22800 * lisp/net/shr.el (libxml-parse-html-region):
22801 * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
22802 * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
22803 * lisp/vc/vc-git.el (vc-annotate-convert-time):
22804 * lisp/vc/vc-hg.el (vc-annotate-convert-time):
22805 * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
22806 * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
22807 Update declaration.
22808
22809 Remove compatibility code for 20-year old function renaming
22810 * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
22811 Make it an obsolete alias.
22812 (idlwave-shell-filter): Change all uses to comint-output-filter.
22813
22814 2015-04-30 Tassilo Horn <tsdh@gnu.org>
22815
22816 Add ace-window face config
22817 * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
22818 configuration.
22819
22820 2015-04-30 Paul Eggert <eggert@cs.ucla.edu>
22821
22822 Unclutter 'make doc' output a bit
22823 * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
22824 Use make subst rather than sh IFS to split target string apart.
22825 This makes 'make' output easier to follow.
22826
22827 Merge from gnulib
22828 * doc/misc/texinfo.tex: Update from gnulib.
22829
22830 2015-04-30 Artur Malabarba <bruce.connor.am@gmail.com>
22831
22832 * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
22833 (package-menu--print-info): Obsolete.
22834 (package-menu--print-info-simple): New function.
22835 (package-menu--refresh): Use it, simplify code, and improve
22836 performance.
22837 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
22838 Tiny performance improvement.
22839
22840 * lisp/emacs-lisp/package.el (package--message): inhibit-message.
22841
22842 2015-04-29 Paul Eggert <eggert@cs.ucla.edu>
22843
22844 Omit -Wstrict-overflow workaround in GCC 5
22845 * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
22846 if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
22847
22848 Merge from gnulib
22849 This incorporates:
22850 2015-04-29 extern-inline: no need for workaround in GCC 5.1
22851 2015-04-26 file-has-acl: port to CentOS 6
22852 * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
22853
22854 2015-04-29 Helmut Eller <eller.helmut@gmail.com>
22855
22856 Set next-error-* in xref--xref-buffer-mode
22857 * lisp/progmodes/xref.el (xref--xref-buffer-mode):
22858 Set `next-error-function' and `next-error-last-buffer'.
22859 (xref--next-error-function): New function.
22860 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
22861
22862 2015-04-29 Fabián Ezequiel Gallina <fgallina@gnu.org>
22863
22864 python.el: Fix warnings on looking-back calls missing LIMIT
22865 * lisp/progmodes/python.el (python-shell-accept-process-output):
22866 Pass LIMIT arg to looking-back.
22867
22868 2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
22869
22870 * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
22871 (package--download-and-read-archives): Use pushnew instead of
22872 append. If something terrible happened during a previous
22873 download, simply refreshing should now make things work again.
22874
22875 2015-04-29 Dmitry Gutov <dgutov@yandex.ru>
22876
22877 Introduce etags-xref-find-definitions-tag-order
22878 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
22879 New variable.
22880 (etags--xref-find-definitions): Use it (bug#19468).
22881
22882 2015-04-29 Eli Zaretskii <eliz@gnu.org>
22883
22884 PATH- and completion-related fixes in Eshell on MS-Windows
22885 * lisp/eshell/esh-ext.el (eshell-search-path): When running on
22886 MS-Windows, prepend "." to list of directories produced from PATH,
22887 as Windows always implicitly searches the current directory first.
22888 (eshell-force-execution): Make it have a non-nil default value on
22889 MS-Windows and MS-DOS.
22890 * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
22891 eshell-force-execution is non-nil, complete on readable files and
22892 directories, not only executables. When running on MS-Windows,
22893 prepend "." to list of directories produced from PATH, as Windows
22894 always implicitly searches the current directory first.
22895
22896 2015-04-29 Sam Steingold <sds@gnu.org>
22897
22898 Bury RCIRC buffers when there is no activity
22899 * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
22900 (rcirc-bury-buffers): New function.
22901 (rcirc-next-active-buffer): When there is no new activity, use
22902 `rcirc-bury-buffers' to hide all RCIRC buffers.
22903
22904 2015-04-29 Krzysztof Jurewicz <krzysztof.jurewicz@gmail.com> (tiny change)
22905
22906 Fix DBUS query result parsing for secrets-search-items
22907 * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
22908 parsing. The function assumed that return value of the
22909 SearchItems method called on a collection is a list of two lists,
22910 however this is true only when no collection is specified. GNOME
22911 had used to incorrectly return a list of two lists in both cases,
22912 but this was already fixed:
22913 https://bugzilla.gnome.org/show_bug.cgi?id=695115 . Also fix an
22914 incorrect information in the secrets-search-items’ docstring.
22915 (Bug#20449)
22916
22917 2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
22918
22919 * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
22920 Use `inhibit-message' instead of hiding the previous message
22921 with (message nil).
22922
22923 2015-04-29 Oleh Krehel <ohwoeowho@gmail.com>
22924
22925 Remove the deprecated INTERNAL_FIELD macro by expanding it
22926 * src/lisp.h (INTERNAL_FIELD): Remove.
22927 (DEFVAR_KBOARD): Modify accordingly.
22928 * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
22929 * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
22930 * src/buffer.c (compact_buffer): Use BVAR.
22931
22932 2015-04-29 Glenn Morris <rgm@gnu.org>
22933
22934 Replace an obsolete function alias
22935 * lisp/isearch.el (isearch-yank-x-selection):
22936 * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
22937 (mouse-drag-secondary-moving):
22938 * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
22939 Replace obsolete alias x-get-selection with gui-get-selection.
22940
22941 2015-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
22942
22943 * lisp/mail/rmailsum.el: Use lexical-binding.
22944
22945 2015-04-29 Glenn Morris <rgm@gnu.org>
22946
22947 * test/automated/package-test.el (package-test-update-archives-async):
22948 Skip test on hydra.nixos.org.
22949
22950 2015-04-28 Glenn Morris <rgm@gnu.org>
22951
22952 * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
22953 (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
22954 (foldout-mouse-hide-or-exit): Use new names for outline functions.
22955
22956 * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
22957 Update for 2014-06-26 hideif.el change.
22958
22959 * lisp/mail/rmailsum.el: Fix search for encoded subjects. (Bug#19088)
22960 (rmail--decode-and-apply): New function.
22961 (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
22962
22963 * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
22964
22965 2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
22966
22967 * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
22968 (package-menu--refresh): Delegate obsolete-hiding to
22969 `package--remove-hidden'.
22970 (package--remove-hidden): Disregard high-priority package if it is
22971 older than the installed one.
22972
22973 2015-04-28 Paul Eggert <eggert@cs.ucla.edu>
22974
22975 Update source file encoding list
22976 Update admin/notes/unicode, along with coding system cookies in
22977 other files, so that the two match each other better.
22978 * admin/notes/unicode: lisp/language/ethio-util.el and
22979 lisp/language/ethiopic.el also use utf-8-emacs.
22980 * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
22981 * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
22982 * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
22983 * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
22984 * etc/refcards/sk-survival.tex:
22985 Add "coding: utf-8" so that this file is not mishandled in a
22986 Latin-1 or Big-5 locale.
22987 * lisp/international/robin.el, lisp/org/ox-ascii.el:
22988 Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
22989 * lisp/language/ethio-util.el: Fix trailer.
22990
22991 2015-04-28 Eli Zaretskii <eliz@gnu.org>
22992
22993 Fix synchronous invocation of Ispell
22994 * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
22995 value to ispell-process-directory before calling ispell-init-process.
22996 Don't call set-process-coding-system if ispell-async-processp is nil.
22997 (Bug#20448)
22998
22999 2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
23000
23001 * lisp/emacs-lisp/package.el: Skip space and comments in init file
23002 (package--ensure-init-file): Insert snippet at first
23003 non-whitespace non-comments line. Respects local-vars at the top
23004 of the file.
23005
23006 2015-04-28 Glenn Morris <rgm@gnu.org>
23007
23008 * lisp/mail/rmail.el (rmail-copy-headers):
23009 Handle rmail-nonignored-headers being nil. (Bug#18878)
23010
23011 * lisp/subr.el (delay-mode-hooks): Fix doc typo.
23012
23013 * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
23014 Don't get confused by a bzrlib version mismatch warning.
23015
23016 2015-04-27 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23017
23018 Change default location of EUDC options file
23019 * etc/NEWS: Document change to EUDC options file's default location.
23020 * lisp/net/eudc-vars.el (eudc-options-file): Use
23021 `locate-user-emacs-file' to change default options file location.
23022
23023 2015-04-27 Glenn Morris <rgm@gnu.org>
23024
23025 * test/automated/package-test.el (package-test-update-archives-async):
23026 Try to handle the test server script dying.
23027
23028 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
23029
23030 * lisp/saveplace.el (save-place-mode): New minor mode.
23031 (save-place): Redefine as an obsolete alias.
23032
23033 * lisp/midnight.el: Make it a minor mode. Allow predicates.
23034 * lisp/midnight.el: Use lexical-binding.
23035 (midnight-mode): Make it a proper minor mode.
23036 (midnight-buffer-display-time): Make arg non-optional.
23037 (midnight-find): Remove.
23038 (clean-buffer-list-kill-never-regexps)
23039 (clean-buffer-list-kill-regexps): Tweak type for new function choice.
23040 (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
23041 contain functions.
23042 (clean-buffer-list): Use cl-find.
23043 Allow clean-buffer-list-kill-never-regexps to contain functions.
23044
23045 2015-04-27 Nicolas Petton <nicolas@petton.fr>
23046
23047 Bump version of seq.el to 1.5
23048 * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
23049 from seq-doseq. Bump version number of seq.el.
23050
23051 2015-04-27 Glenn Morris <rgm@gnu.org>
23052
23053 * lisp/mail/rmail.el (rmail-reply):
23054 Decode subject before matching "Re:" prefix. (Bug#20396)
23055
23056 2015-04-27 Artur Malabarba <bruce.connor.am@gmail.com>
23057
23058 * lisp/emacs-lisp/package.el: Small improvements
23059 (package--with-work-buffer-async): More informative error.
23060 (package-install-user-selected-packages): Rename to
23061 `package-install-selected-packages'.
23062
23063 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
23064
23065 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
23066 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
23067 (eieio--class-make): Remove leftover `tag'.
23068
23069 2015-04-27 Glenn Morris <rgm@gnu.org>
23070
23071 * lisp/gnus/message.el (gnus-extract-address-components):
23072 Remove bogus declaration that was masking previous problem.
23073
23074 2015-04-27 Nicolas Graner <nicolas.graner@u-psud.fr> (tiny change)
23075
23076 * lisp/gnus/message.el (message-insert-formatted-citation-line):
23077 Fix typo. (Bug#20318)
23078
23079 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
23080
23081 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
23082
23083 * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
23084 * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
23085 the buffer in yet another frame.
23086 (reftex-toc-visit-location): Make sure toc-window has focus at the end
23087 when `final' is nil.
23088 (reftex--rebuilding-toc): Defvar to avoid `boundp' and
23089 silence warnings. Use `--' to clarify that it's internal.
23090 (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
23091 (reftex-toc-promote): Clarify unused argument.
23092 (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
23093 Add `reftex--' prefix. Fix all users.
23094 (reftex-toc-promote-prepare): Use _ for dummy variable.
23095 (reftex-toc-restore-region): Rename `m.
23096
23097 2015-04-27 Eli Zaretskii <eliz@gnu.org>
23098
23099 Fix a typo in bibtex.el
23100 * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
23101 last change. (Bug#20429)
23102
23103 Fix redisplay of frame after loading new fonts
23104 * src/xdisp.c (redisplay_internal): When retrying redisplay of
23105 a frame because new fonts were loaded, disable all redisplay
23106 optimizations on that frame by calling SET_FRAME_GARBAGED.
23107 (Bug#20410)
23108
23109 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
23110
23111 * lisp/info.el (Info-menu): Properly provide the `default'
23112 (Bug#20391)
23113
23114 * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
23115 Catch errors from documentation (bug#20418).
23116 (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
23117
23118 2015-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
23119
23120 * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
23121 Remove redundant ":group 'package".
23122
23123 2015-04-26 Eli Zaretskii <eliz@gnu.org>
23124
23125 Fix a typo in rmail.el
23126 * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
23127 last commit. (Bug#20429)
23128
23129 2015-04-26 Dmitry Gutov <dgutov@yandex.ru>
23130
23131 Introduce xref-prompt-for-identifier
23132 * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
23133 (xref--read-identifier): Use it
23134 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
23135
23136 2015-04-26 João Távora <joaotavora@gmail.com>
23137
23138 `tex-insert-quote' after single `'' opens quotes instead of closing
23139 Without this, it's very hard to precede double quotes with the
23140 apostrophe character, i.e. insert the sequence '``
23141 (quote-backquote-backquote), commonly useful in portuguese, for
23142 instance.
23143 * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
23144 preceding chars making `tex-insert-quote' be in the "opening" context.
23145
23146 2015-04-25 Dmitry Gutov <dgutov@yandex.ru>
23147
23148 Pass `id' to `completing-read' as def instead of initial input
23149 * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
23150 `completing-read' as the default value instead of initial input
23151 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
23152
23153 2015-04-25 Paul Eggert <eggert@cs.ucla.edu>
23154
23155 Don't freeze with unreadable processes
23156 Don't freeze if an exiting process can't be read from. (Bug#19860).
23157 This fixes a bug I introduced in
23158 2014-07-08T07:24:07Z@eggert@cs.ucla.edu
23159 "* process.c: Add sanity checks for file descriptors."
23160 Dmitry Gutov did most of the legwork in finding the problem.
23161 * src/process.c (wait_reading_process_output):
23162 Treat non-running processes that can't be read from
23163 the same as other non-running processes.
23164
23165 2015-04-25 Alan Mackenzie <acm@muc.de>
23166
23167 Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
23168 * lisp/subr.el (remove-yank-excluded-properties): Put
23169 `with-silent-modifications' around only the last three lines of code.
23170
23171 2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
23172
23173 * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
23174 (package--all-keywords): Deleted variable.
23175
23176 * etc/NEWS: Document package-hiding functionality.
23177
23178 2015-04-25 Eli Zaretskii <eliz@gnu.org>
23179
23180 * lisp/window.el (recenter-last-op): Doc fix. (Bug#20419)
23181
23182 Clarify the doc string of 'replace-regexp-in-string'
23183 * lisp/subr.el (replace-regexp-in-string): Doc fix. (Bug#20395)
23184
23185 Improve doc string of 'insert-buffer-substring'
23186 * src/editfns.c (Finsert_buffer_substring): Doc fix. (Bug#20421)
23187
23188 MS-Windows followup for the recent gnulib update
23189 * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
23190 acl-internal.c.
23191
23192 2015-04-24 Paul Eggert <eggert@cs.ucla.edu>
23193
23194 Spelling fixes
23195
23196 Merge from gnulib
23197 This incorporates:
23198 2015-04-24 file-has-acl: new module, split from acl
23199 2015-04-24 manywarnings: add GCC 5.1 warnings
23200 2015-04-21 lstat: fix cross-compilation 'ln -s' problem
23201 2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
23202 2015-04-15 acl: On Linux, check for acls without libacl
23203 2015-04-14 tempname: avoid unused parameter warnings (trivial)
23204 * lib/acl-internal.c: New file, from gnulib.
23205 * lib/file-has-acl.c: Remove; no longer imported from gnulib.
23206 * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
23207 * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
23208 Update from gnulib.
23209
23210 Port --enable-gcc-warnings to GCC 5.1 x86-64
23211 * lib-src/ebrowse.c (dump_sym):
23212 * lib-src/hexl.c (main):
23213 * src/ccl.c (ccl_driver):
23214 * src/character.c (string_escape_byte8):
23215 * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
23216 * src/gnutls.c (Fgnutls_boot):
23217 * src/gtkutil.c (xg_check_special_colors):
23218 * src/image.c (x_build_heuristic_mask):
23219 * src/print.c (safe_debug_print, print_object):
23220 * src/term.c (produce_glyphless_glyph):
23221 * src/xdisp.c (get_next_display_element)
23222 (produce_glyphless_glyph):
23223 * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
23224 Don't use a signed format to print an unsigned integer, or vice
23225 versa. GCC 5.1's new -Wformat-signedness option warns about this.
23226 * src/image.c (png_load_body, jpeg_load_body):
23227 Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
23228
23229 2015-04-24 Tassilo Horn <tsdh@gnu.org>
23230
23231 Add new faces to tsdh-light-theme
23232 * etc/themes/tsdh-light-theme.el (tsdh-light): New face
23233 definitions for Info-quoted, ace-jump-face-foreground,
23234 hl-paren-face, show-paren-match, and show-paren-mismatch.
23235
23236 2015-04-24 Nicolas Petton <nicolas@petton.fr>
23237
23238 * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
23239
23240 2015-04-24 Glenn Morris <rgm@gnu.org>
23241
23242 * build-aux/gitlog-to-emacslog:
23243 Use raw log format rather than wrapped one.
23244
23245 2015-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
23246
23247 * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
23248 (seq-doseq): Fix out-of-scope binding.
23249 Don't call `seq-length at every iteration.
23250 Reduce `if's from 3 to 2 per iteration.
23251 (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
23252
23253 2015-04-24 Glenn Morris <rgm@gnu.org>
23254
23255 * lisp/textmodes/text-mode.el (text-mode-hook):
23256 Move text-mode-hook-identify to default.
23257
23258 * lisp/mouse.el (minor-mode-menu-from-indicator):
23259 Handle non-function members of minor-mode-map-alist. (Bug#20201)
23260
23261 * lisp/help-fns.el (describe-function): More type checking.
23262 (describe-function-1): Handle changed symbol-function. (Bug#20201)
23263
23264 * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
23265 (Bug#20325)
23266
23267 2015-04-24 Andreas Schwab <schwab@linux-m68k.org>
23268
23269 shr: strip leading whitespace when expanding URLs
23270 * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
23271
23272 2015-04-24 Eli Zaretskii <eliz@gnu.org>
23273
23274 Clarify "co-authored" some more
23275
23276 * CONTRIBUTE: Clarify "co-authored-by". (Bug#20400)
23277
23278 Clarify doc strings of functions that search for properties
23279 * src/textprop.c (Fnext_char_property_change)
23280 (Fprevious_char_property_change)
23281 (Fnext_single_char_property_change)
23282 (Fprevious_single_char_property_change, Fnext_property_change)
23283 (Fnext_single_property_change, Fprevious_property_change)
23284 (Fprevious_single_property_change): Clarify doc strings wrt return
23285 value and the optional LIMIT argument. (Bug#20411)
23286
23287 2015-04-24 Glenn Morris <rgm@gnu.org>
23288
23289 * test/automated/message-mode-tests.el (message-mode-propertize):
23290 Handle non-writable HOME; eg on hydra.nixos.org.
23291
23292 2015-04-23 Eli Zaretskii <eliz@gnu.org>
23293
23294 Avoid starting threads by w32-shell-execute
23295 * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
23296 local file names, before invoking ShellExecute. (Bug#20220)
23297
23298 2015-04-23 Martin Rudalics <rudalics@gmx.at>
23299
23300 Fix following doc-links in `widget-documentation-link-action'
23301 * lisp/wid-edit.el (widget-documentation-link-action): Make
23302 following doc-links less simplistic (Bug#20398).
23303
23304 2015-04-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23305
23306 Improve EUDC manual
23307 * doc/misc/eudc.texi (Troubleshooting):
23308 New LDAP troubleshooting subsection.
23309
23310 2015-04-22 Paul Eggert <eggert@cs.ucla.edu>
23311
23312 Omit needless "\ " after multibyte then newline
23313 * src/print.c: Include <c-ctype.h>, for c_isxdigit.
23314 (print_object): When print-escape-multibyte is non-nil and a
23315 multibyte character is followed by a newline or formfeed, followed
23316 by a hex digit, don't output a needless "\ " before the hex digit.
23317 * test/automated/print-tests.el (print-hex-backslash): New test.
23318
23319 2015-04-22 Oleh Krehel <ohwoeowho@gmail.com>
23320
23321 Add a new `inhibit-message' variable
23322 * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
23323 (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
23324 `inhibit_message' is non-zero.
23325 * etc/NEWS: Add an entry.
23326 * doc/lispref/display.texi: Add an entry for `inhibit-message',
23327 mention it in `message'.
23328
23329 2015-04-22 Martin Rudalics <rudalics@gmx.at>
23330
23331 Fix last fix in `display-buffer-record-window'.
23332 * lisp/window.el (display-buffer-record-window): Fix last fix.
23333
23334 2015-04-22 Eli Zaretskii <eliz@gnu.org>
23335
23336 Minor edits in CONTRIBUTE
23337 * CONTRIBUTE: Rearrange instructions about log messages.
23338 Use "Git" capitalized all over.
23339 Use 2 spaces between sentences.
23340
23341 2015-04-22 Artur Malabarba <bruce.connor.am@gmail.com>
23342
23343 * lisp/files.el (basic-save-buffer): Fix argument.
23344
23345 * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
23346 In case `(and (null custom-file) init-file-had-error)' do the same
23347 thing we'd do if `(null user-init-file)', which is to either error out
23348 or return nil. This is in line with `custom-save-all' which would
23349 throw an error in that situation. (Bug#20355)
23350
23351 * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
23352 (package-menu-hide-low-priority): New variable, see its doc.
23353 (package-archive-priorities): Update doc.
23354 (package-desc-priority): New function.
23355 (package-desc-priority-version): Use it.
23356 (package--remove-hidden): New function.
23357 (package-menu--refresh): Use it.
23358
23359 * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
23360 (package-menu--hide-obsolete): New variable.
23361 (package--remove-hidden): Use it.
23362 (package-menu-hide-obsolete): New interactive function to toggle
23363 the variable.
23364 (package--quick-help-keys): Document it.
23365 (package-menu-async): Add :version tag.
23366 (package-menu-mode-map): Bind package-menu-hide-obsolete.
23367 (package-desc-status): Indicate non-installed obsolete packages as
23368 avail-obso.
23369 (package-menu-mark-install): Allow installation of avail-obso.
23370 (package-menu--status-predicate): Sort avail-obso with available.
23371
23372 2015-04-22 Alan Mackenzie <acm@muc.de>
23373
23374 On C-y, stop some text property entries being written into buffer-undo-list
23375 * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
23376 `with-silent-modifications'.
23377
23378 2015-04-22 Martin Rudalics <rudalics@gmx.at>
23379
23380 In display-buffer-record-window record selected window if necessary
23381 * lisp/window.el (display-buffer-record-window): Store selected window
23382 if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
23383
23384 2015-04-22 Tassilo Horn <tsdh@gnu.org>
23385
23386 Fix reftex-citation bug
23387 * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
23388 Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
23389 integration is enabled and there are no citations in the document
23390 so far.
23391
23392 2015-04-21 Dmitry Gutov <dgutov@yandex.ru>
23393
23394 Add or reset based on the presence of MERGE_HEAD
23395 * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
23396 `vc-git-resolve-when-done' to `after-save-hook' in either case.
23397 (vc-git-conflicted-files): Add a TODO.
23398 (vc-git-resolve-when-done): Depending on the presence of
23399 MERGE_HEAD, either update the resolved file in the index, or
23400 remove it from there. (Bug#20292)
23401
23402 2015-04-21 Glenn Morris <rgm@gnu.org>
23403
23404 * lisp/custom.el (custom-declare-group): No need to purecopy
23405 custom-current-group-alist members following recent change to set
23406 it to nil before dumping.
23407
23408 * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
23409 (Bug#20399)
23410
23411 2015-04-21 Daniel Colascione <dancol@dancol.org>
23412
23413 Unbreak no-op buffer save message
23414 * lisp/files.el (basic-save-buffer): Accept called-interactively as
23415 an argument instead of directly invoking called-interactively-p,
23416 which will always yield nil in that context.
23417
23418 2015-04-21 Alan Mackenzie <acm@muc.de>
23419
23420 CC Mode: Do nothing in before/after-change-functions for text
23421 property changes
23422 Fixes bug#20266.
23423 * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
23424 yank-handled-properties buffer local, and remove 'category from it.
23425 (c-called-from-text-property-change-p): New function.
23426 (c-before-change): Don't do anything if a call of the new function
23427 returns non-nil.
23428 (c-after-change): Don't do much if a call of the new function returns
23429 non-nil.
23430 (c-extend-after-change-region): Put changes to text property 'fontified
23431 inside c-save-buffer-state.
23432
23433 2015-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
23434
23435 Fix byte-compiler warnings about looking-back
23436 * lisp/vc/log-view.el (log-view-end-of-defun-1):
23437 * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
23438 * lisp/textmodes/reftex-ref.el (reftex-goto-label):
23439 * lisp/textmodes/bibtex.el (bibtex-insert-kill):
23440 * lisp/progmodes/sh-script.el (sh--maybe-here-document):
23441 * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
23442 * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
23443 * lisp/org/org.el (org-insert-heading, org-sort-entries):
23444 * lisp/org/org-mouse.el (org-mouse-end-headline)
23445 (org-mouse-context-menu):
23446 * lisp/org/org-clock.el (org-clock-cancel):
23447 * lisp/man.el (Man-default-man-entry):
23448 * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
23449 (rmail-ensure-blank-line):
23450 * lisp/mail/footnote.el (Footnote-delete-footnote):
23451 * lisp/mail/emacsbug.el (report-emacs-bug):
23452 * lisp/info.el (Info-follow-reference, Info-fontify-node):
23453 * lisp/info-look.el (info-lookup-guess-custom-symbol):
23454 * lisp/help-fns.el (help-fns--key-bindings):
23455 * lisp/files.el (hack-local-variables):
23456 * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
23457 (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
23458 (viper-complete-filename-or-exit):
23459 * lisp/emulation/viper-cmd.el (viper-backward-indent):
23460 * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
23461 * lisp/emacs-lisp/elint.el (elint-get-top-forms):
23462 * lisp/cus-edit.el (custom-face-edit-value-create):
23463 * lisp/calendar/todo-mode.el (todo-set-item-priority)
23464 (todo-filter-items-1, todo-convert-legacy-files)
23465 (todo-prefix-overlays): Add explicit second arg to looking-back.
23466
23467 2015-04-20 Glenn Morris <rgm@gnu.org>
23468
23469 Avoid non-nil current-load-list at startup
23470 * src/process.c (init_process_emacs): Move Fprovide statement...
23471 (syms_of_process): ... to here.
23472
23473 * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
23474
23475 * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
23476 in emacs -Q.
23477
23478 2015-04-20 Ludovic Courtès <ludo@gnu.org>
23479
23480 * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
23481 (Bug#20330)
23482
23483 2015-04-20 Glenn Morris <rgm@gnu.org>
23484
23485 * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
23486
23487 Tweak exec-path in uninstalled case
23488 * src/callproc.c (init_callproc): If running uninstalled, do not
23489 include eventual installation libexec directory in exec-path.
23490
23491 2015-04-20 Artur Malabarba <bruce.connor.am@gmail.com>
23492
23493 * lisp/emacs-lisp/package.el: Filter by multiple keywords and
23494 cache keywords.
23495 (package-menu-filter): Accept a list of keywords.
23496 (package--all-keywords): New variable to cache known keywords.
23497 (package-all-keywords): Populate it if necessary.
23498 (package-refresh-contents): Reset it.
23499
23500 * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
23501 (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
23502 as special keywords which match agains package archive and status
23503 respectively.
23504 * etc/NEWS: Document it.
23505
23506 2015-04-20 Eli Zaretskii <eliz@gnu.org>
23507
23508 Describe and index "empty overlays".
23509 * doc/lispref/display.texi (Overlays): Improve indexing.
23510 (Managing Overlays): Describe "empty" overlays.
23511 (Overlay Properties, Finding Overlays): Add cross-reference to
23512 where empty overlays are described.
23513
23514 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
23515
23516 Spelling fixes
23517
23518 Quote 'like this' in top-level files
23519 * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
23520 Prefer to single-quote 'like this' (instead of the older style
23521 `like this').
23522 * configure.ac: Fix some space-before-tab problems that 'git commit'
23523 complained about.
23524
23525 Use bool for boolean in textprop.c, undo.c
23526 * src/textprop.c (soft, hard): Now constants instead of macros.
23527 (validate_plist): Rewrite to avoid need for boolean local.
23528 (interval_has_all_properties, interval_has_some_properties)
23529 (interval_has_some_properties_list, add_properties)
23530 (remove_properties, get_char_property_and_overlay)
23531 (Fnext_single_char_property_change)
23532 (Fprevious_single_char_property_change, add_text_properties_1)
23533 (Fremove_text_properties, Fremove_list_of_text_properties)
23534 (copy_text_properties):
23535 * src/tparam.c (tparam1):
23536 * src/undo.c (record_change, record_property_change)
23537 (syms_of_undo):
23538 Use 'true' and 'false' for booleans.
23539
23540 2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
23541
23542 * lisp/vc/vc-git.el (vc-git-find-file-hook):
23543 Call `smerge-start-session' even when dealing with a stash
23544 conflict (bug#20292).
23545
23546 2015-04-19 Vibhav Pant <vibhavp@gmail.com>
23547
23548 Add option to eshell/clear to clear scrollback.
23549 * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
23550 (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
23551 scrollback contents are cleared.
23552 * etc/NEWS: Describe change.
23553 * doc/misc/eshell.texi: Add entry for `clear'.
23554
23555 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
23556
23557 * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
23558 where either will do.
23559
23560 2015-04-19 Steve Purcell <steve@sanityinc.com>
23561
23562 Assume package archive-contents are UTF8-encoded
23563 * lisp/emacs-lisp/package.el (package--read-archive-file):
23564 Set `coding-system-for-read' explicitly to 'utf-8 when reading the
23565 downloaded and cached archive-contents files, so that non-ASCII
23566 characters in package descriptions are displayed correctly in the
23567 `list-packages' menu. (Bug#20231)
23568
23569 2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
23570
23571 Abort when looking at stashed changes
23572 * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
23573 stashed changes (bug#20292).
23574
23575 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
23576
23577 Refactor low-level printing for simplicity
23578 * src/print.c (PRINTDECLARE): Remove. Move its contents into
23579 PRINTPREPARE; doable now that we assume C99. All callers changed.
23580 (PRINTCHAR): Remove, as it adds more mystery than clarity.
23581 All callers changed.
23582 (strout): Assume that caller computes length. All callers changed.
23583 (print_c_string): New function.
23584 (write_string, write_string_1): Compute length instead of asking
23585 the caller to compute it. All callers changed.
23586 (write_string): Simplify by using write_string_1.
23587 (write_string_1): Simplify by using print_c_string.
23588 (Fterpri): Compute default val more clearly.
23589 (Fprin1_to_string, print_object):
23590 Assume C99 to avoid unnecessary nesting.
23591 (print_object): Prefer print_c_string to multiple printchar, or
23592 to calling strout with -1 length. Coalesce into sprintf when
23593 this is easy.
23594
23595 2015-04-18 Paul Eggert <eggert@cs.ucla.edu>
23596
23597 Prefer "Bug#1234" in commit messages (Bug#20325)
23598 * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
23599 as this isn't useful for Git.
23600 * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
23601
23602 2015-04-18 Glenn Morris <rgm@gnu.org>
23603
23604 * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
23605 (Bug#19506)
23606
23607 2015-04-18 Tom Willemse <tom@ryuslash.org> (tiny change)
23608
23609 * lisp/elec-pair.el (electric-pair-post-self-insert-function):
23610 Do not use `chomp' as a function. (Bug#19505)
23611
23612 2015-04-18 Glenn Morris <rgm@gnu.org>
23613
23614 * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
23615
23616 * doc/emacs/misc.texi (Sorting): Small edit.
23617 (Bug#19896)
23618
23619 * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
23620
23621 2015-04-18 Simen Heggestøyl <simenheg@gmail.com>
23622
23623 css-mode.el: Support multi-line comment filling
23624 (Bug#20256)
23625 * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
23626 comment filling.
23627 (css-adaptive-fill): New function.
23628 (css-mode): Set `adaptive-fill-function'.
23629 (scss-mode): Set `comment-continue'.
23630
23631 2015-04-18 Nicolas Petton <nicolas@petton.fr>
23632
23633 * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
23634 Better error messages.
23635
23636 2015-04-18 Ivan Radanov Ivanov <ivanradanov@yahoo.co.uk> (tiny change)
23637
23638 Minor improvements in Bulgarian input methods
23639 * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
23640 Replace U+042C with U+045D, as the former character is not used in
23641 the modern Bulgarian language.
23642 (Bug#20350)
23643
23644 2015-04-17 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23645
23646 Improve EUDC manual
23647 * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
23648 authentication schemes. Add index items. Shorten example server
23649 name.
23650
23651 2015-04-17 Dmitry Gutov <dgutov@yandex.ru>
23652
23653 Don't show both feature and function with the same name
23654 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
23655 Don't show both feature and function with the same name.
23656
23657 (elisp--xref-identifier-location): Skip variable, if it's also
23658 a function
23659 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
23660 Avoid returning both the variable and the function for the same
23661 minor mode.
23662
23663 2015-04-17 Wolfgang Jenkner <wjenkner@inode.at>
23664
23665 Fix fontification of keywords clobbered by the prompt
23666 * lisp/comint.el (comint-output-filter): Remove the uses of
23667 with-silent-modifications I introduced as part of the last change.
23668 This fixes, e.g., erratically missing highlighting when running
23669 ./configure --help; ./configure in a shell-mode buffer with
23670 compilation-shell-minor-mode turned on.
23671
23672 2015-04-17 Glenn Morris <rgm@gnu.org>
23673
23674 * admin/authors.el (authors-valid-file-names)
23675 (authors-renamed-files-alist): Additions.
23676
23677 2015-04-17 Stefan Monnier <monnier@iro.umontreal.ca>
23678
23679 * lisp/indent.el (indent-region): Don't deactivate the mark.
23680 (Bug#20357)
23681
23682 2015-04-17 Sam Steingold <sds@gnu.org>
23683
23684 * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
23685
23686 2015-04-16 Leo Liu <sdl.web@gmail.com>
23687
23688 * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
23689
23690 2015-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
23691
23692 * lisp/erc/erc-pcomplete.el (erc-pcomplete):
23693 Don't use `pcomplete' any more.
23694
23695 2015-04-16 Glenn Morris <rgm@gnu.org>
23696
23697 * admin/authors.el (authors-lax-changelogs): Update for erc changes.
23698
23699 2015-04-16 Eli Zaretskii <eliz@gnu.org>
23700
23701 Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
23702 * configure.ac (LIBJPEG): Leave it empty for MinGW.
23703
23704 2015-04-16 Glenn Morris <rgm@gnu.org>
23705
23706 * lisp/replace.el (query-replace-from-to-separator):
23707 Delay initialization to avoid rogue setting after startup.
23708
23709 2015-04-16 Paul Eggert <eggert@cs.ucla.edu>
23710
23711 Pre-4.6 GCC succeeds with unknown option
23712 * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
23713 (Bug#20338)
23714
23715 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
23716
23717 '[:graph:]' now excludes whitespace, not just ' '
23718 * doc/lispref/searching.texi (Char Classes):
23719 * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
23720 sans whitespace (not sans space).
23721 * src/character.c (graphicp): Exclude all Unicode whitespace chars,
23722 not just space.
23723 * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
23724
23725 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
23726
23727 * lisp/subr.el (substitute-key-definition-key, special-form-p)
23728 (macrop): Drop deprecated second arg to indirect-function.
23729 (looking-back): Make the second arg non-optional.
23730
23731 * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
23732 command is actually sent to the shell.
23733
23734 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
23735
23736 Port jpeg configuration to Solaris 10 with Sun C
23737 * configure.ac: Check for jpeglib 6b by trying to link it, instead
23738 of relying on cpp magic that has problems in practice. Check for
23739 both jpeglib.h and jerror.h features. Remove special case for
23740 mingw32, which should no longer be needed (and if it were needed,
23741 should now be addressable by hotwiring emacs_cv_jpeglib).
23742 (Bug#20332)
23743
23744 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
23745
23746 Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
23747 * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
23748 Move to elisp-mode.el.
23749 (lisp-mode-variables): (Re)move elisp-specific settings.
23750 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
23751 from lisp-mode-variables.
23752 (elisp--font-lock-flush-elisp-buffers): New function, moved from
23753 lisp-mode.el.
23754
23755 * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
23756 Avoid pathological slowdown at top-level in large file.
23757
23758 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
23759
23760 Standardize names of ChangeLog history files
23761 Suggested by Glenn Morris in:
23762 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
23763 * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
23764 * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
23765 * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
23766 * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
23767 * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
23768 * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
23769 Remove.
23770
23771 Split top-level entries into pre- and post-April 7
23772 This more clearly distingiushes pre-April-7 ChangeLog entries (which
23773 are for top-level files only) from post-April-7 entries (which are
23774 about files at all levels. Problem reported by Glenn Morris in:
23775 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
23776 * ChangeLog.1: Move post-April-7 entries from here ...
23777 * ChangeLog.2: ... to this new file.
23778 * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
23779
23780 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
23781
23782 Fix recent cus-start changes that added customize-rogues
23783 * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
23784 vars early.
23785 * lisp/loadup.el ("cus-start"): Move to the end to reduce
23786 customize-rogue.
23787
23788 2015-04-15 Nicolas Petton <nicolas@petton.fr>
23789
23790 Define cl-concatenate as an alias to seq-concatenate
23791 * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
23792 code by making cl-concatenate an alias to seq-concatenate.
23793
23794 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
23795
23796 * src/lread.c (intern_1): Make sure we'd find the symbol we add
23797 (Bug#20334)
23798 * src/xfaces.c (resolve_face_name): Don't use `intern' with
23799 Lisp_Strings.
23800
23801 2015-04-15 Glenn Morris <rgm@gnu.org>
23802
23803 * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
23804
23805 2015-04-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
23806
23807 Clean up gnus-uu saving code slightly
23808 * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
23809 save-restriction/widen calls make more sense.
23810
23811 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
23812
23813 Make [:graph:] act like [:print:] sans space
23814 In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
23815 [:graph:] so that it matches everything that [:print:] does,
23816 except for space.
23817 * doc/lispref/searching.texi (Char Classes):
23818 * etc/NEWS:
23819 * lisp/emacs-lisp/rx.el (rx):
23820 Document [:graph:] to be [:print:] sans ' '.
23821 * src/character.c, src/character.h (graphicp): New function.
23822 * src/regex.c (ISGRAPH) [emacs]: Use it.
23823 (BIT_GRAPH): New macro.
23824 (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
23825 (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
23826 Return BIT_GRAPH for RECC_GRAPH.
23827 (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
23828 and ISPRINT if BIT_PRINT.
23829
23830 2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
23831
23832 automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
23833 Don't use call-next-method in a cl-defmethod.
23834
23835 * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
23836 (eieio--class-p): Remove, provided by cl-defstruct.
23837
23838 2015-04-14 Nicolas Petton <nicolas@petton.fr>
23839
23840 Add seq-intersection and seq-difference to the seq library
23841 * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
23842 New functions.
23843 * test/automated/seq-tests.el: Add tests for seq-intersection and
23844 seq-difference.
23845 * doc/lispref/sequences.texi: Add documentation for seq-intersection
23846 and seq-difference.
23847
23848 2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
23849
23850 * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
23851 to avoid leaking internals.
23852
23853 2015-04-14 Sam Steingold <sds@gnu.org>
23854
23855 package--ensure-init-file: widen requires save-restriction
23856
23857 2015-04-14 Eli Zaretskii <eliz@gnu.org>
23858
23859 Improve the commit-msg Git hook for unibyte environments
23860 * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
23861 in unibyte environments. (Suggested by Paul Eggert
23862 <eggert@cs.ucla.edu>.) Use a more accurate approximation to
23863 [:print:], based on UTF-8 sequences of the unprintable characters.
23864
23865 Describe problems with cursor caused by Windows Magnifier
23866 * etc/PROBLEMS: Describe the problem with cursor shape on
23867 MS-Windows due to Windows Magnifier.
23868 (Bug#20271)
23869
23870 Make [:print:] support non-ASCII characters correctly
23871 * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
23872 (BIT_PRINT): New bit mask.
23873 (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
23874 * src/character.c (printablep): New function.
23875 * src/character.h (printablep): Add prototype.
23876 * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
23877 of 'print', 'alnum', and 'alphabetic'.
23878 * doc/lispref/searching.texi (Char Classes): Document the new
23879 behavior of [:print:].
23880 * etc/NEWS: Mention the new behavior of [:print:].
23881
23882 Assign correct general-category and names to surrogates
23883 * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
23884 surrogates. This avoids assigning them the default
23885 general-category of 'Cn', i.e. unassigned codepoints.
23886 (unidata-get-name): Give surrogates synthetic names.
23887
23888 2015-04-14 Paul Eggert <eggert@cs.ucla.edu>
23889
23890 Assume C89 offsetof in xterm.c, xlwmenu.c
23891 * lwlib/xlwmenu.c (offset):
23892 * src/xterm.c (cvt_string_to_pixel_args):
23893 Use offsetof, not XtOffset.
23894
23895 2015-04-14 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
23896
23897 Assume C89 offsetof in widget.c
23898 * src/widget.c (XtOffset): Remove; no longer needed.
23899 (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
23900
23901 Fix think-o in previous patch
23902 * src/window.c (count_windows, get_leaf_windows):
23903 Don't optimize count_windows incorrectly.
23904
23905 2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
23906
23907 Avoid some int overflows in window.c
23908 * src/print.c (print_object):
23909 * src/window.c (sequence_number):
23910 * src/window.h (struct window.sequence_number):
23911 Don't assume window sequence number fits in int.
23912 * src/window.c (window_select_count):
23913 * src/window.h (struct window.use_time, window_select_count):
23914 Don't assume window use time fits in int.
23915 * src/window.c (Fsplit_window_internal):
23916 Don't assume user-supplied integer, or sum, fits in int.
23917 (Fset_window_configuration, count_windows, get_leaf_windows)
23918 (save_window_save, Fcurrent_window_configuration):
23919 Use ptrdiff_t for object counts.
23920 (Fset_window_configuration): Omit unused local 'n'.
23921 (count_windows): Simplify by writing in terms of get_leaf_windows.
23922 (get_leaf_windows): Don't store through FLAT if it's null.
23923 (extract_dimension): New static function.
23924 (set_window_margins, set_window_fringes, set_window_scroll_bars):
23925 Use it to avoid undefined behavior when converting user-supplied
23926 integer to 'int'.
23927
23928 2015-04-13 Glenn Morris <rgm@gnu.org>
23929
23930 Minor doc copyedits
23931 * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
23932 * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
23933
23934 2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
23935
23936 [Gnus] Catch the invalid-operation that idna.el will issue
23937 * lisp/gnus/gnus-art.el (gnus-use-idna):
23938 * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
23939 * lisp/gnus/message.el (message-use-idna):
23940 Catch the invalid-operation that idna.el will issue.
23941
23942 2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
23943
23944 * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
23945
23946 2015-04-13 Sam Steingold <sds@gnu.org>
23947
23948 package--ensure-init-file: widen before looking for
23949 "(package-initialize)"
23950
23951 2015-04-13 Dmitry Gutov <dgutov@yandex.ru>
23952
23953 Change diff-switches default to `-u' (Bug#20290)
23954 * doc/emacs/files.texi (Comparing Files): Document the new default
23955 value of `diff-switches'.
23956 * doc/emacs/trouble.texi (Sending Patches): Document the preference
23957 for unified diff format. Escape the plus in the suggested `-F' regexp
23958 value.
23959 * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
23960
23961 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
23962
23963 (gnus-group--setup-tool-bar-update): Fix last change
23964 * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
23965 cursor-sensor-functions should be a list of functions.
23966
23967 2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
23968
23969 * lisp/gnus/gnus-topic.el (gnus-topic-mode):
23970 Use gmm-called-interactively-p.
23971
23972 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
23973
23974 * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
23975 (Bug#20321)
23976 * lisp/cus-start.el (read-buffer-function): Don't advertise
23977 iswitchb-read-buffer any more.
23978 (iswitchb): Don't tweak this obsolete group any more.
23979
23980 2015-04-13 Artur Malabarba <bruce.connor.am@gmail.com>
23981
23982 * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
23983
23984 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
23985 Adding a string after a constructor's argument list will use
23986 that string as the constructor function docstring. If this string
23987 is absent but the struct itself was given a docstring, use that as
23988 the constructor's docstring.
23989 Fixes bug#17284.
23990
23991 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
23992
23993 Deprecate `intangible' and `point-entered' properties
23994 * lisp/emacs-lisp/cursor-sensor.el: New file.
23995 * lisp/simple.el (pre-redisplay-functions): New hook.
23996 (redisplay--pre-redisplay-functions): New function.
23997 (pre-redisplay-function): Use it.
23998 (minibuffer-avoid-prompt): Mark obsolete.
23999 (redisplay--update-region-highlight): Adapt it to work as a function on
24000 pre-redisplay-functions.
24001 * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
24002 (minibuffer-prompt-properties): Use it. Use cursor-intangible rather
24003 than point-entered to make the prompt intangible.
24004 * lisp/forms.el: Move `provide' calls to the end.
24005 (forms-mode): Don't use `run-hooks' on a local var.
24006 (forms--make-format, forms--make-format-elt-using-text-properties):
24007 Use cursor-intangible rather than `intangible'.
24008 (forms-mode): Enable cursor-intangible-mode.
24009 * lisp/isearch.el (isearch-mode): Use defvar-local.
24010 (cursor-sensor-inhibit): Declare.
24011 (isearch-mode): Set cursor-sensor-inhibit.
24012 (isearch-done): Set it back.
24013 (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
24014 (isearch-close-unnecessary-overlays): Don't bother with `intangible'
24015 any more.
24016 * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
24017 (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
24018 Add Edebug spec.
24019 (ses-goto-print, ses-print-cell, ses-adjust-print-width)
24020 (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
24021 inhibit-point-motion-hooks any more.
24022 (ses--cell-at-pos, ses--curcell): New functions, extracted from
24023 ses-set-curcell.
24024 (ses-set-curcell): Use them.
24025 (ses-print-cell, ses-setup): Use cursor-intangible instead of
24026 `intangible'. Make sure cursor-intangible isn't sticky at BOB.
24027 (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
24028 Use ses--cell-at-pos.
24029 (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
24030 extracted from ses-command-hook. Make them work with multiple windows
24031 displaying the same buffer.
24032 (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
24033 Enable cursor-intangible-mode.
24034 (ses-command-hook): Remove cell highlight and mode-line update code.
24035 (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
24036 Update for new name of text-property holding the cell name.
24037 (ses-rename-cell): Don't mess with mode-line-process.
24038 * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
24039 cursor-sensor-functions property instead of point-entered.
24040 (erc-insert-timestamp-right, erc-format-timestamp):
24041 Use cursor-intangible rather than `intangible'.
24042 (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
24043 remove-from-invisibility-spec. Enable cursor-intangible-mode and
24044 cursor-sensor-mode if needed.
24045 (erc-echo-timestamp): Adapt to calling convention of
24046 cursor-sensor-functions.
24047 (erc-insert-timestamp-right): Remove unused vars `current-window' and
24048 `indent'.
24049 * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
24050 (gnus-update-group-mark-positions): Remove unused `topic' var.
24051 (gnus-group-insert-group-line): Remove unused var `header'.
24052 (gnus-group--setup-tool-bar-update): New function.
24053 (gnus-group-insert-group-line): Use it.
24054 (gnus-group-update-eval-form): Declare local
24055 dynamically-bound variables.
24056 (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
24057 * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
24058 (gnus-group-prepare-topics, gnus-topic-update-topic)
24059 (gnus-topic-change-level, gnus-topic-catchup-articles)
24060 (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
24061 Use inhibit-read-only.
24062 (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
24063 (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
24064 * lisp/textmodes/reftex-index.el (reftex-display-index):
24065 Use cursor-intangible-mode if available.
24066 (reftex-index-post-command-hook): Check cursor-intangible.
24067 * lisp/textmodes/reftex-toc.el (reftex-toc):
24068 Use cursor-intangible-mode if available.
24069 (reftex-toc-recenter, reftex-toc-post-command-hook):
24070 Check cursor-intangible.
24071 * lisp/textmodes/sgml-mode.el: Use lexical-binding.
24072 (sgml-tag): Use cursor-sensor-functions instead of point-entered.
24073 (sgml-tags-invisible): Use with-silent-modifications and
24074 inhibit-read-only. Enable cursor-sensor-mode.
24075 (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
24076 calling convention of cursor-sensor-functions.
24077 * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
24078 (table-point-entered-cell-hook, table-point-left-cell-hook):
24079 Don't autoload.
24080 (table-cell-entered-state): Remove var.
24081 (table--put-cell-point-entered/left-property)
24082 (table--remove-cell-properties):
24083 Use cursor-sensor-functions rather than point-entered/left.
24084 (table--point-entered/left-cell-function): Merge
24085 table--point-entered-cell-function and table--point-left-cell-function
24086 and adjust to calling convention of cursor-sensor-functions.
24087
24088 Update ldef-boots.el
24089
24090 * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
24091
24092 * doc/misc/eieio.texi: Don't advertise now obsolete constructs
24093
24094 Collapse successive char deletions in the undo log
24095 * src/cmds.c (remove_excessive_undo_boundaries): New function,
24096 extracted from Fself_insert_command.
24097 (Fdelete_char, Fself_insert_command): Use it.
24098 * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
24099 * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
24100
24101 xterm and OSC 52: Add NEWS entry, and tweak the code
24102 * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
24103 to top-level.
24104 (terminal-init-xterm-activate-set-selection): Set a terminal property.
24105 (xterm--set-selection): Use it instead of checking the value of
24106 `terminal-initted'. Don't use string-bytes.
24107
24108 2015-04-13 Philipp Stephani <p.stephani2@gmail.com>
24109
24110 xterm.el: Implement OSC-52 functionality for setting the X selection
24111 * lisp/term/xterm.el (xterm-max-cut-length): New var.
24112 (xterm--set-selection, terminal-init-xterm-activate-set-selection):
24113 New funs.
24114 (terminal-init-xterm, xterm--version-handler): Use them.
24115
24116 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
24117
24118 Remove left over code from when we used an obsolete/loaddefs.el file
24119 * lisp/subr.el (do-after-load-evaluation): Remove left over code from
24120 when we used an obsolete/loaddefs.el file.
24121
24122 * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
24123 (semanticdb-without-unloaded-file-searches): Use declare.
24124 (semantic-fw-add-edebug-spec): Remove.
24125
24126 * lisp/completion.el (completion-lisp-mode-hook):
24127 Use completion-separator-chars rather than local key binding.
24128
24129 * src/*.c: Set deactivate_mark buffer-locally
24130 (Bug#20260)
24131 * src/insdel.c (prepare_to_modify_buffer_1):
24132 * src/fileio.c (Finsert_file_contents): Set deactivate_mark
24133 buffer-locally.
24134
24135 2015-04-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
24136
24137 python.el: Keep symmetry on sexp navigation with parens
24138 (Bug#19954)
24139 * lisp/progmodes/python.el
24140 (python-nav--forward-sexp): Add argument skip-parens-p.
24141 (python-nav-forward-sexp, python-nav-backward-sexp)
24142 (python-nav-forward-sexp-safe)
24143 (python-nav-backward-sexp-safe): Use it.
24144 * test/automated/python-tests.el
24145 (python-nav-forward-sexp-1): Fix test.
24146
24147 2015-04-12 João Távora <joaotavora@gmail.com>
24148
24149 Don't use `setq-local' in Gnus code
24150 This might break upstream builds with older Emacsen
24151 * lisp/gnus/message.el (message-mode): Use `set' and
24152 `make-local-variable' instead of `setq-local'.
24153
24154 2015-04-12 Paul Eggert <eggert@cs.ucla.edu>
24155
24156 Update Makefile.in's .PHONY dependencies
24157 * Makefile.in (change-history-commit, master-branch-is-current)
24158 (no-ChangeLog): Now phony.
24159
24160 Remove configure's --with-mmdf option
24161 * configure.ac (MAIL_USE_MMDF): Remove.
24162 * etc/NEWS: Document this.
24163 * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
24164 (Bug#20308)
24165
24166 * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
24167 That way, 'make install' won't think it's a man page.
24168 Reported by Ashish SHUKLA in:
24169 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
24170
24171 Improve 'make change-history' prereq tests
24172 * Makefile.in (gen_origin): Fix to match what's in the master branch.
24173 (no-ChangeLog, master-branch-is-current): New rules.
24174 (change-history): Depend on them, to avoid similar future problems.
24175 Escape the local-variables string to pacify Emacs when editing
24176 Makefile.in.
24177
24178 2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
24179
24180 * test/automated/package-test.el (with-package-test):
24181 Kill Packages buffer.
24182
24183 * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
24184 (package-menu--prompt-transaction-p): Prompt for "Delete" first,
24185 "Upgrade" last, and use capitalized instead of all-caps.
24186
24187 * lisp/emacs-lisp/package.el: Completely silence async operations.
24188 (package--make-autoloads-and-stuff): Silence autoloads.
24189 (package--save-selected-packages): New function, silences
24190 `customize-save-variable'.
24191 (package--user-selected-p, package-install-from-buffer)
24192 (package-delete, package-install): Use it.
24193 (package-install-from-archive)
24194 (package-menu--perform-transaction): Silence.
24195 (package-menu-execute): Feedback when operation starts.
24196
24197 Use delay-mode-hooks when visiting the init-file
24198 * lisp/emacs-lisp/package.el (package--ensure-init-file):
24199 delay-mode-hooks.
24200 * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
24201
24202 * lisp/files.el: Only message when saving if save-silently is nil.
24203 (save-silently): New variable.
24204 (files--message): New function.
24205 (find-file-noselect, save-buffer, basic-save-buffer)
24206 (basic-save-buffer-2, save-some-buffers, not-modified)
24207 (append-to-file): Use them.
24208
24209 2015-04-12 Johan Bockgård <bojohan@gnu.org>
24210
24211 Support debug declarations in pcase macros
24212 * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
24213 (pcase-UPAT): Use it. Remove "`".
24214 (pcase--edebug-match-macro): New function.
24215 (pcase-defmacro): Support debug declarations.
24216 * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
24217 * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
24218 * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
24219 Add debug declaration.
24220
24221 pcase.el: Edebug support for `app' and vector patterns
24222 * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
24223 (pcase-UPAT): Use it. Support `app' patterns.
24224 (pcase-QPAT): Support vector patterns.
24225
24226 edebug.el: Disambiguate vector specifications
24227 * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
24228 `(vector ...)' as a vector specification, not as a sublist.
24229
24230 (gnus-summary-refer-thread): Don't clobber unread articles
24231 This fixes a bug where `A T' causes "random" articles to become marked
24232 as read.
24233 * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
24234 gnus-newsgroup-unreads remains sorted.
24235
24236 mouse-sel.el: Fix mouse-sel-get-selection-function
24237 * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
24238 Use gui--last-selected-text-primary instead of no longer existing
24239 gui-last-selected-text.
24240
24241 * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
24242
24243 * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
24244
24245 2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
24246
24247 * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
24248
24249 * lisp/emacs-lisp/package.el (list-packages): Call refresh in
24250 right buffer.
24251
24252 * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
24253 (byte-compile--interactive): New var.
24254 (byte-compile--message): New function.
24255 (byte-compile-log-1, byte-force-recompile)
24256 (byte-recompile-directory, byte-recompile-file)
24257 (byte-compile-file, compile-defun)
24258 (byte-compile-file-form-defmumble, byte-compile)
24259 (byte-compile-file-form-defalias, display-call-tree): Use it.
24260
24261 * lisp/files.el: Don't message when nothing happened.
24262 (save-some-buffers, basic-save-buffer): Before messaging to say
24263 "nothing was saved" check if (called-interactively-p 'any).
24264
24265 2015-04-12 João Távora <joaotavora@gmail.com>
24266
24267 Summary: Improve sexp-based movement in message-mode
24268 Works by giving citations and smileys a different syntax. This helps
24269 modes like `show-paren-mode', `electric-pair-mode', and C-M-*
24270 sexp-based movement.
24271 * lisp/gnus/message.el (message--syntax-propertize): New function.
24272 (message-mode): Set syntax-related vars.
24273 (message-smileys): New variable.
24274 * test/automated/message-mode-tests.el: New file
24275
24276 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
24277
24278 Use bool for boolean in window.c
24279 * src/window.c: Omit unnecessary static function decls.
24280 (adjust_window_count, select_window, Fselect_window)
24281 (window_body_width, Fwindow_body_height, Fwindow_body_width)
24282 (set_window_hscroll, check_window_containing, Fwindow_at)
24283 (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
24284 (unshow_buffer, replace_window, recombine_windows)
24285 (add_window_to_list, candidate_window_p, next_window)
24286 (Fnext_window, Fprevious_window, window_loop, check_all_windows)
24287 (Fget_buffer_window, Fdelete_other_windows_internal)
24288 (replace_buffer_in_windows_safely, set_window_buffer)
24289 (Fset_window_buffer, Fforce_window_update)
24290 (temp_output_buffer_show, make_parent_window)
24291 (window_resize_check, window_resize_apply, Fwindow_resize_apply)
24292 (resize_frame_windows, Fsplit_window_internal)
24293 (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
24294 (Fresize_mini_window_internal, mark_window_cursors_off)
24295 (window_scroll, window_scroll_pixel_based)
24296 (window_scroll_line_based, scroll_command, Fscroll_other_window)
24297 (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
24298 (Fmove_to_window_line, Fset_window_configuration)
24299 (delete_all_child_windows, apply_window_adjustment)
24300 (set_window_fringes, set_window_scroll_bars)
24301 (Fset_window_vscroll, foreach_window, foreach_window_1)
24302 (compare_window_configurations, Fcompare_window_configurations):
24303 Prefer 'bool', 'true', and 'false' for booleans.
24304 * src/window.h (WINDOW_MODE_LINE_LINES)
24305 (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
24306
24307 2015-04-11 Artur Malabarba <bruce.connor.am@gmail.com>
24308
24309 Speed up byte-compilation and autoload generation by avoiding mode-hooks
24310 This prevents emacs-lisp-mode-hook from being run everytime an
24311 autoload file is generated, which can account for a fraction of
24312 package installation time depending on the hooks the user has
24313 configured.
24314 * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
24315 * lisp/emacs-lisp/autoload.el (autoload-find-file)
24316 (autoload-find-generated-file): Use delay-mode-hooks.
24317
24318 * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
24319 (package-menu-refresh): Respect async and do new package checking.
24320 (list-packages): Use `package-menu-refresh' instead of repeating code.
24321
24322 * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
24323 (package--quick-help-keys): New variable.
24324 (package--prettify-quick-help-key): New function.
24325 (package-menu-quick-help): Use it.
24326
24327 * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
24328 (package--build-compatibility-table): Require finder.
24329
24330 * test/automated/package-test.el: Fix new test.
24331
24332 * lisp/emacs-lisp/package.el: Silence async operations.
24333 (package--silence): New variable.
24334 (package--message): New function.
24335 (package-import-keyring, package-refresh-contents)
24336 (package-compute-transaction, package-install, package-delete)
24337 (package-menu--perform-transaction, package-menu-execute): Use it.
24338
24339 * test/automated/package-test.el: Test async functionality.
24340 (package-test-update-archives-async): New test.
24341
24342 2015-04-11 Daiki Ueno <ueno@gnu.org>
24343
24344 Utilize `make-process' in epg.el
24345 * lisp/epg.el (epg-error-output): Abolish.
24346 (epg-context): New slot `error-buffer'.
24347 (epg--start): Use `make-process' and `make-pipe-process'.
24348 (epg--process-filter): Remove code separating stderr from stdout.
24349 (epg-wait-for-completion): Simplify `error-output' handling.
24350 (epg-reset): Dispose error buffer.
24351
24352 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
24353
24354 * .gitignore: Ignore doc temps and outputs.
24355
24356 Port commit-msg to MSYS Bash+Gawk
24357 See Eli Zaretskii in:
24358 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
24359 * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
24360 (cent_sign, print_at_sign, at_sign): Revert previous change.
24361 (print_at_sign): Prepend "BEGIN".
24362 (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
24363
24364 Port commit-msg to broken MS-Windows shell
24365 * build-aux/git-hooks/commit-msg (cent_sign):
24366 Just use UTF-8 here rather than ASCII + printf, as the latter fails
24367 on a broken MS-Windows shell. Reported by Eli Zaretskii in:
24368 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
24369
24370 2015-04-11 Chris Zheng <chriszheng99@gmail.com> (tiny change)
24371
24372 Support GnuTLS v3.4 and later on MS-Windows
24373 * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
24374 * lisp/term/w32-win.el (dynamic-library-alist): Determine which
24375 GnuTLS DLL to load according to value of libgnutls-version.
24376 (Bug#20294)
24377
24378 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
24379
24380 Minor quoting etc. fixes to misc manuals
24381 Fix some minor quoting and spacing issues. Distinguish more
24382 clearly among grave accent and apostrophe (which are ASCII) and
24383 single quote (which is not). Prefer the standard terms
24384 "apostrophe" and "grave accent" to alternative names that can be
24385 confusing. Use apostrophes to single-quote ASCII text.
24386 * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
24387 rather than approximating it in ASCII with grave accent.
24388
24389 2015-04-11 Daiki Ueno <ueno@gnu.org>
24390
24391 Respect more keyword args in `make-process'
24392 * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
24393 keywords as documented.
24394
24395 2015-04-10 Dmitry Gutov <dgutov@yandex.ru>
24396
24397 Extract ChangeLog entries when committing a directory
24398 * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
24399 * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
24400 Add a FIXME comment.
24401 (log-edit-changelog-entries): Extract from
24402 `log-edit-changelog-entries', handle FILE being a directory
24403 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
24404
24405 2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
24406
24407 Fix problems found by --enable-gcc-warnings
24408 * src/process.c (create_process, Fmake_pipe_process)
24409 (Fmake_network_process): Omit unused locals.
24410
24411 Fix commit-msg to handle scissors lines
24412 * build-aux/git-hooks/commit-msg:
24413 Ignore every line after a scissors line, such as a line generated
24414 by 'git commit -v'. Problem reported by Johan Bockgård in:
24415 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
24416
24417 port commit-msg to Gawk 3.0.4 (1999)
24418 * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
24419 (print_at_sign, at_sign): New vars. Use them to avoid problems
24420 Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS. See:
24421 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
24422
24423 Have commit-msg report commit failure
24424 * build-aux/git-hooks/commit-msg: If the commit is aborted,
24425 say so. Simplify by doing this at the end. Problem reported
24426 by Eli Zaretskii in:
24427 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
24428
24429 2015-04-10 Thomas Fitzsimmons <fitzsim@fitzsim.org>
24430
24431 Clean up LDAP Configuration section of EUDC manual
24432 * doc/misc/eudc.texi: Combine indices.
24433 (LDAP Configuration): Use command markup. Add index entries.
24434 Change formatting. Wrap long lines. Add noindent markup.
24435
24436 2015-04-10 Daiki Ueno <ueno@gnu.org>
24437
24438 Add facility to collect stderr of async subprocess
24439 * src/w32.h (register_aux_fd): New function declaration.
24440 * src/w32.c (register_aux_fd): New function.
24441 * src/process.h (struct Lisp_Process): New member stderrproc.
24442 * src/process.c (PIPECONN_P): New macro.
24443 (PIPECONN1_P): New macro.
24444 (Fdelete_process, Fprocess_status, Fset_process_buffer)
24445 (Fset_process_filter, Fset_process_sentinel, Fstop_process)
24446 (Fcontinue_process): Handle pipe process specially.
24447 (create_process): Respect p->stderrproc.
24448 (Fmake_pipe_process): New function.
24449 (Fmake_process): Add new keyword argument :stderr.
24450 (wait_reading_process_output): Specially handle a pipe process when
24451 it gets an EOF.
24452 (syms_of_process): Register Qpipe and Smake_pipe_process.
24453 * doc/lispref/processes.texi (Asynchronous Processes): Document
24454 `make-pipe-process' and `:stderr' keyword of `make-process'.
24455 * lisp/subr.el (start-process): Suggest to use `make-process' handle
24456 standard error separately.
24457 * test/automated/process-tests.el (process-test-stderr-buffer)
24458 (process-test-stderr-filter): New tests.
24459 * etc/NEWS: Mention new process type `pipe' and its usage with the
24460 `:stderr' keyword of `make-process'.
24461
24462 2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
24463
24464 Minor quoting etc. fixes to lispref manual
24465 * doc/lispref/tips.texi (Documentation Tips):
24466 Distinguish more clearly among grave accent, apostrophe,
24467 and single quote.
24468 * doc/lispref/README, doc/lispref/buffers.texi:
24469 * doc/lispref/commands.texi, doc/lispref/control.texi:
24470 * doc/lispref/customize.texi, doc/lispref/display.texi:
24471 * doc/lispref/elisp.texi, doc/lispref/files.texi:
24472 * doc/lispref/frames.texi, doc/lispref/hash.texi:
24473 * doc/lispref/help.texi, doc/lispref/internals.texi:
24474 * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
24475 * doc/lispref/markers.texi, doc/lispref/modes.texi:
24476 * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
24477 * doc/lispref/os.texi, doc/lispref/positions.texi:
24478 * doc/lispref/strings.texi, doc/lispref/syntax.texi:
24479 * doc/lispref/text.texi, doc/lispref/tips.texi:
24480 * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
24481 Use American-style double quoting in ordinary text,
24482 and quote 'like this' when single-quoting in ASCII text.
24483 Also, fix some minor spacing issues.
24484
24485 2015-04-10 Michael Albinus <michael.albinus@gmx.de>
24486
24487 Handle symlinked test directory in tramp-tests.el
24488 * test/automated/tramp-tests.el (tramp-test18-file-attributes)
24489 (tramp--test-check-files): Use `file-truename' for directories.
24490
24491 2015-04-10 Eli Zaretskii <eliz@gnu.org>
24492
24493 Fix 'recenter' when visual-line-mode is turned on
24494 * src/window.c (Frecenter): Use the same code for GUI and TTY
24495 frames alike; use vmotion only for "initial" frames. This is
24496 because vmotion doesn't support visual-line-mode. Rewrite the
24497 'iarg >= 0' case to use move_it_* functions instead of using
24498 vmotion, for the same reason. Fix the clipping of the argument
24499 value to support scroll-margin in all cases and avoid unwarranted
24500 recentering. Reported by Milan Stanojević <milanst@gmail.com> in
24501 http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
24502 which see.
24503
24504 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
24505
24506 * lisp/abbrev.el (define-abbrev-table): Refine last change.
24507
24508 * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
24509 use of c[ad]+r", so as to keep the "cl-" prefix on all
24510 cl-lib definitions.
24511
24512 * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
24513 Use inhibit-point-motion-hooks.
24514
24515 * lisp/cedet/semantic: Remove some dead code.
24516 * lisp/cedet/semantic/util-modes.el
24517 (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
24518 any more.
24519 * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
24520 not supported any more.
24521 (semantic-safe): Use `declare'.
24522 * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
24523 (semantic-tag-intangible-p): Remove unused functions.
24524 * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
24525 Remove unused function.
24526
24527 * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
24528 (gnus-article-hide-text, gnus-article-unhide-text)
24529 (gnus-article-unhide-text-type): Remove special handling of
24530 `intangible' since that property is not used any more.
24531 (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
24532
24533 2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
24534
24535 Use the VC root in `log-edit-listfun'
24536 * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
24537 `log-edit-listfun'.
24538
24539 2015-04-09 Jay Belanger <jay.p.belanger@gmail.com>
24540
24541 Fix description of Unix time, mention new function.
24542 * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
24543 Unix time.
24544 * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
24545 (Basic Operations on Units): Mention `calc-convert-exact-units'.
24546
24547 2015-04-09 Artur Malabarba <bruce.connor.am@gmail.com>
24548
24549 * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
24550
24551 2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
24552
24553 * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
24554 Don't add newline after the last entry.
24555
24556 2015-04-09 Simen Heggestøyl <simenheg@gmail.com>
24557
24558 css-mode.el: Add "not" pseudo-class
24559 (Bug#20267)
24560 * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
24561 list of CSS pseudo-classes.
24562
24563 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
24564
24565 * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
24566
24567 2015-04-09 Michael Albinus <michael.albinus@gmx.de>
24568
24569 Stop messing with the EMACS env var
24570 * doc/emacs/misc.texi (Interactive Shell): Remove description of
24571 EMACS env var.
24572
24573 2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
24574
24575 Adapt 'make change-history' to coding cookie
24576 * Makefile.in (change-history): Adjust to change of format of
24577 ChangeLog file, which now has a coding cookie before an indented
24578 copyright notice.
24579
24580 2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
24581
24582 Adapt 'make change-history' to coding cookie
24583 * Makefile.in (change-history): Adjust to change of format of
24584 ChangeLog file, which now has a coding cookie before an indented
24585 copyright notice.
24586
24587 gitlog-to-changelog coding cookie and mv -i
24588 * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
24589 for copyright notice prototype, so that we get a proper "coding:"
24590 cookie. Use 'mv -i' to avoid unconditionally overwriting an
24591 existing ChangeLog. Problems reported by Eli Zaretskii in:
24592 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
24593
24594 Merge from gnulib
24595 * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
24596 2015-04-09 gitlog-to-changelog: port to MS-Windows
24597
24598 2015-04-09 Boruch Baum <boruch_baum@gmx.com> (tiny change)
24599
24600 * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
24601 (Bug#20212)
24602
24603 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
24604
24605 Stop messing with the EMACS env var
24606 (Bug#20202)
24607 * lisp/net/tramp-sh.el (tramp-remote-process-environment):
24608 * lisp/comint.el (comint-exec-1):
24609 * lisp/term.el (term-exec-1): Don't set EMACS envvar.
24610 * lisp/progmodes/compile.el (compilation-start): Same and bring
24611 INSIDE_EMACS's format in line with other users.
24612
24613 css-mode.el (css-smie-rules): Fix indentation after complex selectors
24614 (Bug#20282)
24615 * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
24616 inner structure of selectors.
24617
24618 2015-04-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
24619
24620 python.el: Indent docstring lines to base-indent
24621 (Bug#19595)
24622 Thanks to immerrr <immerrr@gmail.com> for reporting and providing
24623 an initial patch.
24624 * lisp/progmodes/python.el
24625 (python-indent-context): Add :inside-docstring context.
24626 (python-indent--calculate-indentation): Handle :inside-docstring.
24627 (python-indent-region): Re-indent docstrings.
24628 * test/automated/python-tests.el (python-indent-region-5)
24629 (python-indent-inside-string-2): Fix tests.
24630
24631 python.el: Increase native completion robustness
24632 (Bug#19755)
24633 Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
24634 this and providing useful ideas.
24635 * lisp/progmodes/python.el
24636 (python-shell-completion-native-output-timeout): Increase value.
24637 (python-shell-completion-native-try-output-timeout): New var.
24638 (python-shell-completion-native-try): Use it.
24639 (python-shell-completion-native-setup): New readline setup avoids
24640 polluting current context, ensures output when no-completions are
24641 available and includes output end marker.
24642 (python-shell-completion-native-get-completions): Trigger with one
24643 tab only. Call accept-process-output until output end is found or
24644 python-shell-completion-native-output-timeout is exceeded.
24645
24646 2015-04-08 Samer Masterson <samer@samertm.com>
24647
24648 * lisp/eshell: Make backslash a no-op in front of normal chars
24649 (Bug#8531)
24650 * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
24651 (eshell-parse-backslash): Return escaped character after backslash
24652 if it is special. Otherwise, if the backslash is not in a quoted
24653 string, ignore the backslash and return the character after; if
24654 the backslash is in a quoted string, return the backslash and the
24655 character after.
24656 * test/automated/eshell.el (eshell-test/escape-nonspecial)
24657 (eshell-test/escape-nonspecial-unicode)
24658 (eshell-test/escape-nonspecial-quoted)
24659 (eshell-test/escape-special-quoted): Add tests for new
24660 `eshell-parse-backslash' behavior.
24661
24662 2015-04-08 Gustav Hållberg <gustav@gmail.com> (tiny change)
24663
24664 * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
24665 after the file name.
24666 (Bug#20276)
24667
24668 2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
24669
24670 Minor quoting etc. fixes to Emacs manual
24671 * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
24672 * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
24673 * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
24674 * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
24675 * doc/emacs/indent.texi, doc/emacs/macos.texi:
24676 * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
24677 * doc/emacs/programs.texi, doc/emacs/rmail.texi:
24678 * doc/emacs/search.texi, doc/emacs/trouble.texi:
24679 * doc/emacs/vc1-xtra.texi:
24680 Use American-style double quoting in ordinary text,
24681 and quote 'like this' when single-quoting in ASCII text.
24682 Also, fix some minor spacing issues.
24683
24684 Minor quoting etc. fixes to elisp intro
24685 * doc/lispintro/emacs-lisp-intro.texi: Consistently use
24686 American-style double quoting in ordinary text. In ASCII text,
24687 consistently quote 'like this' instead of `like this', unless
24688 Emacs requires the latter.
24689
24690 2015-04-08 Dmitry Gutov <dgutov@yandex.ru>
24691
24692 * CONTRIBUTE: Mention log-edit-insert-changelog.
24693
24694 * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
24695
24696 2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
24697
24698 * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
24699
24700 2015-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
24701
24702 * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
24703 Fix inheritance of initargs. (Bug#20270)
24704
24705 2015-04-08 Artur Malabarba <bruce.connor.am@gmail.com>
24706
24707 * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
24708 while dowloading information.
24709
24710 * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
24711 (package--ensure-init-file): Check file contents before visiting.
24712 (package-initialize): Call it.
24713 (package-install-from-buffer, package-install): Don't call it.
24714
24715 2015-04-08 Eli Zaretskii <eliz@gnu.org>
24716
24717 * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
24718 (Bug#17517)
24719
24720 2015-04-08 Michael Albinus <michael.albinus@gmx.de>
24721
24722 * lisp/net/tramp-cache.el (tramp-flush-file-property):
24723 Fix nasty scoping bug.
24724
24725 2015-04-08 Tassilo Horn <tsdh@gnu.org>
24726
24727 Add notice to visual commands section
24728 * doc/misc/eshell.texi (Input/Output): Add notice that some tools
24729 such as git call less with its -F option which omits pagination if
24730 the contents is less than one page long. This interferes with
24731 eshell's visual (sub-)commands.
24732
24733 2015-04-07 Dmitry Gutov <dgutov@yandex.ru>
24734
24735 * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
24736 environment variable expansion in file names. (Bug#19839)
24737
24738 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
24739
24740 Prefer double-quote to accent-grave in man pages
24741
24742 2015-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
24743
24744 (Bug#20257)
24745 * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
24746
24747 2015-04-07 Ivan Shmakov <ivan@siamics.net>
24748
24749 Update etc/PROBLEMS.
24750 * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
24751 ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
24752 'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
24753 respectively); other minor updates and tweaks. (Bug#20011)
24754
24755 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
24756
24757 Add doc strings for some Isearch state vars
24758 * lisp/misearch.el (multi-isearch-buffer-list)
24759 (multi-isearch-file-list): Add doc strings.
24760 (Bug#20232)
24761
24762 2015-04-07 Alan Mackenzie <acm@muc.de>
24763
24764 Always mark "<" and ">" in #include directives with text properties.
24765 * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
24766 "anchored matcher" with an invocation of
24767 c-make-font-lock-search-function to allow fontification when there's
24768 no trailing space on an "#include <..>" line.
24769
24770 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
24771
24772 Generate a ChangeLog file from commit logs
24773 * .gitignore: Add 'ChangeLog'.
24774 * build-aux/gitlog-to-changelog: New file, from Gnulib.
24775 * build-aux/gitlog-to-emacslog: New file.
24776 * CONTRIBUTE: Document the revised workflow.
24777 * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
24778 instead of just special cases.
24779 (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
24780 (ChangeLog, unchanged-history-files, change-history)
24781 (change-history-commit): New rules.
24782 * admin/admin.el (make-manuals-dist--1):
24783 Don't worry about doc/ChangeLog.
24784 * admin/authors.el: Add a FIXME.
24785 * admin/make-tarball.txt:
24786 * lisp/calendar/icalendar.el:
24787 * lisp/gnus/deuglify.el:
24788 * lisp/obsolete/gulp.el:
24789 * lwlib/README:
24790 Adjust to renamed ChangeLog history files.
24791 * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
24792 * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
24793 Remove obsolete discussion of merging ChangeLog files.
24794 New section "Maintaining ChangeLog history".
24795 * build-aux/git-hooks/pre-commit:
24796 Reject attempts to commit files named 'ChangeLog'.
24797 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24798 * make-dist: Make and distribute top-level ChangeLog if there's a
24799 .git directory. Distribute the new ChangeLog history files
24800 instead of scattered ChangeLog files. Distribute the new files
24801 gitlog-to-changelog and gitlog-to-emacslog.
24802 (Bug#19113)
24803
24804 Rename ChangeLogs for gitlog-to-changelog
24805 This patch was implemented via the following shell commands:
24806 find * -name ChangeLog |
24807 sed 's,.*,git mv & &.1,
24808 s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
24809 s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
24810 s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
24811 s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
24812 s, src/ChangeLog\.1$, src/ChangeLog.13,' |
24813 sh
24814 git commit -am"[this commit message]"
24815
24816 This file records repository revisions from
24817 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
24818 commit 384cf23c6ed05e1f151032958a2cc2bb8100344b (inclusive).
24819 See ChangeLog.1 for earlier changes.
24820
24821 ;; Local Variables:
24822 ;; coding: utf-8
24823 ;; End:
24824
24825 Copyright (C) 2015-2016 Free Software Foundation, Inc.
24826
24827 This file is part of GNU Emacs.
24828
24829 GNU Emacs is free software: you can redistribute it and/or modify
24830 it under the terms of the GNU General Public License as published by
24831 the Free Software Foundation, either version 3 of the License, or
24832 (at your option) any later version.
24833
24834 GNU Emacs is distributed in the hope that it will be useful,
24835 but WITHOUT ANY WARRANTY; without even the implied warranty of
24836 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24837 GNU General Public License for more details.
24838
24839 You should have received a copy of the GNU General Public License
24840 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.