]> code.delx.au - gnu-emacs/blob - ChangeLog.2
* build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
[gnu-emacs] / ChangeLog.2
1 2015-06-06 Paul Eggert <eggert@cs.ucla.edu>
2
3 Merge from gnulib
4 This incorporates:
5 2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
6 2015-06-05 stdio: Don't redefine gets when using C++
7 2015-06-05 acl-permissions: port to AIX, C89 HP-UX
8 2015-06-02 file-has-acl: fix build on Mac OS X 10
9 2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
10 2015-06-01 pthread_sigmask: discount system version if a simple macro
11 2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
12 * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
13 * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
14 * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
15 * lib/gnulib.mk: Regenerate.
16
17 2015-06-06 Juri Linkov <juri@linkov.net>
18
19 * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
20 before calling grep-compute-defaults because now it affects the
21 command lines computed in grep-compute-defaults. (Bug#20728)
22
23 2015-06-06 Glenn Morris <rgm@gnu.org>
24
25 Address some compilation warnings.
26 * lisp/international/mule-cmds.el (w32-get-console-codepage)
27 (w32-get-console-output-codepage):
28 * lisp/progmodes/elisp-mode.el (xref-collect-references):
29 * lisp/version.el (cairo-version-string): Declare.
30 * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
31
32 2015-06-06 Eli Zaretskii <eliz@gnu.org>
33
34 Fix display when a font claims large values of ascent and descent
35 This fixes bug#20628.
36 * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
37 coordinate of a hollow cursor glyph when the original glyph's
38 ascent is too small.
39 (get_font_ascent_descent, normal_char_ascent_descent)
40 (normal_char_height): New functions.
41 (handle_single_display_spec, append_space_for_newline)
42 (calc_pixel_width_or_height, produce_stretch_glyph)
43 (calc_line_height_property): Use normal_char_ascent_descent and
44 normal_char_height.
45 (x_produce_glyphs): When font-global values of ascent and descent
46 are too large, use per-character glyph metrics instead, if
47 possible. But don't allow the glyph row's ascent and descent
48 values become smaller than the values from the metrics of the
49 font's "normal" character.
50 * src/xftfont.c (xftfont_draw):
51 * src/w32font.c (w32font_draw): Correct the values of ascent and
52 descent used to draw glyphless characters' hex code in a box.
53 * src/xterm.c (x_draw_glyph_string_background):
54 * src/xdisp.c (x_produce_glyphs):
55 * src/w32term.c (x_draw_glyph_string_background):
56 * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
57 to detect fonts whose global ascent and descent values are too
58 large to be used in layout decision, and redraw the background
59 when that happens.
60 * src/dispextern.h (FONT_TOO_HIGH): New macro.
61 (get_font_ascent_descent): Add prototype.
62 * src/xterm.c (x_new_font):
63 * src/w32term.c (x_new_font):
64 * src/nsterm.m (x_new_font):
65 * src/font.c (font_open_entity):
66 * src/composite.c (composition_gstring_width): Use
67 get_font_ascent_descent to obtain reasonable values for ascent and
68 descent of a font.
69
70 2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
71
72 Add assertion in adjust_point_for_property
73 * src/keyboard.c (adjust_point_for_property): Add eassert for
74 current buffer being shown in selected window.
75
76 2015-06-06 Dmitry Gutov <dgutov@yandex.ru>
77
78 Replace uses of in-string-p; make it obsolete
79 * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
80 (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
81
82 2015-06-06 Eli Zaretskii <eliz@gnu.org>
83
84 Fix Dired display of an explicit list of files by ls-lisp.el
85 * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
86 (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
87 correct for when displaying individual files separately, not as
88 part of listing a directory, in which case these values are not
89 recomputed by 'ls-lisp-insert-directory', but used verbatim.
90
91 * lisp/dired.el (dired): Doc fix. (Bug#20739)
92
93 2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
94
95 Do not adjust point in a non-selected window
96 * src/keyboard.c (command_loop_1): Do not adjust point when
97 current buffer is not shown in selected window (Bug#20590).
98
99 * etc/DEBUG: Mention 'maybe_call_debugger'
100
101 2015-06-05 Nicolas Petton <nicolas@petton.fr>
102
103 Fix a unit test for map.el
104 * test/automated/map-tests.el (test-map-let): Fix the test to work
105 with the new syntax of `map-let'.
106
107 * lisp/emacs-lisp/map.el (map-let): Better docstring.
108
109 Better syntax for the map pcase pattern
110 * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
111 bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
112
113 * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
114
115 Fix a byte-compiler error in map-put and map-delete
116 * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
117 called with a symbol.
118
119 2015-06-05 Glenn Morris <rgm@gnu.org>
120
121 * admin/gitmerge.el (gitmerge-commit-message):
122 Revert to including "skipped" messages in ChangeLog once again.
123
124 2015-06-05 Tassilo Horn <tsdh@gnu.org>
125
126 Use string> instead of equiv lambda with string<
127 * lisp/help.el (view-emacs-news): Use string> instead of equivalent
128 lambda with string<.
129
130 2015-06-05 Glenn Morris <rgm@gnu.org>
131
132 * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
133 (map--delete-array): Fix typo.
134
135 * test/automated/map-tests.el: Replace "assert" with "should".
136
137 * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
138 (SUBDIRS_REL): Derive from SUBDIRS.
139
140 Tweak some build messages.
141 * lisp/Makefile.in ($(lisp)/loaddefs.el):
142 * lisp/cus-dep.el (custom-make-dependencies):
143 * lisp/finder.el (finder-compile-keywords): Say what we are doing.
144 * lisp/international/titdic-cnv.el (batch-titdic-convert):
145 Don't say how to compile.
146
147 2015-06-05 Paul Eggert <eggert@cs.ucla.edu>
148
149 Omit U+0332 COMBINING LOW LINE in previous change
150 It turns out that it does not work on Ubuntu 15.04.
151
152 Fix transliteration of Bahá'í months
153 * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
154 Improve quality of Latin transliteration of Bahá'í month names.
155
156 Fix curved quotes in a few places
157 * lisp/calc/calc-misc.el (calc-help): Fix quoting.
158 The strings in question are not doc strings, so this partially
159 undoes the recent change that assumed they were doc strings.
160 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
161 * lisp/info.el (Info-finder-find-node):
162 Use curved quotes.
163 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
164 Also allow curved quotes in doc strings.
165
166 2015-06-04 Glenn Morris <rgm@gnu.org>
167
168 * lisp/Makefile.in (AM_V_at): Add missing definition.
169
170 * lisp/Makefile.in: Quieten output a bit.
171 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
172 Don't echo directories, since the commands we invoke print them.
173
174 * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
175 (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
176 (SUBDIRS_SUBDIRS): New variables.
177 (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
178 Remove.
179 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
180 (update-subdirs, compile-main, compile-clean):
181 Replace "setwins" usage with new "SUBDIRS" variables.
182
183 * lisp/vc/compare-w.el (compare-windows-get-window-function):
184 Fix :version tag.
185
186 2015-06-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
187
188 * src/ftfont.c (ftfont_open2): Round divisions by upEM.
189
190 Undo removal of x_clear_area call on expose for GTK3 or cairo.
191 * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
192 exposed area. (Bug#20677)
193
194 2015-06-04 Glenn Morris <rgm@gnu.org>
195
196 * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
197
198 * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
199
200 * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
201 Rename from quail-lao-update-translation, since lao.el defines that.
202
203 2015-06-04 Dmitry Gutov <dgutov@yandex.ru>
204
205 Handle new-style advice in find-funct
206 * lisp/emacs-lisp/find-func.el (find-function-advised-original):
207 Handle new-style advice. Return the symbol's function definition.
208 (Bug#20718)
209 (find-function-library): Update accordingly.
210
211 2015-06-04 Nicolas Petton <nicolas@petton.fr>
212
213 Merge branch 'map'
214
215 * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
216
217 Add new function string-greaterp
218 * lisp/subr.el (string-greaterp): New function. Also aliased to
219 `string>'.
220 * test/automated/subr-tests.el (string-comparison-test): Add unit
221 tests for `string>'and `string<'.
222 * src/fns.c (string-lessp): Better docstring.
223
224 2015-06-04 Eli Zaretskii <eliz@gnu.org>
225
226 Fix timezone-related functions on MS-Windows
227 * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
228 'xputenv', even if no reallocation of tzvalbuf was necessary.
229 This fixes a bug in timezone-related functions on MS-Windows.
230 Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
231
232 2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
233
234 Don't pass raw directory name to 'error'
235 * lisp/files.el (basic-save-buffer-2): Avoid format error if
236 a directory name contains a string like "%s".
237
238 2015-06-03 Dmitry Gutov <dgutov@yandex.ru>
239
240 Override 'grep --color=always'
241 * lisp/progmodes/xref.el (xref-collect-matches):
242 Override --color=always in grep-find-template.
243
244 2015-06-03 Michael Albinus <michael.albinus@gmx.de>
245
246 Fix error introduced recently in file-notify-tests.el
247 * test/automated/file-notify-tests.el
248 (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
249 (file-notify--deftest-remote): Revert previous patch, not
250 necessary anymore.
251
252 2015-06-03 Wolfgang Jenkner <wjenkner@inode.at>
253
254 * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
255 Starting from a display string after a newline, point went to the
256 previous line. Also, fix an inadvertent use of a buffer position
257 with FETCH_BYTE. (Bug#20701)
258
259 2015-06-03 Michael Albinus <michael.albinus@gmx.de>
260
261 Instrument file-notify-test.el in order to catch hydra error.
262 * test/automated/file-notify-tests.el (file-notify--deftest-remote):
263 Wrap body by `ignore-case', in order to trap non-local errors.
264
265 2015-06-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
266
267 Undo previous changes in non-toolkit scroll bar drawing.
268 * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
269 [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window. (Bug#20668)
270
271 2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
272
273 * .gitignore: Also ignore doc/*/*/*.html and .ps.
274
275 Support quotes 'like this' in info files
276 This is possible when 'makeinfo --disable-encoding' is used
277 in Texinfo 5.
278 * lisp/calc/calc-help.el (calc-describe-thing):
279 * lisp/gnus/gnus-art.el (gnus-button-alist):
280 * lisp/info.el (Info-find-index-name):
281 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
282 Also support quotes 'like this'.
283 * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
284 * lisp/finder.el (finder-font-lock-keywords): Remove var that
285 hasn't been used in years, instead of bothering to fix its quoting.
286
287 2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
288
289 * .gitignore: Remove !test/etags/html-src/*.html.
290 It's no longer needed, since *.html was removed. Sort.
291
292 2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
293
294 Restore <D> instead of '.' in grep-find-template
295 * lisp/cedet/semantic/symref/grep.el
296 (semantic-symref-grep-use-template): Update a comment.
297 * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
298 instead of '.' in grep-find-template (bug#20719).
299 (rgrep): Pass nil as the directory to rgrep-default-command.
300 * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
301 default value for DIR.
302 * lisp/progmodes/xref.el (xref-collect-matches): Drop the
303 workaround.
304
305 2015-06-02 Glenn Morris <rgm@gnu.org>
306
307 * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
308
309 * configure.ac (emacs_config_features): Add Cairo.
310
311 * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
312
313 2015-06-02 Michael Albinus <michael.albinus@gmx.de>
314
315 Ensure, that autorevert works for remote files in file-notify-tests.el
316 * test/automated/file-notify-tests.el (file-notify--test-desc):
317 New defvar.
318 (file-notify--test-remote-enabled)
319 (file-notify-test00-availability, file-notify-test01-add-watch)
320 (file-notify-test02-events): Use it.
321 (file-notify--test-event-test): Check proper descriptor.
322 (file-notify-test03-autorevert): Ensure, that
323 `visited-file-modtime' has changed.
324 (Bug#20392)
325
326 2015-06-02 Nicolas Petton <nicolas@petton.fr>
327
328 Add a pcase pattern for maps and `map-let' based on it
329 * lisp/emacs-lisp/map.el (map-let): New macro.
330 (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
331 * test/automated/map-tests.el: New test for `map-let'.
332
333 2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
334
335 Reuse rgrep mechanics in xref-find-regexp
336 * lisp/progmodes/grep.el (rgrep-default-command):
337 Extract from `rgrep'.
338 * lisp/progmodes/xref.el (xref-collect-references): Split from
339 `xref-collect-matches'. Only handle the case of symbol search.
340 (xref-collect-matches): Instead of Semantic Symref, use
341 `rgrep-default-command', to take advantage of its directory and
342 file ignore settings.
343 (xref--collect-match): Remove the last argument, leaving the
344 regexp construction up to the caller.
345 * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
346 Change to take the xref-collect- function to use as an argument.
347 (elisp-xref-find): Update accordingly.
348 * lisp/progmodes/etags.el (etags--xref-find-matches)
349 (etags-xref-find): Same.
350
351 Move xref-elisp-location to elisp-mode.el
352 * lisp/progmodes/xref.el (xref-elisp-location)
353 (xref-make-elisp-location, xref-location-marker): Remove here.
354 (xref--xref): Don't limit the type of the location slot.
355 * lisp/progmodes/elisp-mode.el (xref-elisp-location):
356 Define as a cl-struct here.
357 (xref-location-marker): Move here.
358
359 2015-06-02 Eli Zaretskii <eliz@gnu.org>
360
361 Minor tweaks for .gitignore
362 * .gitignore: Don't ignore versioned *.html and *.ps files. Don't
363 ignore admin/notes/tags that might be ignored as TAGS on
364 case-insensitive filesystems. (Bug#20710)
365
366 2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
367
368 Generate curved quotes in ert doc
369 * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
370 (ert-results-mode-menu)
371 (ert-results-pop-to-backtrace-for-test-at-point)
372 (ert-results-pop-to-messages-for-test-at-point)
373 (ert-results-pop-to-should-forms-for-test-at-point)
374 (ert-describe-test):
375 Quote ‘like this’, not `like this', when generating doc strings
376 and the like.
377 * test/automated/ert-x-tests.el (ert-test-describe-test):
378 Allow quoting ‘like this’.
379
380 2015-06-02 Nicolas Richard <youngfrog@members.fsf.org>
381
382 Add test for previous commit
383 * test/automated/replace-tests.el: New file.
384 (query-replace--split-string-tests): Add test for previous commit.
385
386 Avoid confusion in query-replace history when replacing NUL chars
387 * lisp/replace.el (query-replace--split-string): New function.
388 (query-replace-read-from): Rely on the 'separator' property
389 instead of searching for the NUL character (Bug#20690).
390
391 2015-06-02 Glenn Morris <rgm@gnu.org>
392
393 Merge from origin/emacs-24
394 8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
395
396 * admin/gitmerge.el (gitmerge-commit-message):
397 Exclude "skipped" messages from ChangeLog.
398
399 2015-06-01 Michael Albinus <michael.albinus@gmx.de>
400
401 Sync with Tramp repository
402 * lisp/net/tramp.el (tramp-message): Dump connection buffer error
403 messages.
404 (tramp-handle-make-auto-save-file-name): When calling
405 `make-auto-save-file-name' internally, make sure it uses Unix-like
406 behavior, not Windows-like behavior.
407 * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
408 the local case, because "chown" might fail on w32.
409 * lisp/net/trampver.el (tramp-repository-get-version): Don't run
410 for XEmacs.
411
412 2015-06-01 Eli Zaretskii <eliz@gnu.org>
413
414 MS-Windows followup for batch stdout/stderr output changes
415 * lisp/international/mule-cmds.el (set-locale-environment): In
416 batch mode, use console codepages for keyboard and terminal
417 encoding. (Bug#20545)
418
419 Update .gitattributes for DOS EOL files
420 * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
421 CRLF end-of-line format.
422
423 NS equivalents of xterm.c and w32term.c changes
424 * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
425 glyph string background also when the font in use claims
426 preposterously large global height value. Helps to remove
427 artifacts left from previous displays when glyphless characters
428 are displayed as hex code in a box.
429 (x_new_font): Call get_font_ascent_descent to obtain a reasonable
430 value for FRAME_LINE_HEIGHT, even when a font claims very large
431 value for its height.
432
433 2015-06-01 Paul Eggert <eggert@cs.ucla.edu>
434
435 Avoid grave accent quoting in stderr diagnostics
436 A few Emacs diagnostics go directly to stderr, and so can't easily
437 contain curved quotes (as non-UTF-8 locales might mishandle them).
438 Instead of bothering to add support for this rarity, reword the
439 diagnostics so that they don't use grave accent to quote.
440 * src/alloc.c (mark_memory): Fix comment.
441 * src/buffer.c (init_buffer):
442 * src/dispnew.c (init_display):
443 * src/emacs.c (main, sort_args):
444 * src/lread.c (dir_warning):
445 * src/term.c (init_tty):
446 * src/unexmacosx.c (unexec):
447 * src/xfns.c (select_visual):
448 * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
449 Reword stderr diagnostics to avoid quoting `like this'.
450 * src/unexmacosx.c: Include errno.h.
451 * src/xfns.c (select_visual): Encode value for locale.
452
453 2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
454
455 Treat batch stdout/stderr like standard display
456 Calls like (print FOO) could generate improperly encoded or
457 hard-to-read output if FOO contains characters outside the system
458 locale. Fix this by treating batch stdout and stderr like
459 interactive standard display, when it comes to transliterating and
460 encoding characters (Bug#20545).
461 * doc/emacs/mule.texi (Communication Coding):
462 * doc/lispref/display.texi (Active Display Table):
463 * doc/lispref/nonascii.texi (Locales):
464 * etc/NEWS:
465 * src/coding.c (syms_of_coding):
466 * src/dispnew.c (syms_of_display):
467 Document this.
468 * src/print.c: Include disptab.h.
469 (printchar_to_stream): New function, with much of the guts of the
470 old Fexternal_debugging_output, except this one also uses the
471 standard display table.
472 (printchar, strout, Fexternal_debugging_output): Use it.
473
474 2015-05-31 Glenn Morris <rgm@gnu.org>
475
476 * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
477
478 2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
479
480 Remove unused DEFSYMs
481 Remove DEFSYMs that aren't used at the C level. Also:
482 * src/decompress.c (Qzlib_dll):
483 * src/font.c (Qunicode_sip):
484 * src/frame.c (Qtip_frame):
485 * src/ftfont.c (Qserif):
486 * src/gnutls.c (Qgnutls_dll):
487 * src/xml.c (Qlibxml2_dll):
488 Move from here ...
489 * src/w32fns.c (syms_of_w32fns): ... to here,
490 as these are used only on MS-Windows.
491
492 2015-05-31 Eli Zaretskii <eliz@gnu.org>
493
494 Attempt to fix crashes due to accesses beyond glyph matrix end
495 * src/xdisp.c (x_produce_glyphs): When it->ascent and it->descent
496 are determined from per-character metrics, don't let the
497 max_ascent and max_descent become smaller than values returned by
498 normal_char_ascent_descent, to avoid unpleasant dynamic resizing
499 of screen line heights when text changes.
500 * src/xterm.c (x_new_font)
501 * src/w32term.c (x_new_font): Call get_font_ascent_descent to
502 obtain a reasonable value for FRAME_LINE_HEIGHT, even when a font
503 claims very large value for its height.
504 * src/font.c (font_open_entity): Call get_font_ascent_descent to
505 obtain a reasonable value for FRAME_SMALLEST_FONT_HEIGHT, even
506 when a font claims very large value for its height.
507
508 2015-05-31 Michael Albinus <michael.albinus@gmx.de>
509
510 Use another default value for tramp-histfile-override
511 * lisp/net/tramp-sh.el (tramp-histfile-override):
512 Use ".tramp_history" as default.
513 Fixes: debbugs:#20446
514
515 2015-05-30 Eli Zaretskii <eliz@gnu.org>
516
517 Fix display of composite characters with large fonts
518 * src/xdisp.c (x_produce_glyphs): Call normal_char_ascent_descent
519 for reasonable values of font ascent and descent.
520 (get_font_ascent_descent): New function.
521 * src/composite.c (composition_gstring_width): Call
522 get_font_ascent_descent for reasonable values of font ascent and
523 descent.
524 * dispextern.h: Add prototype for get_font_ascent_descent.
525
526 Fix display of cursor at end of empty lines
527 * src/xdisp.c (normal_char_ascent_descent): Accept additional
528 argument: the character to use for metrics in case the font
529 declares too large ascent and descent values. Add 1 pixel to
530 ascent and descent values.
531 (normal_char_height): Accept additional argument: the character to
532 use for metrics in case the font declares too large height value.
533 Call normal_char_ascent_descent instead of doing calculations for
534 a different default character.
535 (estimate_mode_line_height, handle_single_display_spec)
536 (calc_pixel_width_or_height, produce_stretch_glyph)
537 (calc_line_height_property, produce_glyphless_glyph): All callers
538 changed.
539 (append_space_for_newline): Make sure the space glyph produced at
540 end of line has correct ascent and descent values, and the glyph
541 row has correct height, even when it's empty.
542
543 2015-05-29 Eli Zaretskii <eliz@gnu.org>
544
545 Fix 2 more calculations of line height
546 * src/xdisp.c (estimate_mode_line_height, handle_single_display_spec):
547 Use normal_char_height.
548
549 Fix line dimensions from line-height property
550 * src/xdisp.c (normal_char_ascent_descent): New function,
551 extracted from produce_glyphless_glyph.
552 (calc_line_height_property, produce_glyphless_glyph): Use it to
553 compute reasonable estimates of ascent and descent for large
554 fonts.
555
556 Fix display of stretch glyphs with large fonts
557 * src/xdisp.c (normal_char_height): New function.
558 (calc_pixel_width_or_height, produce_stretch_glyph): Use it to
559 compute more reasonable estimation of a "normal character height"
560 when the font claims preposterously large height values.
561
562 2015-05-29 Nicolas Petton <nicolas@petton.fr>
563
564 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
565
566 2015-05-28 Eli Zaretskii <eliz@gnu.org>
567
568 Fix display of glyphless characters with problematic fonts
569 * src/w32term.c (x_draw_glyph_string_background): Force redraw of
570 glyph string background also when the font in use claims
571 preposterously large global height value. Helps to remove
572 artifacts left from previous displays when glyphless characters
573 are displayed as hex code in a box.
574 * src/xterm.c (x_draw_glyph_string_background): Force redraw of
575 glyph string background also when the font in use claims
576 preposterously large global height value. Helps to remove
577 artifacts left from previous displays when glyphless characters
578 are displayed as hex code in a box.
579 * src/w32font.c (w32font_draw): Fix background drawing for
580 glyphless characters that display as acronyms or hex codes in a
581 box.
582 * src/xftfont.c (xftfont_draw): Fix background drawing for
583 glyphless characters that display as acronyms or hex codes in a
584 box.
585 * src/xdisp.c (produce_glyphless_glyph): Compute reasonable values
586 for it->ascent and it->descent when the font claims preposterously
587 large global values.
588 (FONT_TOO_HIGH): Move from here...
589 * src/dispextern.h (FONT_TOO_HIGH): ...to here.
590
591 2015-05-27 Eli Zaretskii <eliz@gnu.org>
592
593 Avoid very high screen lines with some fonts
594 * src/xdisp.c (get_phys_cursor_geometry): Adjust the height of the
595 cursor to avoid weird-looking hollow cursor with fonts that have
596 large ascent values for some glyphs. This avoids having the
597 hollow cursor start too low.
598 (append_space_for_newline): Adjust the ascent value of the newline
599 glyph, so that the hollow cursor at end of line displays
600 correctly.
601 (FONT_TOO_HIGH): New macro.
602 (x_produce_glyphs): Use it to detect fonts that claim a
603 preposterously large height, in which case we use per-glyph ascent
604 and descent values. (Bug#20628)
605
606 2015-05-16 Nicolas Petton <nicolas@petton.fr>
607
608 * etc/NEWS: Add an entry about map.el
609
610 Improve the docstring of functions in map.el
611 Since a map is not a data structure but a concept, adding information
612 about the possible types of maps can be useful information.
613 * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
614 each public function.
615
616 2015-04-29 Nicolas Petton <nicolas@petton.fr>
617
618 Faster implementation of map-empty-p
619 * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
620 specific tests depending on the type of the map.
621
622 * lisp/emacs-lisp/map.el: Better docstrings.
623
624 2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
625
626 * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
627
628 2015-04-25 Nicolas Petton <nicolas@petton.fr>
629
630 * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
631
632 * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
633
634 Fix a false negative in `map-elt' with alists and values being nil
635 * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
636 found but its associated value is nil, do not return the default
637 value.
638 * test/automated/map-tests.el: Add a regression test.
639
640 2015-04-24 Nicolas Petton <nicolas@petton.fr>
641
642 * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
643
644 Do not signal an error when trying to delete a key from an array
645 * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
646 the key is present to avoid signaling an error.
647 * test/automated/map-tests.el: Add a test for deleting non-existing
648 keys from maps.
649
650 * lisp/emacs-lisp/map.el: Better docstring.
651
652 Minor improvement in map-elt.
653 * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
654 doing a lookup in arrays, but check the boundaries of the array
655 instead.
656 * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
657 and a negative integer as key.
658
659 2015-04-21 Nicolas Petton <nicolas@petton.fr>
660
661 * test/automated/map-tests.el: Refactoring of test methods.
662
663 * test/automated/map-tests.el: Renamed from map-test.el.
664
665 2015-04-18 Nicolas Petton <nicolas@petton.fr>
666
667 * lisp/emacs-lisp/map.el (map-into): Better error message.
668
669 * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
670
671 Throw an error when converting a map into an unknown map type
672 * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
673 * test/automated/map-test.el: Add a regression test.
674
675 New library map.el similar to seq.el but for mapping data structures.
676 * test/automated/map-test.el: New file.
677 * lisp/emacs-lisp/map.el: New file.
678
679 2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
680
681 Make sure there's no explicit tag name
682 * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
683 there's no explicit tag name (bug#20629).
684
685 2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
686
687 Remove format2
688 * src/editfns.c, src/lisp.h (format2): Remove.
689 It is more trouble than it's worth, now that we have CALLN.
690 This is just a minor refactoring.
691 * src/buffer.c (Fkill_buffer):
692 * src/dbusbind.c (XD_OBJECT_TO_STRING):
693 * src/fileio.c (barf_or_query_if_file_exists):
694 Adjust to format2 going away.
695
696 Don't misencode C-generated messages
697 Also, be more consistent about calls to 'Fmessage' vs 'message'.
698 * src/alloc.c (Fgc_status):
699 Prefer AUTO_STRING to build_string for Fmessage call.
700 * src/data.c (Fmake_variable_buffer_local)
701 (Fmake_local_variable, Fmake_variable_frame_local):
702 * src/doc.c (store_function_docstring):
703 Use Fmessage, not message, since the argument can contain
704 non-ASCII characters, and this can cause the resulting message
705 to be incorrectly encoded for the current environment.
706 * src/fns.c (maybe_resize_hash_table):
707 * src/xselect.c (x_clipboard_manager_save_all):
708 Use message, not Fmessage, since Fmessage's power isn't needed here.
709 * src/process.c (Fmake_network_process): Reword message to avoid %s.
710 * src/xdisp.c (vmessage): Document restrictions on message contents.
711 (message_nolog) [false]: Remove unused code.
712
713 Use \r rather than ^M in string literals
714 This is less likely to cause problems on platforms that
715 use CRLF (or CR!) termination for lines.
716
717 Update .gitattributes to match current sources
718 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
719 * .gitattributes: Accommodate tests that insist on DOS format.
720 Remove test/automated/data/decompress/foo-gzipped.
721 Add etc/e/eterm-color.
722
723 2015-05-30 Eli Zaretskii <eliz@gnu.org>
724
725 Document 'face-ignored-fonts'
726 * doc/emacs/mule.texi (Modifying Fontsets): Document
727 face-ignored-fonts. (Bug#20628)
728
729 Add etags test for the new -Q option
730 * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
731 * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
732 * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
733 test-case changes below.
734 * test/etags/ETAGS.good_6: New file.
735 * test/etags/cp-src/x.cc: New file.
736 * test/etags/Makefile (CPSRC): Add x.cc.
737 (check): Add one more test, for -Q.
738
739 2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
740
741 Use list for the tags completion table, not obarray
742 * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
743 list instead of an obarray
744 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
745 (tags-completion-table): Combine those lists.
746 (tags-completion-table): Update the docstring.
747
748 2015-05-30 Eli Zaretskii <eliz@gnu.org>
749
750 Restore EOL format testing in etags
751 * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
752 * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
753 * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
754 test-case changes below.
755 * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
756 * test/etags/cp-src/c.C (B): Add back stray CR character.
757 * test/etags/c-src/dostorture.c: Add back.
758 * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
759
760 2015-05-30 Vitaly Takmazov <vitalyster@gmail.com> (tiny change)
761
762 Declare Emacs on MS-Windows to be DPI-aware
763 * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
764 * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
765 This avoids Windows entering compatibility mode for Emacs,
766 which causes fonts to look less nice.
767
768 2015-05-30 Michael Albinus <michael.albinus@gmx.de>
769
770 Improve Tramp traces.
771 * lisp/net/trampver.el (tramp-repository-get-version): New defun.
772 * lisp/net/tramp.el (tramp-debug-message): Use it.
773
774 2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
775
776 backup-buffer minor reworking of internals
777 * lisp/files.el (backup-buffer): Rework to avoid a couple of
778 unused locals inadvertently introduced in the previous change.
779
780 backup-buffer now reports .emacs.d/%backup% ills
781 * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
782 fails due to disk space exhaustion or whatever, do not pretend
783 that it succeeded. More generally, do a better job of checking
784 for I/O failures, and limit the scope of the condition-case to
785 just the operations where file errors should be caught and ignored
786 (Bug#20595). Also, don't bother trying to delete later backups if
787 an earlier deletion fails, as this is a sign of trouble and it's
788 better to stop when there's trouble.
789
790 copy-file now truncates output after writing
791 * src/fileio.c (Fcopy_file): Truncate output after writing rather
792 than before. This is more likely to work than truncation before
793 writing, if the file system is out of space or the user is over
794 disk quota (Bug#20595). Also, check for read errors.
795
796 2015-05-29 Artur Malabarba <bruce.connor.am@gmail.com>
797
798 * lisp/emacs-lisp/package.el: Don't load from parent dir
799 (package-load-all-descriptors): Don't load descriptors from
800 directories above the package directories.
801
802 2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
803
804 Merge from gnulib
805 This incorporates the following (Bug#20681):
806 2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
807 2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
808 * lib/set-permissions.c: Copy from gnulib.
809
810 2015-05-29 Michael Albinus <michael.albinus@gmx.de>
811
812 Improve Tramp traces.
813 * lisp/net/tramp.el (tramp-call-process-region): New defun.
814 * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
815
816 2015-05-29 Glenn Morris <rgm@gnu.org>
817
818 * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
819
820 2015-05-29 Wolfgang Jenkner <wjenkner@inode.at>
821
822 * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
823 The signature was changed in the cairo branch, merged on 2015-05-23.
824 This oversight broke compiling only the non-toolkit X version.
825
826 2015-05-29 Samer Masterson <samer@samertm.com>
827
828 * doc/lispref/os.texi: Update initial-buffer-choice docs.
829
830 2015-05-29 Glenn Morris <rgm@gnu.org>
831
832 * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
833 Mark as an expected failure.
834
835 2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
836
837 Change package test to look for curved quotes
838 * test/automated/package-test.el (package-test-describe-package)
839 (package-test-signed): Search for curved single quotes as well as
840 for grave accent and apostrophe.
841
842 2015-05-28 Katsumi Yamaoka <yamaoka@jpl.org>
843
844 gnus-art.el: Re-revert last change
845 * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
846 cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
847
848 2015-05-28 Samer Masterson <samer@samertm.com>
849
850 Show files when `initial-buffer-choice' is non-nil
851 * startup.el (command-line-1): When Emacs is given a file as an
852 argument and `initial-buffer-choice' is non-nil, display both the file
853 and `initial-buffer-choice'. For more than one file, show
854 `initial-buffer-choice' and *Buffer List*. Refactor display-changing
855 commands out of the command line arg parser.
856 (initial-buffer-choice): Clarify docstring.
857
858 2015-05-28 Eli Zaretskii <eliz@gnu.org>
859
860 Fix last commit
861 * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
862 (gnulib module qcopy-acl): Add back, as it is harmless. This
863 minimizes differences wrt lib/gnulib.mk.
864
865 Fix the MS-Windows build as followup to gnulib update
866 * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
867 set-permissions.c, as they don't compile on MinGW.
868 (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
869
870 2015-05-28 Paul Eggert <eggert@cs.ucla.edu>
871
872 Revert my change to gnus-art.el
873 * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
874 It wasn't that important, and it caused a Gnus build to fail. See:
875 http://www.randomsample.de:4456/builders/emacs-devel/builds/734
876
877 New minor mode Electric Quote
878 This lets you easily insert quotes ‘like this’ by typing
879 quotes `like this', and similarly you can easily insert
880 quotes “like this” by typing quotes ``like this'' (Bug#20545).
881 * doc/emacs/basic.texi (Inserting Text):
882 * doc/emacs/modes.texi (Minor Modes):
883 * etc/NEWS: Document it.
884 * doc/emacs/text.texi (Quotation Marks): New section.
885 * lisp/electric.el (electric-quote-comment)
886 (electric-quote-string, electric-quote-paragraph):
887 New custom vars.
888 (electric--insertable-p)
889 (electric-quote-post-self-insert-function): New functions.
890 (electric-quote-mode, electric-quote-local-mode): New minor modes.
891 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
892 Add curved single quotes to electric-pair-text-pairs.
893 Set electric-quote-string in this buffer.
894
895 A few more doc string fixes (Bug#20385)
896
897 Accept curved quotes in doc strings
898 * lisp/info-look.el (info-lookup-guess-custom-symbol):
899 (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
900
901 Generate curved quotes in pseudo-info nodes
902 * lisp/info.el (Info-virtual-index-find-node)
903 (Info-virtual-index, Info-apropos-find-node, info-apropos):
904 Quote ‘like this’, not `like this', when generating pseudo-info nodes.
905
906 Fix minor quoting problems in doc strings
907 Most of these fixes involve escaping grave accents that are
908 actually intended to be grave accents, not left quotes.
909 (Bug#20385)
910
911 Support curved quotes in doc strings
912 Emacs's traditional doc string style has been to quote symbols
913 `like this'. This worked well on now-obsolete terminals where
914 ` and ' were symmetric quotes, but nowadays curved quotes
915 ‘like this’ look better. Support quoting the new way too.
916 (Bug#20385)
917 * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
918 ‘like-this’ as well as `like-this'.
919 * etc/NEWS: Mention this.
920 * lisp/cedet/mode-local.el (overload-docstring-extension)
921 (mode-local-print-binding, mode-local-describe-bindings-2):
922 * lisp/cus-theme.el (describe-theme-1):
923 * lisp/descr-text.el (describe-text-properties-1, describe-char):
924 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
925 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
926 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
927 (eieio-help-constructor):
928 * lisp/emacs-lisp/package.el (describe-package-1):
929 * lisp/faces.el (describe-face):
930 * lisp/help-fns.el (help-fns--key-bindings)
931 (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
932 (help-fns--interactive-only, describe-function-1):
933 (describe-variable):
934 * lisp/help.el (describe-mode):
935 * lisp/international/mule-cmds.el (describe-input-method)
936 (describe-language-environment):
937 * lisp/international/mule-diag.el (describe-character-set)
938 (print-coding-system-briefly, list-input-methods)
939 (list-input-methods-1):
940 Insert curved quotes rather than grave accent and apostrophe.
941 * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
942 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
943 (checkdoc-proper-noun-region-engine):
944 * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
945 (lisp-cl-font-lock-keywords-2):
946 * lisp/finder.el (finder-font-lock-keywords):
947 * lisp/gnus/gnus-art.el (gnus-button-alist):
948 * lisp/help-fns.el (help-do-arg-highlight)
949 (describe-function-1, describe-variable):
950 * lisp/help-mode.el (help-xref-symbol-regexp)
951 (help-xref-info-regexp, help-xref-url-regexp):
952 * lisp/help.el (describe-mode):
953 * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
954 * lisp/wid-edit.el (widget-documentation-link-regexp):
955 Parse symbols quoted ‘like-this’ as well as `like-this'.
956 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
957 Add "‘" and "’" to electric-pair-text-pairs.
958 (elisp--form-quoted-p): Also allow "‘" as a quoting char.
959 (elisp-completion-at-point, elisp--preceding-sexp):
960 Also treat "‘" and "’" as quoting chars.
961
962 substitute-command-keys now curves quotes
963 So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
964 * doc/lispref/help.texi (Keys in Documentation):
965 * etc/NEWS: Document this.
966 * src/doc.c (Fsubstitute_command_keys): Implement it.
967
968 2015-05-28 Glenn Morris <rgm@gnu.org>
969
970 * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
971 (rmail-summary-by-topic, rmail-summary-by-senders):
972 No longer strip leading/trailing whitespace.
973
974 * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
975 (f90-no-block-limit): Add "enum". (Bug#20680)
976 * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
977 New tests.
978
979 2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
980
981 * lisp/isearch.el (isearch--current-buffer): Give a default value.
982
983 Un-revert changes mistakenly dropped by f9fabb2b
984
985 2015-05-27 Paul Eggert <eggert@cs.ucla.edu>
986
987 Merge from gnulib
988 This incorporates:
989 2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
990 2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
991 2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
992 2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
993 2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
994 2015-05-26 stdio: fix probe on mingw under gcc 5.1
995 * admin/merge-gnulib (GNULIB_MODULES):
996 Replace qacl with qcopy-acl, since we don't need the rest of qacl.
997 * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
998 * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
999 * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
1000 Get latest versions from gnulib.
1001 * lib/get-permissions.c, lib/set-permissions.c: New files.
1002 * lib/gnulib.mk, m4/gnulib-comp.m4:
1003 Regenerate.
1004 * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
1005
1006 2015-05-27 Dmitry Gutov <dgutov@yandex.ru>
1007
1008 Delete the old process in vc-setup-buffer
1009 * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
1010 process here.
1011 (vc-do-command): Rather than here (bug#20608).
1012
1013 2015-05-27 Ivan Shmakov <ivan@siamics.net>
1014
1015 Avoid gratuitous delete-dups in face-at-point.
1016 * lisp/faces.el (face-at-point): Do not compute the properly
1017 ordered, duplicate-free list if only a single value is
1018 requested anyway. (Bug#20519)
1019
1020 Show the exact C-x 8 RET invocation in describe-char.
1021 * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
1022 invocation instead of a template. (Bug#20522)
1023
1024 2015-05-27 Artur Malabarba <bruce.connor.am@gmail.com>
1025
1026 * lisp/emacs-lisp/package.el: Don't erase tags on refresh
1027 (package-menu--post-refresh): Call `tabulated-list-print' with the
1028 UPDATE argument. This only affects the refresh action, the revert
1029 action still erases tags.
1030 (package-menu-get-status): Change `assq' to `assoc'.
1031 (package-menu--mark-upgrades-1): New function.
1032 (package-menu--mark-upgrades-pending): New variable.
1033 (package-menu-mark-upgrades): Use them to delay marking until
1034 after refresh is done.
1035 (package-menu--post-refresh): Call mark-upgrades-1 if
1036 mark-upgrades-pending is non-nil.
1037
1038 2015-05-27 Michael Albinus <michael.albinus@gmx.de>
1039
1040 Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
1041
1042 2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
1043
1044 * lisp/isearch.el (isearch--current-buffer): New var
1045 (isearch-update): Set cursor-sensor-inhibit here.
1046 (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
1047
1048 Change inhibit-point-motion-hooks to t
1049 * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
1050 to t and document it as obsolete.
1051
1052 2015-05-27 Eli Zaretskii <eliz@gnu.org>
1053
1054 Support ZIP files that use Zip64 extensions
1055 * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
1056 format of central directory offsets used by Zip64 extensions.
1057 (Bug#20665)
1058
1059 2015-05-27 Michael Albinus <michael.albinus@gmx.de>
1060
1061 New test tramp-test30-make-auto-save-file-name
1062 * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
1063 (tramp-test31-special-characters)
1064 (tramp-test31-special-characters-with-stat)
1065 (tramp-test31-special-characters-with-perl)
1066 (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
1067 (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
1068 (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
1069 (tramp-test34-recursive-load, tramp-test35-unload): Rename.
1070
1071 Improve tramp-handle-make-auto-save-file-name
1072 * tramp.el (tramp-auto-save-directory): Add :tags.
1073 (tramp-handle-make-auto-save-file-name): Let native
1074 `make-auto-save-file-name' use `auto-save-file-name-transforms',
1075 if `tramp-auto-save-directory' is not set.
1076
1077 2015-05-27 Glenn Morris <rgm@gnu.org>
1078
1079 No longer set dired-directory in eshell. (Bug#16477)
1080 * lisp/eshell/esh-mode.el (eshell-mode):
1081 * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
1082
1083 * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
1084
1085 Make c-submit-bug-report file reports at debbugs.gnu.org. (Bug#15784)
1086 * lisp/progmodes/cc-mode.el (c-mode-help-address):
1087 Change to submit@debbugs.
1088 (c-mode-bug-package): New constant.
1089 (mail-position-on-field): Declare.
1090 (c-submit-bug-report): Insert X-Debbugs-Package header.
1091 * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
1092 Mention debbugs.gnu.org.
1093
1094 2015-05-26 Glenn Morris <rgm@gnu.org>
1095
1096 * lisp/mail/rmailsum.el: Commas no longer separate regexps. (Bug#19026)
1097 (rmail-summary-by-recipients, rmail-summary-by-topic)
1098 (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
1099 * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
1100
1101 2015-05-26 Paul Eggert <eggert@cs.ucla.edu>
1102
1103 Handle curved quotes in info files
1104 * lisp/calc/calc-help.el (calc-describe-thing):
1105 * lisp/info.el (Info-find-index-name)
1106 (Info-try-follow-nearest-node, Info-fontify-node):
1107 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
1108 In info files, process quotes ‘like this’ the same way we process
1109 quotes `like this'. This catches a few places we missed earlier.
1110
1111 2015-05-26 Dmitry Gutov <dgutov@yandex.ru>
1112
1113 xref-prompt-for-identifier: Use a list value
1114 * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
1115 value, to be interpreted as a list of commands.
1116 (xref--prompt-p): New function.
1117 (xref--read-identifier): Use it.
1118
1119 2015-05-26 Eli Zaretskii <eliz@gnu.org>
1120
1121 Teach MS-Windows font back-end return per-glyph ascent/descent
1122 * src/w32font.h (struct w32_metric_cache): Add ascent and descent
1123 values.
1124 * src/w32font.c (w32font_text_extents): Compute, cache, and
1125 accumulate per-glyph ascent and descent values, instead of copying
1126 global values from the font. If the values are not available from
1127 the font data, i.e., non-TTF fonts, fall back on font-global values.
1128 (compute_metrics): Compute and return per-glyph ascent and descent
1129 values, if returned by GetGlyphOutlineW, falling back on
1130 font-global values. (Bug#20628)
1131 * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
1132 height of rectangle to be drawn, to be compatible with
1133 XDrawRectangle. Fixes glyphless-char display as hex codes in a
1134 box, when per-glyph ascent/descent values are used.
1135
1136 2015-05-26 Artur Malabarba <bruce.connor.am@gmail.com>
1137
1138 * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
1139 (tabulated-list-print): Don't sort if sorter is nil
1140
1141 2015-05-26 Michael Albinus <michael.albinus@gmx.de>
1142
1143 Fix Bug#20621
1144 * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it. There
1145 are major modes which set `auto-save-mode' on their own rules;
1146 Tramp shall not overwrite such settings.
1147 (Bug#20621)
1148
1149 2015-05-26 Glenn Morris <rgm@gnu.org>
1150
1151 * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
1152 (desktop-load-file): Guess that "foobar" defines "foobar-mode".
1153 (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
1154 Doc updates.
1155 (vc-dir-mode): Remove unnecessary autoload.
1156
1157 2015-05-25 Philipp Stephani <phst@google.com>
1158
1159 * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
1160 (xterm--extra-capabilities-type): Add `getSelection'.
1161 (xterm--query): Add `no-async' argument.
1162 (xterm--init-activate-get-selection): New function.
1163 (terminal-init-xterm): Use it.
1164 (xterm--init-modify-other-keys): Rename from
1165 terminal-init-xterm-modify-other-keys.
1166 (xterm--init-bracketed-paste-mode): Rename from
1167 terminal-init-xterm-bracketed-paste-mode.
1168 (xterm--init-activate-set-selection): Rename from
1169 terminal-init-xterm-activate-set-selection.
1170 (xterm--selection-char): New function.
1171 (gui-backend-set-selection): Use it. Use the &context to only apply
1172 this method in terminals where we enabled the feature.
1173 (gui-backend-get-selection): New method.
1174
1175 2015-05-25 Daniel Colascione <dancol@dancol.org>
1176
1177 Add C-language keyword constants to C++
1178 * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
1179 keyword constants to C++.
1180
1181 2015-05-25 Paul Eggert <eggert@cs.ucla.edu>
1182
1183 Make TAGS files more portable to MS-Windows
1184 * etc/NEWS: Document this.
1185 * lib-src/etags.c (readline_internal) [DOS_NT]:
1186 Don't treat CRs differently from GNUish hosts.
1187 * lisp/progmodes/etags.el (etags-goto-tag-location):
1188 Adjust STARTPOS to account for the skipped CRs in dos-style files.
1189
1190 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
1191
1192 Improve fix of debbugs:20634 in tramp-sh.el
1193
1194 2015-05-25 Eli Zaretskii <eliz@gnu.org>
1195
1196 Fix a typo in last commit
1197 * lib-src/etags.c (C_entries): Fix a typo.
1198 * test/etags/ETAGS.good_1:
1199 * test/etags/ETAGS.good_2:
1200 * test/etags/ETAGS.good_3:
1201 * test/etags/ETAGS.good_4:
1202 * test/etags/ETAGS.good_5:
1203 * test/etags/CTAGS.good: Update due to the change in etags.c.
1204
1205 Fix tagging of class members in C-like OO languages
1206 * lib-src/etags.c (longopts): Add new option --class-qualify and
1207 its shorthand -Q.
1208 (print_help): Add help text for --class-qualify.
1209 (main): Add handling of -Q.
1210 (consider_token, C_entries) <omethodparm>: Append argument types
1211 to Objective C methods only if --class-qualify was specified.
1212 Qualify C++, Objective C, and Java class members with their class
1213 names only if --class-qualify was specified.
1214 (C_entries): If --class-qualify was not specified, remove the
1215 namespace and class qualifiers from tag names of C++ methods.
1216 This allows to use etags.el as xref back-end without the
1217 tag-symbol-match-p method, which greatly increases the number of
1218 potentially false positives. (Bug#20629)
1219 * doc/man/etags.1: Update to document the new --class-qualify
1220 option.
1221 * test/etags/ETAGS.good_1:
1222 * test/etags/ETAGS.good_2:
1223 * test/etags/ETAGS.good_3:
1224 * test/etags/ETAGS.good_4:
1225 * test/etags/ETAGS.good_5:
1226 * test/etags/CTAGS.good: Update due to changes in etags.c.
1227
1228 2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
1229
1230 (cl-generic-define-method): Side effects are evil (bug#20644)
1231 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
1232 cons-cells that might be used as keys in an `equal' hash-table.
1233
1234 2015-05-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
1235
1236 Make erc timestamps visible again
1237 * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
1238 timestamps visible again (if requested).
1239
1240 2015-05-25 Eli Zaretskii <eliz@gnu.org>
1241
1242 Fix last change in etags.c that broke tagging compresed files
1243 * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
1244 quoting of decompression shell command for MS-Windows/MS-DOS.
1245
1246 2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
1247
1248 * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
1249 (Bug#20639)
1250
1251 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
1252
1253 Fix typo in 89035e247591c8d688fce922b7079881aa110f33
1254
1255 2015-05-25 Orivej Desh <orivej@gmx.fr> (tiny change)
1256
1257 Fix IPv6 addresses in Tramp
1258 * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
1259 Add sqare brackets around host name.
1260
1261 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
1262
1263 Inhibit `epa-file-handler' in Tramp
1264 (Bug#20634)
1265 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
1266 (tramp-sh-handle-insert-file-contents-literally): Inhibit also
1267 `epa-file-handler'.
1268
1269 2015-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
1270
1271 * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
1272 (pcase-let): Document the behavior in case the pattern doesn't match.
1273
1274 2015-05-24 Artur Malabarba <bruce.connor.am@gmail.com>
1275
1276 * lisp/emacs-lisp/tabulated-list.el: New optional print method
1277 (tabulated-list-print): New optional argument, UPDATE. If
1278 non-nil, the list is printed by only adding and deleting the
1279 changed entries, instead of erasing the whole buffer. This method
1280 is much faster when few or no entries have changed.
1281 * doc/lispref/modes.texi (Tabulated List Mode): Document it.
1282 * etc/NEWS: Document it.
1283
1284 * lisp/emacs-lisp/tabulated-list.el: Improve printing
1285 (tabulated-list--get-sorter): New function.
1286 (tabulated-list-print): Restore window-line when remember-pos is
1287 passed and optimize away the `nreverse'.
1288
1289 2015-05-24 Paul Eggert <eggert@cs.ucla.edu>
1290
1291 Simpilify etags TEX mode scanning
1292 * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
1293 Remove static vars.
1294 (TeX_commands): Deduce escapes here instead.
1295 (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
1296 This removes the need for a reset_input call.
1297
1298 Improve etags I/O error reporting
1299 * lib-src/etags.c:
1300 Don't include sys/types.h and sys/stat.h; no longer needed.
1301 (infilename): New static var.
1302 (process_file_name): Don't call 'stat'. Instead, just open the
1303 file for reading and report any errors. Don't bother making
1304 a copy of the file argument; it's not needed. Be more careful to
1305 use the failing errno when reporting an error.
1306 Quote the real name better (though no perfectly)
1307 when passing it to the shell.
1308 (reset_input): New function, which reports I/O errors.
1309 All uses of 'rewind' changed to use this function.
1310 (perhaps_more_input): New function, which also checks for
1311 I/O errors. All uses of 'feof' changed to use this function.
1312 (analyze_regex): Report an error if fclose fails.
1313 (readline_internal): Report an error if getc fails.
1314 (etags_mktmp): Return an error if close fails.
1315
1316 etags.c: avoid side effects in 'if'
1317 * lib-src/etags.c (process_file_name, Perl_functions)
1318 (TEX_decode_env): Hoist side effects into previous statement.
1319
1320 .gitignore tweaks
1321 * .gitignore: Ignore all *.stamp files. Sort.
1322 Ignore [0-9]*.txt (commonly used name for git patches)
1323 and /vc-dwim-log-* (vc-dwim temporary).
1324
1325 2015-05-24 Eli Zaretskii <eliz@gnu.org>
1326
1327 Fix last change in etags.c, which failed the test suite
1328 * lib-src/etags.c (intoken): Add '$' to the set, as it was there
1329 before the last change.
1330
1331 2015-05-23 Glenn Morris <rgm@gnu.org>
1332
1333 Remove charset map files from repository, generate in first bootstrap
1334 * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
1335 (all): Create the stamp file.
1336 (extraclean): Delete the stamp file.
1337 * src/Makefile.in (lispintdir, charsets): New variables.
1338 (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
1339 New rules.
1340 (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
1341 * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
1342 * etc/charsets/*.map: Remove from repository.
1343
1344 2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
1345
1346 Cleanup etags.c to use locale-independent code
1347 Although this doesn't alter behavior (as etags doesn't use
1348 setlocale), the new version is more clearly locale-independent and
1349 the executable is a bit smaller on my platform.
1350 * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
1351 Include <c-ctype.h> instead of <ctype.h>.
1352 (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
1353 (begtk, midtk):
1354 Remove; no longer needed.
1355 (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
1356 All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
1357 c_islower, c_tolower, respectively.
1358 (notinname, begtoken, intoken, endtoken): Rewrite as functions
1359 instead of macros, and initialize the tables at compile-time
1360 rather than at run-time.
1361
1362 Put default action first in src/Makefile
1363 * src/Makefile.in (all): Put this rule before lisp.mk.
1364 That way, plain 'make' works in the src directory again.
1365
1366 2015-05-23 Glenn Morris <rgm@gnu.org>
1367
1368 * Makefile.in: Fix extraclean rule.
1369 (extraclean_dirs): New.
1370 (extraclean): Use it.
1371
1372 2015-05-23 Eli Zaretskii <eliz@gnu.org>
1373
1374 Avoid compiler warning in image.c on MS-Windows
1375 * src/w32term.h (x_query_color): Add prototype, to avoid compiler
1376 warning in image.c.
1377
1378 2015-05-23 Glenn Morris <rgm@gnu.org>
1379
1380 Fix --without-toolkit-scroll-bars builds.
1381 * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
1382 Add new argument to x_clear_area1.
1383 (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
1384 Update x_clear_area arguments.
1385
1386 * admin/charsets/glibc/: New directory, imported from glibc 2.21.
1387 * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
1388 Change to included version.
1389 (LOCAL, local, totalclean): Remove.
1390 (extraclean): Delete all generated files.
1391
1392 2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
1393
1394 * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
1395
1396 * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
1397
1398 tags-completion-at-point-function: Don't trust the find-tag function
1399 * lisp/progmodes/etags.el (tags-completion-at-point-function):
1400 Don't trust the find-tag function.
1401
1402 2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
1403
1404 Pacify --enable-gcc-warnings
1405 * src/frame.h (x_query_color): Remove redundant extern decl.
1406 * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
1407 (ftcrfont_match, ftcrfont_open, ftcrfont_close)
1408 (ftcrfont_text_extents, ftcrfont_draw):
1409 * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
1410 (XTframe_up_to_date, x_clear_area1, x_clear_frame)
1411 (x_ins_del_lines, frame_highlight, frame_unhighlight)
1412 (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
1413 (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
1414 (x_update_window_begin, x_connection_closed)
1415 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
1416 (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
1417 (*x_gc_get_ext_data, x_extension_initialize)
1418 (x_cr_accumulate_data):
1419 Remove redundant static decl. Many of these GCC doesn't complain
1420 about, but we might as well clean out the duplication while we're
1421 in the neighborhood.
1422 * src/xterm.c (x_fill_trapezoid_for_relief):
1423 Remove decl of nonexistent function.
1424
1425 2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
1426
1427 Replace gui-method macros with cl-generic with &context
1428 * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
1429 (gui-method-declare, gui-call): Remove.
1430 (frame-creation-function): Use cl-defgeneric.
1431 (make-frame): Adjust callers.
1432 * lisp/menu-bar.el (menu-bar-edit-menu):
1433 Use gui-backend-selection-exists-p.
1434 * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
1435 (gui-backend-get-selection): New cl-generic to replace
1436 gui-get-selection method.
1437 (gui-backend-set-selection): New cl-generic to replace
1438 gui-set-selection method.
1439 (gui-selection-owner-p): New cl-generic to replace
1440 gui-selection-owner-p method.
1441 (gui-backend-selection-exists-p): New cl-generic to replace
1442 gui-selection-exists-p method. Adjust all callers.
1443 * lisp/server.el (server-create-window-system-frame): Don't ignore
1444 window-system spec even when unsupported.
1445 * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
1446 * lisp/startup.el (handle-args-function, window-system-initialization):
1447 Use cl-defgeneric.
1448 (command-line): Adjust calls accordingly.
1449 * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
1450 a window-system-initialization method.
1451 (handle-args-function, frame-creation-function): Use cl-defmethod.
1452 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
1453 (gui-get-selection): Use cl-defmethod on the new functions instead.
1454 * lisp/term/pc-win.el (w16-get-selection-value): Turn into
1455 a gui-backend-get-selection method.
1456 (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
1457 Use cl-defmethod on the new functions instead.
1458 (msdos-window-system-initialization): Turn into
1459 a window-system-initialization method.
1460 (frame-creation-function, handle-args-function): Use cl-defmethod.
1461 * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
1462 a window-system-initialization method.
1463 (handle-args-function, frame-creation-function): Use cl-defmethod.
1464 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
1465 (gui-get-selection): Use cl-defmethod on the new functions instead.
1466 * lisp/term/x-win.el (x-window-system-initialization): Turn into
1467 a window-system-initialization method.
1468 (handle-args-function, frame-creation-function): Use cl-defmethod.
1469 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
1470 (gui-get-selection): Use cl-defmethod on the new functions instead.
1471 * lisp/term/xterm.el (xterm--set-selection): Turn into
1472 a gui-backend-set-selection method.
1473 * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
1474 (Fns_selection_owner_p): Remove unused arg `terminal'.
1475 (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
1476
1477 2015-05-23 Eli Zaretskii <eliz@gnu.org>
1478
1479 Revert "Fix etags Bug#20629 that broke C++ support."
1480 This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
1481
1482 2015-05-23 Jan D <jan.h.d@swipnet.se>
1483
1484 Fix etags Bug#20629 that broke C++ support.
1485 * etags.el (etags-xref-find-definitions-tag-order): Revert commit
1486 from Sun May 10 (Bug#20629).
1487
1488 Merge branch 'cairo'.
1489 Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
1490 Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
1491
1492 Merge branch 'master' into cairo
1493
1494 Fixes to compile cairo branch without cairo.
1495 * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
1496 first argument.
1497 * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
1498 USE_CAIRO.
1499
1500 2015-05-23 Artur Malabarba <bruce.connor.am@gmail.com>
1501
1502 * lisp/emacs-lisp/package.el: Always update selected-packages
1503 (package--update-selected-packages): New function.
1504 (package-menu-execute): Use it before starting the transaction,
1505 this way the list of selected packages is updated even when the
1506 transaction fails.
1507 (package-menu--perform-transaction): Don't edit selected-packages.
1508
1509 2015-05-23 Eli Zaretskii <eliz@gnu.org>
1510
1511 Fix etags reading of compressed files
1512 * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
1513 Include fcntl.h, for O_CLOEXEC.
1514 (process_file_name): Don't use 'popen', whose streams cannot be
1515 rewound. Instead, uncompress the file to a temporary file,
1516 created by 'etags_mktmp', and read from that as usual.
1517 (etags_mktmp): New function.
1518 * test/etags/ETAGS.good_1:
1519 * test/etags/ETAGS.good_2:
1520 * test/etags/ETAGS.good_3:
1521 * test/etags/ETAGS.good_4:
1522 * test/etags/ETAGS.good_5: Update to be consistent with latest
1523 changes in etags.c regarding reading compressed files.
1524
1525 Improve documentation of 'set-fontset-font'
1526 * doc/lispref/display.texi (Fontsets): Document the value of nil
1527 for the 3rd argument of 'set-fontset-font'.
1528
1529 Fix documentation of forward-line
1530 * src/cmds.c (Fforward_line): Clarify the return value if the line
1531 at end of accessible portion of the buffer has no newline.
1532 * doc/lispref/positions.texi (Text Lines): Document what happens
1533 if the line at end of accessible portion of buffer has no newline.
1534 (Bug#20587)
1535
1536 2015-05-22 Glenn Morris <rgm@gnu.org>
1537
1538 * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
1539
1540 * admin/charsets/mapconv (LC_ALL): Set to C.
1541
1542 * Makefile.in: Add admin/charsets into top-level clean rules.
1543 (clean): Add admin/charsets.
1544 (maybeclean_dirs): New variable.
1545 (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
1546
1547 * admin/charsets/Makefile.in (LOCAL, local): Fix members.
1548
1549 2015-05-22 Artur Malabarba <bruce.connor.am@gmail.com>
1550
1551 * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
1552
1553 2015-05-22 Glenn Morris <rgm@gnu.org>
1554
1555 Generate admin/charsets Makefile via configure, and make more portable.
1556 * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
1557 (admin/charsets/Makefile): Generate it.
1558 * admin/charsets/Makefile.in: Rename from Makefile.
1559 (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
1560 New variables, set by configure.
1561 (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
1562 (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
1563 (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
1564 (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
1565 (TRANS_TABLE, CHARSETS): Add directory prefix to value.
1566 (all): Declare PHONY.
1567 (local): New PHONY target.
1568 (map_template): New template. Use to define short PHONY aliases.
1569 (*.map): Add directory prefixes to targets and prerequisites.
1570 Respect make verbosity.
1571 (JISC6226.map): Replace non-portable sed append without newline.
1572 (install): Remove rule.
1573 (clean): Only delete temporary sedscript.
1574 (bootstrap-clean, distclean, maintainer-clean, extraclean)
1575 (totalclean): New PHONY rules.
1576 * admin/charsets/mapconv (BASE): Replace basename with expr.
1577 (FILE): Add "mapfiles" subdirectory.
1578 (AWK): New variable. Use throughout in place of "awk".
1579 (main): Use "gunzip -c" in place of "zcat".
1580 Don't leave whitespace before "p", for older sed.
1581 * admin/charsets/mapfiles/PTCP154: Add final newline,
1582 to make older sed versions happy.
1583
1584 2015-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
1585
1586 * lisp/autorevert.el: Use lexical-binding. Fix hook usage.
1587 (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
1588 (auto-revert-notify-watch-descriptor): Use defvar-local.
1589 (find-file-hook, auto-revert-tail-mode, )
1590 (auto-revert-notify-add-watch): Use setq-local.
1591 (auto-revert-notify-add-watch): Don't call make-local-variable on
1592 kill-buffer-hook (bug#20601).
1593
1594 2015-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1595
1596 Change defgeneric so it doesn't completely redefine the function
1597 * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
1598 previously defined methods.
1599 (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
1600 (cl--generic-prefill-dispatchers): Only define during compilation.
1601 (cl-method-qualifiers): Remove redundant alias.
1602 (help-fns-short-filename): Silence byte-compiler.
1603 * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
1604
1605 2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
1606
1607 (package-menu-execute): Remove reference to remove-dups
1608
1609 2015-05-21 kwhite <kwhite@gnu.org>
1610
1611 * lisp/erc/erc.el: Hide network/channel messages
1612 (erc-network-hide-list, etc-channel-hide-list): New lists to define
1613 message types per network/channel.
1614 (erc-add-targets): New function to parse list of targets
1615 (erc-hide-current-message-p): Modified to check for new targets
1616
1617 2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
1618
1619 Don't quote nil and t in doc strings
1620 This is as per "Tips for Documentation Strings" in the elisp manual.
1621 For consistency, do the same in diagnostics and comments.
1622
1623 2015-05-21 Eli Zaretskii <eliz@gnu.org>
1624
1625 Fix a minor problem with mouse-face on mode line
1626 * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
1627 mouse face also if the mouse pointer hovers above mode-line glyphs
1628 that don't come from any Lisp string. (Bug#20620)
1629
1630 2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
1631
1632 * lisp/emacs-lisp/package.el: Fix selected-package logic
1633 (package-menu-execute): Mark as selected all non-upgrade packages
1634 being installed.
1635 (package-menu--perform-transaction): Don't mark anything.
1636
1637 * lisp/emacs-lisp/package.el: Mode-line progress report
1638 (package-menu--transaction-status): New variable.
1639 (package-menu-mode, package-menu--perform-transaction): Use it.
1640
1641 * lisp/emacs-lisp/package.el: Better transaction messages
1642 (package-menu--partition-transaction): New function.
1643 (package-menu--prompt-transaction-p, package-menu-execute): Use
1644 it.
1645 (package-menu--perform-transaction): Don't do any messaging.
1646
1647 * lisp/emacs-lisp/package.el: Revert async package transactions
1648 (package-menu-async): Update doc.
1649 (package-install-from-archive, package-download-transaction)
1650 (package-install, package-menu--perform-transaction)
1651 (package-menu-execute): Remove asynchronous functionality.
1652
1653 2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
1654
1655 Revert doc string changes to f90.el
1656 Problem reported by Glenn Morris in:
1657 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
1658 * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
1659 Revert recent changes to doc strings, as it's intended that they
1660 use grave accent, not quote.
1661
1662 2015-05-20 Bozhidar Batsov <bozhidar@batsov.com>
1663
1664 Improve parameter name
1665
1666 Add new inline function `hash-table-empty-p'
1667
1668 2015-05-20 Paul Eggert <eggert@cs.ucla.edu>
1669
1670 Don't require help-fns when not needed
1671 * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
1672 * lisp/emacs-lisp/elint.el:
1673 Don't require help-fns at the top level.
1674 * lisp/emacs-lisp/advice.el (ad-arglist):
1675 * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
1676 Don't require help-fns. (Bug#17001)
1677
1678 2015-05-20 Eli Zaretskii <eliz@gnu.org>
1679
1680 Fix slash collapsing in etags on MS-Windows
1681 * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
1682 MS-Windows code from the Posix code, and support collapsing both
1683 forward- and back-slashes on MS-Windows. Fixes a regression found
1684 by the test suite.
1685
1686 Improve documentation of glyphless-char-display
1687 * doc/lispref/display.texi (Glyphless Chars): Improve
1688 documentation of glyphless character display.
1689
1690 Fix "acronym" display of glyphless characters on w32
1691 * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
1692 ignore "acronym" substitutes of 1 character for glyphless characters.
1693
1694 2015-05-20 Oleh Krehel <ohwoeowho@gmail.com>
1695
1696 Add an automated test for let-when-compile
1697 * test/automated/subr-tests.el (let-when-compile): New test.
1698
1699 Add let-when-compile macro instead of using pcase-let
1700 * lisp/subr.el (let-when-compile): New let-like macro that makes its
1701 bindings known to macros like `eval-when-compile' in the body.
1702 * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
1703 `let-when-compile'. Also comment out the unused lexical var
1704 `el-kws-re'.
1705 The change greatly improves readability, while providing almost the
1706 same (even shorter) byte code: instead of pre-evaluating 10 variables,
1707 tossing them into a list, and destructuring that list a full screen
1708 page later, the variables are simply bound as they are evaluated,
1709 wrapped individually in `eval-when-compile'.
1710
1711 2015-05-20 Artur Malabarba <bruce.connor.am@gmail.com>
1712
1713 * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
1714 (package-delete-button-action): New function.
1715 (describe-package-1): Add Delete button.
1716
1717 * lisp/emacs-lisp/package.el: Better dependency description
1718 (package--used-elsewhere-p): New optional arg, ALL, and return
1719 package-desc objects instead of names.
1720 (package-delete): Update accordingly.
1721 (describe-package-1): Describe which packages require the package.
1722
1723 2015-05-20 Martin Rudalics <rudalics@gmx.at>
1724
1725 Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
1726 * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
1727 Fix doc-string (Bug#20533).
1728
1729 Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
1730 * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
1731 (switch-to-buffer): If the selected window is strongly dedicated
1732 to its buffer, signal error before prompting for buffer name. Handle
1733 `switch-to-buffer-in-dedicated-window'. (Bug#20472)
1734 * doc/lispref/windows.texi (Switching Buffers): Document
1735 `switch-to-buffer-in-dedicated-window'.
1736
1737 2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
1738
1739 Prefer "this" to “this” in doc strings
1740 This mostly just straightens quotes introduced in my previous patch.
1741 Suggested by Dmitry Gutov in:
1742 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
1743 * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
1744 * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
1745 * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
1746 * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
1747 * lisp/vc/log-edit.el, lisp/xt-mouse.el:
1748 Prefer straight double quotes to curved double quotes in doc strings.
1749
1750 Fix minor quoting problems in doc strings
1751 These were glitches regardless of how or whether we tackle the
1752 problem of grave accent in doc strings.
1753 * lisp/calc/calc-aent.el (math-restore-placeholders):
1754 * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
1755 * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
1756 * lisp/leim/quail/hebrew.el ("hebrew-new")
1757 ("hebrew-biblical-sil"):
1758 * lisp/leim/quail/thai.el ("thai-kesmanee"):
1759 * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
1760 Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
1761 * lisp/calendar/calendar.el (calendar-month-abbrev-array):
1762 * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
1763 * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
1764 * lisp/cedet/semantic/tag.el (semantic-tag-copy)
1765 (semantic-tag-components):
1766 * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
1767 * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
1768 * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
1769 * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
1770 * lisp/emacs-lisp/generator.el (iter-next):
1771 * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
1772 (gnus-article-mode-syntax-table):
1773 * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
1774 * lisp/net/soap-client.el (soap-wsdl-get):
1775 * lisp/net/telnet.el (telnet-mode):
1776 * lisp/org/org-compat.el (org-number-sequence):
1777 * lisp/org/org.el (org-remove-highlights-with-change)
1778 (org-structure-template-alist):
1779 * lisp/org/ox-html.el (org-html-link-org-files-as-html):
1780 * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
1781 (handwrite-12pt, handwrite-13pt):
1782 * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
1783 * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
1784 * lisp/progmodes/verilog-mode.el (verilog-tool)
1785 (verilog-string-replace-matches, verilog-preprocess)
1786 (verilog-auto-insert-lisp, verilog-auto-insert-last):
1787 * lisp/textmodes/makeinfo.el (makeinfo-options):
1788 * src/font.c (Ffont_spec):
1789 Fix minor quoting problems in doc strings, e.g., missing quote,
1790 ``x'' where `x' was meant, etc.
1791 * lisp/erc/erc-backend.el (erc-process-sentinel-2):
1792 Fix minor quoting problem in other string.
1793 * lisp/leim/quail/ethiopic.el ("ethiopic"):
1794 * lisp/term/tvi970.el (tvi970-set-keypad-mode):
1795 Omit unnecessary quotes.
1796 * lisp/faces.el (set-face-attribute, set-face-underline)
1797 (set-face-inverse-video, x-create-frame-with-faces):
1798 * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
1799 * lisp/mail/supercite.el (sc-attribs-%@-addresses)
1800 (sc-attribs-!-addresses, sc-attribs-<>-addresses):
1801 * lisp/net/tramp.el (tramp-methods):
1802 * lisp/recentf.el (recentf-show-file-shortcuts-flag):
1803 * lisp/textmodes/artist.el (artist-ellipse-right-char)
1804 (artist-ellipse-left-char, artist-vaporize-fuzziness)
1805 (artist-spray-chars, artist-mode, artist-replace-string)
1806 (artist-put-pixel, artist-text-see-thru):
1807 * lisp/vc/ediff-util.el (ediff-submit-report):
1808 * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
1809 Use double-quotes rather than TeX markup in doc strings.
1810 * lisp/skeleton.el (skeleton-pair-insert-maybe):
1811 Reword to avoid the need for grave accent and apostrophe.
1812 * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
1813 Don't use grave and acute accents to quote.
1814
1815 2015-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1816
1817 * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
1818
1819 2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
1820
1821 Try to port new etags tests to MS-Windows
1822 * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
1823 * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
1824 * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
1825 Adjust to test-case changes below.
1826 * test/etags/Makefile (CSRC): Remove dostorture.c.
1827 Whatever it was trying to test, wasn't working portably.
1828 (LC_ALL): Remove. Apparently there wasn't an encoding problem,
1829 just a line-ending problem.
1830 * test/etags/c-src/dostorture.c: Remove.
1831 * test/etags/cp-src/c.C: Remove stray CR.
1832 * test/etags/html-src/algrthms.html: Remove trailing CRs.
1833 State UTF-8 as the encoding. The file is ASCII so it doesn't matter,
1834 but if someone edits it later it should stay UTF-8-compatible.
1835
1836 2015-05-19 Eli Zaretskii <eliz@gnu.org>
1837
1838 Fix display of overlapping window-specific overlays
1839 * src/keyboard.c (adjust_point_for_property): When adjusting point
1840 due to display strings, ignore overlays that are specific to
1841 windows other than the currently selected one.
1842 * src/xdisp.c (handle_single_display_spec): If the display
1843 property comes from an overlay, arrange for buffer iteration to
1844 resume only after the end of that overlay. (Bug#20607)
1845
1846 2015-05-19 Dmitry Gutov <dgutov@yandex.ru>
1847
1848 New command icomplete-force-complete-and-exit
1849 * lisp/icomplete.el (icomplete-force-complete-and-exit):
1850 New command
1851 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
1852 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
1853 (icomplete-minibuffer-map): Bind C-j to it.
1854 (icomplete-forward-completions, icomplete-backward-completions):
1855 Mention the new command in the docstring.
1856 * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
1857 the previous fix for bug#17545.
1858
1859 2015-05-19 Martin Rudalics <rudalics@gmx.at>
1860
1861 Fix last commit
1862
1863 In Elisp manual explain how to override window manager positioning (Bug#20552)
1864 * doc/lispref/frames.texi (Position Parameters): Give example of
1865 how to override a window manager positioning decision.
1866
1867 Clarify concept of "surrogate minibuffer frames" (Bug#20538)
1868 * src/frame.c (Fdelete_frame): In doc-string mention that frame
1869 can't be deleted if it has a surrogate minibuffer.
1870 * doc/lispref/frames.texi (Minibuffers and Frames)
1871 (Deleting Frames): Explain "surrogate minibuffer frames".
1872
1873 In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
1874 * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
1875
1876 2015-05-18 Glenn Morris <rgm@gnu.org>
1877
1878 Add option to ignore commit lines matching a pattern in ChangeLog.
1879 * build-aux/gitlog-to-changelog: Add --ignore-line option.
1880 * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
1881
1882 2015-05-18 Paul Eggert <eggert@cs.ucla.edu>
1883
1884 Don't skip new etags tests on non-UTF-8 hosts
1885 Problem reported by Eli Zaretskii for MS-Windows.
1886 * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
1887 (LC_ALL): Set to C if the current locale isn't UTF-8.
1888 (.PHONY): Remove ediff_1 thru ediff_5.
1889 (check): Always run.
1890
1891 2015-05-18 Glenn Morris <rgm@gnu.org>
1892
1893 * lisp/calculator.el (calculator-funcall):
1894 * lisp/textmodes/artist.el (artist-spray-random-points):
1895 Use standard degree/radian conversion utilities.
1896
1897 Further lisp-complete-symbol related cleanup.
1898 * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
1899 Unadvertise non-functional argument. Replace obsolete alias.
1900
1901 2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
1902
1903 Add a test case for Maven warning ouput
1904 * test/automated/compile-tests.el
1905 (compile-tests--test-regexps-data): Add a case for Maven warning
1906 ouput.
1907 (compile--test-error-line): Check the compilation message type, if
1908 it's specified in the test data.
1909
1910 2015-05-18 Paul Pogonyshev <pogonyshev@gmail.com>
1911
1912 Update Maven compilation-mode entry to distinguish warnings
1913 * lisp/progmodes/compile.el
1914 (compilation-error-regexp-alist-alist): Update Maven entry to
1915 distinguish warnings (bug#20556).
1916
1917 2015-05-18 Przemysław Wojnowski <esperanto@cumego.com>
1918
1919 * test/automated/sgml-mode-tests.el: New file.
1920
1921 2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
1922
1923 Improve handling of the first Git revision
1924 * lisp/vc/log-view.el (log-view-toggle-entry-display): When
1925 there's no next entry, delete until the end of the buffer.
1926 (log-view-end-of-defun-1): Stop at eob.
1927 * lisp/vc/vc-annotate.el
1928 (vc-annotate-show-diff-revision-at-line-internal): Don't give up
1929 when previous-revision is nil.
1930 * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
1931 with `--' to avoid ambiguity.
1932 (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
1933 returned revision string.
1934 (vc-git-annotate-time): Expect `^' before the first revision.
1935 * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
1936 REV1 is nil, and REV2 is not.
1937 * lisp/vc/vc.el: Update the description of the `diff' function.
1938
1939 2015-05-18 Oleh Krehel <ohwoeowho@gmail.com>
1940
1941 Allow checkdoc to be called in batch
1942 * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
1943 is non-nil, echo the error with `warn'.
1944 How it can be used in -batch:
1945 (with-current-buffer (find-file "checkdoc.el")
1946 (checkdoc-current-buffer t))
1947
1948 2015-05-18 Glenn Morris <rgm@gnu.org>
1949
1950 * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
1951
1952 2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
1953
1954 * admin/notes/unicode: New section "binary files".
1955
1956 Change new etags test to use UTF-8 encoding
1957 * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
1958 * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
1959 * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
1960 * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
1961 * test/etags/html-src/softwarelibero.html:
1962 Switch to UTF-8 encoding.
1963 * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
1964 Remove Makefile, as it's too incestuous to have the test input
1965 include the build procedure.
1966 (UTF8_LOCALE, UTF_ENCODING): New macros.
1967 (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
1968 (check): Skip if not UTF-8.
1969 (.PHONY): New rule.
1970 (FRC): Remove, as superseded by .PHONY. All uses removed.
1971 (regexfile): Prefer printf to echo when outputting oddball chars.
1972 (.PRECIOUS): Remove, as these files are not built.
1973
1974 Rename 'foo-gzipped' to 'foo.gz'
1975 * test/automated/data/decompress/foo.gz:
1976 Rename from test/automated/data/decompress/foo-gzipped,
1977 to make it easier for other tools to tell that it's compressed.
1978 * test/automated/zlib-tests.el (zlib--decompress):
1979 Adjust to renamed file.
1980
1981 2015-05-17 Dmitry Gutov <dgutov@yandex.ru>
1982
1983 Set up default-directory
1984 * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
1985 binding for `v'.
1986 (vc-annotate-show-changeset-diff-revision-at-line): Set up an
1987 appropriate value for default-directory.
1988
1989 2015-05-17 Samer Masterson <samer@samertm.com>
1990
1991 * lisp/eshell/em-term.el (eshell-term-sentinel):
1992 No-op by default, only kills term buffer if
1993 `eshell-destroy-buffer-when-process-dies' is non-nil. (Bug#18108)
1994 (eshell-destroy-buffer-when-process-dies): New custom to preserve
1995 previous behavior.
1996
1997 eshell: Introduce new buffer syntax
1998 The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
1999 buffer-name>'. Remove `eshell-buffer-shorthand', as it is no longer
2000 needed (Bug#19319).
2001 * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
2002 (eshell-get-target): Remove shorthand-specific code.
2003 * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
2004 '#<buffer-name>'.
2005
2006 2015-05-17 Jan D <jan.h.d@swipnet.se>
2007
2008 Merge branch 'master' into cairo
2009
2010 2015-04-26 Jan D <jan.h.d@swipnet.se>
2011
2012 Merge branch 'master' into cairo
2013
2014 Add PBM support for cairo.
2015 * src/image.c (xcolor_to_argb32): New function.
2016 (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
2017 (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
2018 XImagePtr if ! USE_CAIRO.
2019 (pbm_load): Add cairo support.
2020
2021 2015-04-12 Jan D <jan.h.d@swipnet.se>
2022
2023 x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
2024 * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
2025 (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
2026 (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
2027 x_free_cr_resources.
2028
2029 Handle specified bg in images. Use generic libpng code for PNG:s.
2030 * src/image.c (get_spec_bg_or_alpha_as_argb)
2031 (create_cairo_image_surface): New functions when USE_CAIRO.
2032 (xpm_load): Call the above functions. Handle XPM without mask
2033 when USE_CAIRO.
2034 (png_load_body): Handle USE_CAIRO case.
2035 (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
2036 instead.
2037 (jpeg_load_body): Call create_cairo_image_surface.
2038 (gif_load, svg_load_image): Handle specified background, call
2039 create_cairo_image_surface.
2040 * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
2041
2042 2015-04-11 Jan D <jan.h.d@swipnet.se>
2043
2044 Support GIF and Tiff with cairo.
2045 * configure.ac: Allow jpeg with cairo.
2046 Allow tiff and gif with cairo.
2047 * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
2048 (tiff_load): Create cairo image surface if USE_CAIRO.
2049 (gif_load): Ditto.
2050
2051 Support JPEG with USE_CAIRO.
2052 * configure.ac: Allow jpeg with cairo.
2053 * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
2054
2055 2015-04-05 Jan D <jan.h.d@swipnet.se>
2056
2057 Support RSVG and cairo.
2058 * configure.ac: Allow rsvg with cairo. Move back HAVE_RSVG.
2059 * src/dispextern.h (struct image): add cr_data2 if cairo.
2060 * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
2061 (x_clear_image): Free cr_data and cr_data2 if set.
2062 (xpm_load): Assign data to cr_data2.
2063 (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
2064
2065 2015-04-03 Jan D <jan.h.d@swipnet.se>
2066
2067 Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
2068 * configure.ac (HAVE_RSVG): Move after cairo.
2069 (USE_CAIRO): Disable rsvg, don't disable Xpm.
2070 * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
2071 (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
2072 don't return early.
2073 (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
2074 (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
2075 and create a surface.
2076
2077 Tool tips for menus did not show any text.
2078 * src/xterm.c (x_update_begin): Don't create any surface for non-visible
2079 tip frames, the geometry may be wrong.
2080
2081 Merge branch 'master' into cairo, fixes tooltips not shown.
2082
2083 Merge branch 'master' into cairo
2084
2085 Add CAIRO_CFLAGS to lwlib/Makefile.in
2086 * Makefile.in (CAIRO_CFLAGS): Add.
2087
2088 2015-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2089
2090 * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
2091
2092 2015-02-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2093
2094 Draw outermost line using black relief and erase corners also for cairo.
2095 * xterm.c [USE_CAIRO]: Include math.h.
2096 (enum corners) [USE_CAIRO]: New enum.
2097 (x_erase_corners_for_relief) [USE_CAIRO]: New function.
2098 (x_draw_relief_rect) [USE_CAIRO]: Use it. If box width is larger
2099 than 1, draw the outermost line using the black relief.
2100
2101 * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
2102
2103 2015-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2104
2105 * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
2106
2107 * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
2108
2109 Use int instead of unsigned int for width and height args.
2110 * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
2111 (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
2112 width and height args.
2113
2114 Modernize k&r cairo-related function declarations.
2115 * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
2116 (xg_print_frames_dialog): Modernize k&r declarations.
2117 * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
2118 (Fx_print_frames_dialog): Modernize k&r declarations.
2119 * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
2120 (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
2121 (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
2122 (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
2123 (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
2124 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
2125 (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
2126 (x_clear_area): Modernize k&r declarations.
2127
2128 Implement wave-style variant of underlining for cairo.
2129 * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
2130 (x_draw_underwave) [USE_CAIRO]: Use it.
2131
2132 * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
2133
2134 2015-02-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2135
2136 Fix fringe bitmap initialization for cairo.
2137 * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
2138 cairo image surface.
2139 * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
2140
2141 2015-02-11 Jan D <jan.h.d@swipnet.se>
2142
2143 Add cairo drawing.
2144 * configure.ac (with-cairo): New option.
2145 (USE_CAIRO): Default to yes for Gtk+ 3. Add code to test for cairo,
2146 set CAIRO_CFLAGS, CAIRO_LIBS. Add ftcrfonto to FONT_OBJ if cairo.
2147 Output "Does Emacs use cairo?".
2148 * lisp/version.el (emacs-version): Add cairo version.
2149 * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
2150 (FONT_OBJ): Add comment about ftcrfont.
2151 (ALL_CFLAGS): Add CAIRO_CFLAGS.
2152 (LIBES): Add CAIRO_LIBS.
2153 * src/dispextern.h (struct image): Add cr_data for cairo.
2154 (x_cr_init_fringe): Declare.
2155 * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
2156 * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
2157 * src/fringe.c (x_cr_init_fringe): New function name that shares code
2158 with w32_init_fringe.
2159 * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
2160 * src/ftfont.c (ftfont_info_size); New global variable.
2161 (ftfont_open2): New extern function almost the same as old ftfont_open,
2162 but takes the font_object as argument.
2163 (ftfont_open): Build font object and call ftfont_open2.
2164 * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
2165 * src/gtkutil.c (xg_clear_under_internal_border)
2166 (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
2167 queue_draw if not cairo. Change args to x_clear_area.
2168 (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
2169 (xg_page_setup_dialog, xg_get_page_setup, draw_page)
2170 (xg_print_frames_dialog): New functions for printing.
2171 * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
2172 (xg_print_frames_dialog): Declare.
2173 * src/image.c: Add defined (USE_CAIRO) for PNG.
2174 Add !defined USE_CAIRO for W32 PNG code.
2175 (x_clear_image): If cairo, destroy the surface in cr_data.
2176 (png_load): Add new cairo compatible implementation.
2177 (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
2178 * src/xfns.c: New section Printing.
2179 (x-export-frames, x-page-setup-dialog, x-get-page-setup)
2180 (x-print-frames-dialog): New printing functions.
2181 (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
2182 cairo.
2183 (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
2184 Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
2185 (syms_of_xfns): Provide cairo and defvar cairo-version-string.
2186 defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
2187 * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
2188 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
2189 (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
2190 (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
2191 Declare.
2192 (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
2193 (max_fringe_bmp, fringe_bmp): New variables.
2194 (x_gc_get_ext_data, x_extension_initialize)
2195 (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
2196 (x_set_cr_source_with_gc_foreground)
2197 (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
2198 (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
2199 (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
2200 (x_prepare_for_xlibdraw, x_set_clip_rectangles)
2201 (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
2202 (x_clear_window, x_fill_trapezoid_for_relief): New functions.
2203 (x_update_begin): Create cairo surface if needed.
2204 (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
2205 (x_update_end): Paint cairo drawing surface to xlib surface.
2206 (x_clear_under_internal_border, x_after_update_window_line): Adjust
2207 arguments to x_clear_area.
2208 (x_draw_fringe_bitmap): Call x_fill_rectangle. Get GC values and
2209 call x_cr_draw_image for cairo. Call x_reset_clip_rectangles instead
2210 of XSetClipMask.
2211 (x_set_glyph_string_clipping)
2212 (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
2213 instead of XSetClipRectangles.
2214 (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
2215 x_fill_rectangle instead of XFillRectangle.
2216 (x_draw_glyph_string_foreground)
2217 (x_draw_composite_glyph_string_foreground)
2218 (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
2219 of XDrawRectangle.
2220 (x_draw_relief_rect): Add code for USE_CAIRO.
2221 Call x_reset_clip_rectangles instead of XSetClipMask.
2222 (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
2223 x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
2224 instead of XSetClipMask.
2225 (x_draw_image_foreground, x_draw_image_foreground_1):
2226 x_draw_rectangle instead of XDrawRectangle.
2227 (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
2228 XFillRectangle.
2229 (x_draw_image_glyph_string): If img has cr_data, use it as
2230 a cairo surface.
2231 (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
2232 XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
2233 (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
2234 x_reset_clip_rectangles instead of XSetClipMask.
2235 (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
2236 (x_clear_area1): New function that calls XClearArea.
2237 (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
2238 non-cairo.
2239 (x_clear_frame): x_clear_window instead of XClearWindow.
2240 (x_scroll_run): Set frame garbaged if cairo.
2241 (XTmouse_position): Initialize *part to 0.
2242 (x_scroll_bar_create): Adjust arguments to x_clear_area.
2243 (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
2244 x_fill_rectangle instead of XFillRectangle.
2245 (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
2246 arguments to x_clear_area.
2247 (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
2248 (handle_one_xevent): Adjust arguments to x_clear_area.
2249 Destroy cairo surface for frame if ConfigureNotify.
2250 (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
2251 (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
2252 x_reset_clip_rectangles instead of XSetClipMask.
2253 (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
2254 x_reset_clip_rectangles instead of XSetClipMask.
2255 (x_clear_frame_area): Adjust arguments to x_clear_area.
2256 (x_free_frame_resources): Call x_prepare_for_xlibdraw.
2257 (x_term_init): Call x_extension_initialize if cairo.
2258 (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
2259 x_cr_destroy_fringe_bitmap for cairo.
2260 (x_initialize): Call x_cr_init_fringe for cairo.
2261 * src/xterm.h: Add include of cairo header files.
2262 (x_bitmap_record): Add img if cairo.
2263 (x_gc_ext_data): New struct for cairo.
2264 (x_display_info): Add ext_codes for cairo.
2265 (x_output): Add cr_context and cr_surface for cairo.
2266 (x_clear_area): Change arguments from Display*/Window to frame pointer.
2267 (x_query_color, x_begin_cr_clip, x_end_cr_clip)
2268 (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
2269 (x_cr_draw_frame, x_cr_export_frames): Declare.
2270
2271 2015-05-17 Johan Bockgård <bojohan@gnu.org>
2272
2273 Fix integer-valued `mouse-highlight' (Bug#20590)
2274 * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
2275
2276 2015-05-17 Eli Zaretskii <eliz@gnu.org>
2277
2278 MS-Windows followup for ASCIIfication of curved quotes
2279 * lisp/term/w32console.el (terminal-init-w32console): Repeat the
2280 test for curved quotes being displayable, after switching the
2281 terminal encoding. (Bug#20545)
2282
2283 2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
2284
2285 Spelling fixes
2286
2287 2015-05-17 Jan D <jan.h.d@swipnet.se>
2288
2289 Add comment that x_shift_glyphs_for_insert is never called.
2290 * xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
2291 comment that this function is never called.
2292
2293 2015-05-16 Glenn Morris <rgm@gnu.org>
2294
2295 * src/lisp.mk: Remove from repository and generate at build-time.
2296 * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
2297 (shortlisp_filter): New variable.
2298 (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
2299 (distclean): Remove lisp.mk.
2300 * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
2301 * lisp/loadup.el: Tweak layout to make it easier to parse.
2302 * make-dist: Do not distribute src/lisp.mk.
2303
2304 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
2305
2306 Display shorter dates in Git annotate output
2307 * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
2308 format (when not overridden with vc-git-annotate-switches).
2309 (vc-git-annotate-time): Support the short format, as well as ISO
2310 8601 that has been used until now (bug#5428).
2311
2312 2015-05-16 Paul Eggert <eggert@cs.ucla.edu>
2313
2314 ASCIIfy curved quotes on displays lacking them
2315 * lisp/international/mule-cmds.el (set-locale-environment):
2316 If curved quotes don't work, display straight ASCII approximations
2317 (Bug#20545).
2318
2319 2015-05-16 Glenn Morris <rgm@gnu.org>
2320
2321 Small src/Makefile simplification.
2322 * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
2323 * src/Makefile.in (lisp): Derive from shortlisp.
2324 ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
2325
2326 2015-05-16 Eli Zaretskii <eliz@gnu.org>
2327
2328 * lisp/help-mode.el (help-go-forward): Doc fix.
2329 (Bug#20577)
2330
2331 * doc/lispref/debugging.texi (Profiling): Improve indexing.
2332 (Bug#20576)
2333
2334 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
2335
2336 Use `unless' to have one fewer `not'
2337 * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
2338 have one fewer `not'.
2339
2340 Remove redundant :group declarations from vc-git.el
2341 * lisp/vc/vc-git.el (vc-git-diff-switches)
2342 (vc-git-annotate-switches, vc-git-resolve-conflicts)
2343 (vc-git-program, vc-git-root-log-format): Remove the redundant
2344 :group declarations.
2345
2346 2015-05-16 Nicolas Petton <nicolas@petton.fr>
2347
2348 Removes the predicate from lisp-complete-symbol (Bug#20456)
2349 * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
2350 and remove it from the docstring.
2351
2352 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
2353
2354 Add new option vc-git-resolve-conflicts
2355 * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
2356 (vc-git-find-file-hook): Add to after-save-hook only when the
2357 above is non-nil.
2358 (vc-git-resolve-when-done): Update to honor the new variable.
2359 (Bug#20292)
2360
2361 2015-05-16 Artur Malabarba <bruce.connor.am@gmail.com>
2362
2363 * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
2364 (tabulated-list-init-header): Document new behavior.
2365 (tabulated-list-print-fake-header): No nothing if
2366 `tabulated-list--header-string' is nil.
2367 (tabulated-list--header-string): Add a docstring.
2368 * doc/lispref/modes.texi (Tabulated List Mode): Document it.
2369 * etc/NEWS: Document it.
2370
2371 2015-05-15 Leo Liu <sdl.web@gmail.com>
2372
2373 Revert "Fix cps--gensym"
2374 * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
2375 fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
2376
2377 2015-05-15 Glenn Morris <rgm@gnu.org>
2378
2379 Replace AC_SUBST_FILE in configure with include in Makefiles.
2380 * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
2381 (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
2382 (AUTO_DEPEND): New output variable.
2383 * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
2384 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
2385 (lwlib_deps_frag): Replace by conditional include.
2386 * lwlib/autodeps.mk: Remove file.
2387 * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
2388 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
2389 (oldxmenu_deps_frag): Replace by conditional include.
2390 * oldXMenu/autodeps.mk: Remove file.
2391 * src/Makefile.in (AUTO_DEPEND): New, set by configure.
2392 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
2393 (lisp_frag): Replace by an include.
2394 (deps_frag): Replace by conditional include.
2395 * src/autodeps.mk: Remove file.
2396
2397 Tweak japanese.el's loading of dependencies.
2398 * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
2399 * lisp/language/japanese.el: Use require rather than load.
2400 * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
2401 Provide a feature.
2402 * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
2403 Provide a feature in the generated file.
2404
2405 2015-05-15 Jan D <jan.h.d@swipnet.se>
2406
2407 Fix NS warnings.
2408 * nsmenu.m (ns_popup_dialog)
2409 * nsimage.m (initFromXBM:width:height:fg:bg:)
2410 * nsfns.m (Fx_create_frame): Remove unused variables.
2411 (Fns_read_file_name): Initialize fname, remove ret.
2412 * nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
2413 (ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
2414 variable.
2415 (init): Add parantesis in if.
2416 (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
2417
2418 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
2419
2420 Fix a enum conversion warning in macfont.m
2421 * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
2422 (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
2423
2424 2015-05-15 Eli Zaretskii <eliz@gnu.org>
2425
2426 Support de-alt dictionary with Aspell.
2427 * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
2428 Support Aspell dictionaries with names like "de-alt". (Bug#20581)
2429
2430 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
2431
2432 cus-start.el: Add ns-confirm-quit.
2433 * cus-start.el: Add ns-confirm-quit.
2434
2435 Fix warnings on OSX 10.10.
2436 * nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
2437 (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
2438 (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
2439 * nsmenu.m (initWithContentRect:styleMask:backing:defer:)
2440 * nsimage.m (allocInitFromFile, setPixmapData): Only call
2441 setScalesWhenResized for OSX < 10.6.
2442 * nsterm.h (EmacsScroller): Declare scrollerWidth.
2443 * nsterm.m (ns_copy_bits): New function that does not use deprecated
2444 NSCopyBits.
2445 (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
2446 (runAlertPanel): New function.
2447 (applicationShouldTerminate:): Call runAlertPanel.
2448 (initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
2449 for OSX < 10.10.
2450 (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
2451 (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
2452 (draggingEntered:): Returns NSDragOperation.
2453 (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
2454
2455 2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
2456
2457 * lisp/emacs-lisp/package.el: Don't ensure-init during startup
2458 (package--init-file-ensured): New variable.
2459 (package-initialize, package--ensure-init-file): Use it.
2460
2461 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
2462
2463 Honor :fore/background for XBM on NS (Bug#14969).
2464 * nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
2465 initFromXBM takes bg, fg args, remove flip arg.
2466 (ns_image_from_XBM): Add bg, fg args.
2467 * image.c (x_create_bitmap_from_data)
2468 (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
2469 * nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
2470 Remove flip arg.
2471 (initFromSkipXBM): Move code to initFromXBM.
2472 (initFromXBM): Actually set fg and bg, instead of playing alpha games.
2473 Use fg, bg from args (Bug#14969). Remove if (length) section, was always
2474 false.
2475 Remove bit flipping (bitPat, swt), generated incorrect images when
2476 width/height wasn't a multiple of 8.
2477 (setXBMColor:): Modify planes by comparing to saved xbm_fg.
2478 * nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
2479 flip arg.
2480
2481 2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
2482
2483 * lisp/emacs-lisp/package.el: Be more careful with the init file
2484 (package--ensure-init-file): Check that user-init-file is set,
2485 exists, is readable, and is writable. (Bug#20584)
2486 Also expand the docstring.
2487
2488 2015-05-14 Wilson Snyder <wsnyder@wsnyder.org>
2489
2490 Sync with upstream verilog-mode revision 6232468
2491 * lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
2492 (verilog-highlight-grouping-keywords): Fix use of face when
2493 `verilog-highlight-grouping-keywords' set. Reported by Jeff
2494 Pompa.
2495 (verilog-auto-reset): Fix AUTORESET to ignore member resets if
2496 parent is reset, bug906. Reported by Ken Schmidt.
2497 (verilog-auto-inout-module): Add fourth regexp argument to
2498 AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
2499 bug856. Reported by John Tillema.
2500 (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
2501 modport if signal attachment is itself a modport. Reported by
2502 Matthew Lovell.
2503 (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
2504 always_comb and always_latch, bug844. Reported by Greg Hilton.
2505 (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
2506 with many curly-bracket pairs, bug663.
2507 (verilog-set-auto-endcomments): Fix end comments for functions of
2508 type void, etc. Reported by Alex Reed.
2509 (verilog-do-indent): Fix electric tab deleting form-feeds. Note
2510 caused by indent-line-to deleting tabls pre 24.5.
2511 (verilog-nameable-item-re): Fix nameable items that can have an
2512 end-identifier to include endchecker, endgroup, endprogram,
2513 endproperty, and endsequence. Reported by Alex Reed.
2514 (verilog-label-be): When auto-commenting a buffer, consider
2515 auto-comments on all known keywords (not just a subset thereof).
2516 Reported by Alex Reed.
2517 (verilog-auto-end-comment-lines-re)
2518 (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
2519 Automatically comment property/endproperty blocks to match other
2520 similar blocks like sequence/endsequence, function/endfunction,
2521 etc. Reported by Alex Reed.
2522 (verilog-set-auto-endcomments): Detect the function- or task-name
2523 when auto-commenting blocks that lack an explicit
2524 portlist. Reported by Alex Reed.
2525 (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
2526 allow post-AUTO user fixups, bug826. Reported by Dennis
2527 Muhlestein.
2528 (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
2529 is nil, fix indenting initial/final to match always statements,
2530 bug825. Reported by Tim Clapp.
2531 (verilog-extended-complete-re): Fix indentation of DPI-C imports
2532 with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
2533 Mao and Jason Forkey.
2534 (verilog-read-decls): Fix parsing typed interfaces. Fix
2535 AUTOINOUTMODPORT missing types. Reported by Stephan Bourduas.
2536 Fix localparam not being ignored in AUTOINSTPARAM,
2537 bug889. Reported by Shannon Hill.
2538 (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
2539 bug793. Reported by Pierre-David Pfister.
2540 (verilog-auto-arg-format, verilog-auto-arg-ports): Add
2541 verilog-auto-arg-format to support newlines in AUTOARG. Reported
2542 by Jie Xiao.
2543 (verilog-batch-execute-func): Do not batch re-auto files loaded by
2544 Local Variables. Fix printing "no changes to be saved" with
2545 verilog-batch. Reported by Dan Dever.
2546 (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
2547 interface-only modules, bug721. Reported by Dean Hoyt.
2548 Author: Alex Reed <acreed4@gmail.com>
2549 * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
2550 treat '<keyword>:<identifier>' as the start of a labeled
2551 statement, bug905. Reported by Enzo Chi.
2552 (verilog-directive-re, verilog-compiler-directives)
2553 (verilog-keywords): Match full set of IEEE 2012-1800 compiler
2554 directives (plus some extras) when determining indentation, bug
2555 901. Reported by Bernd Beuster.
2556 (verilog-at-constraint-p): Fix indentation of coverpoint bins if
2557 iff expression doesn't start with word-character, bug900.
2558 (verilog-optional-signed-range-re, verilog-optional-signed-re):
2559 Fix incorrect indentation/alignment of unsigned declarations,
2560 bug897.
2561 (verilog-looking-back, verilog-in-attribute-p): Fix labling of
2562 always constructs, bug895.
2563 (verilog-calc-1): Fix verilog-mode constraint indentation,
2564 bug324. Reported by Eric Mastromarchi.
2565 (verilog-beg-of-statement): Fix indenting for some forms of
2566 constraintsm bug433. Reported by Brad Parker. Fix indentation of
2567 continued assignment incorrect if first line ends with ']',
2568 bug437. Reported by Dan Dever. Fix indention of cover inside an
2569 ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
2570 blocks, bug842.
2571 (verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
2572 bug859. Reported by Kaushal Modi.
2573 (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
2574 (verilog-backward-token): Fix indenting sensitivity lists with
2575 named events, bug840. Reed.
2576 (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
2577 nil not honoring 'forever', 'foreach', and 'do' keywords.
2578
2579 2015-05-14 Paul Eggert <eggert@cs.ucla.edu>
2580
2581 Check for invalid GTK+ monitor scales
2582 * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
2583 INT_MAX for too-large scales. All callers changed to assume the
2584 result is valid (Bug#20432).
2585 (xg_frame_set_char_size, xg_update_scrollbar_pos):
2586 Calculate scale only if needed.
2587 show ASCII approximations instead.
2588
2589 2015-05-14 Eli Zaretskii <eliz@gnu.org>
2590
2591 Fix daemon crashes when linum-mode is turned on early on
2592 * src/window.c (Fwindow_end): Don't try calling display engine
2593 functions on initial-frame frame. (Bug#20565)
2594
2595 Fix selective diff browsing in Ediff
2596 * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
2597 beginning of the region before searching for the
2598 ediff-regexp-focus-* regexps. (Bug#20568)
2599
2600 2015-05-14 Jan D <jan.h.d@swipnet.se>
2601
2602 Fixes Bug#20142.
2603 * gtkutil.c (delete_cb): Don't send delete event here, it does arrive
2604 in the main loop, even for Gtk 3 (Bug#20142).
2605
2606 Don't access display after i/o error (Bug#19147).
2607 * xterm.c (x_connection_closed): Add third arg ioerror.
2608 If ioerror, set display to 0 (Bug#19147).
2609 (x_error_quitter): Call x_connection_closed with third arg false.
2610 (x_io_error_quitter): Call x_connection_closed with third arg true.
2611
2612 Handle GTK_SCALE, fixes Bug#20432.
2613 * gtkutil.c (xg_get_gdk_scale): New function.
2614 (xg_frame_set_char_size)
2615 (x_wm_set_size_hint, xg_get_default_scrollbar_width)
2616 (xg_get_default_scrollbar_height)
2617 (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
2618 when setting sizes (Bug#20432).
2619
2620 2015-05-13 Leo Liu <sdl.web@gmail.com>
2621
2622 Fix cps--gensym
2623 * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
2624
2625 2015-05-13 Glenn Morris <rgm@gnu.org>
2626
2627 Fix bootstrap (void function cl-member).
2628 * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
2629 * lisp/emacs-lisp/cl-seq.el: Provide a feature.
2630
2631 2015-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2632
2633 * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
2634 * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
2635 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
2636 Avoid defalias for closures which are not immutable.
2637 (cl--generic-prefill-dispatchers): New macro. Use it to prefill the
2638 dispatchers table with various entries.
2639 * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
2640 * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
2641
2642 2015-05-13 Eli Zaretskii <eliz@gnu.org>
2643
2644 Improve tagging of C bindings in DEFVAR_*
2645 * src/Makefile.in (TAGS): Add --regex options to tag the C binding
2646 from DEFVAR_*.
2647
2648 2015-05-13 Paul Eggert <eggert@cs.ucla.edu>
2649
2650 * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
2651
2652 2015-05-12 Glenn Morris <rgm@gnu.org>
2653
2654 * lisp/progmodes/tcl.el (tcl-filter):
2655 Handle comint-prompt-read-only like gud.el does. (Bug#20549)
2656
2657 Add basic VC push support.
2658 * lisp/vc/vc.el (vc-push): New autoloaded command.
2659 * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
2660 * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
2661 (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
2662 (vc-bzr-push): New.
2663 * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
2664 (vc-git-pull): Reimplement using vc-git--pushpull.
2665 (vc-git-push): New.
2666 * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
2667 (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
2668 * doc/emacs/maintaining.texi (Pulling / Pushing):
2669 Rename from "VC Pull". Mention pushing.
2670 (VC With A Merging VCS, VC Change Log): Update xrefs.
2671 (Branches): Update menu.
2672 * doc/emacs/emacs.texi: Update menu.
2673 * etc/NEWS: Mention this.
2674
2675 2015-05-12 Nicolas Petton <nicolas@petton.fr>
2676
2677 Improve the seq pcase pattern and the `seq-let' macro
2678 * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
2679 object is a sequence, and binds each element of ARGS to the
2680 corresponding element of the sequence.
2681
2682 2015-05-12 Eli Zaretskii <eliz@gnu.org>
2683
2684 Fix tags created from DEFVAR_* declarations in C
2685 * src/Makefile.in (TAGS): Improve the --regex argument to etags,
2686 to make tags extracted from DEFVAR_* declarations more accurate.
2687
2688 Add a test suite for etags
2689 * test/etags/: New test suite, adapted from
2690 http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
2691 whose original author is Francesco Potortì <pot@gnu.org>.
2692
2693 Fix tagging of symbols in C enumerations
2694 * lib-src/etags.c (consider_token): Don't tag symbols in
2695 expressions that assign values to enum constants. See
2696 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
2697 for details.
2698 (C_entries): Reset fvdef to fvnone after processing a preprocessor
2699 conditional and after a comma outside of parentheses.
2700
2701 2015-05-12 Glenn Morris <rgm@gnu.org>
2702
2703 * lisp/url/url-handlers.el (url-file-name-completion)
2704 (url-file-name-all-completions): Silence compiler.
2705
2706 * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
2707
2708 * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time. (Bug#20554)
2709
2710 2015-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
2711
2712 * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
2713 (cl--generic-mandatory-args): Remove.
2714 (cl--generic-split-args): New function.
2715 (cl-generic-define, cl--generic-lambda): Use it.
2716 (cl-generic-define-method): Use it as well, and add support for
2717 context args.
2718 (cl--generic-get-dispatcher): Handle &context dispatch.
2719 (cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
2720 (cl--generic-dispatchers): Pre-fill.
2721 * test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
2722
2723 2015-05-11 Glenn Morris <rgm@gnu.org>
2724
2725 * make-dist: Abort if "make ChangeLog" fails. Add "--no-changelog".
2726
2727 2015-05-11 Stefan Monnier <monnier@iro.umontreal.ca>
2728
2729 * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
2730 * lisp/term/rxvt.el: Require term/xterm.
2731 (rxvt-function-map): Use xterm-rxvt-function-map.
2732 (rxvt-standard-colors): Move before first use.
2733 (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
2734 (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
2735 * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
2736 Move shared bindings between rxvt and xterm to it.
2737 (xterm-function-map): Use it. Move the xterm-paste binding to
2738 xterm-rxvt-function-map (bug#20444).
2739 (xterm-standard-colors): Move before first use.
2740 (xterm--push-map): New function.
2741 (xterm-register-default-colors): Take standard colors as argument.
2742 (terminal-init-xterm): Use it. Adjust call to
2743 xterm-register-default-colors.
2744
2745 2015-05-11 Glenn Morris <rgm@gnu.org>
2746
2747 * lisp/term/x-win.el: Quieten --without-x compilation.
2748 (x-own-selection-internal, x-disown-selection-internal)
2749 (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
2750 Declare.
2751
2752 * Makefile.in (emacslog): Remove srcdir.
2753 (ChangeLog): Update for the above.
2754
2755 2015-05-11 Paul Eggert <eggert@cs.ucla.edu>
2756
2757 Spelling fix
2758
2759 2015-05-10 Fabián Ezequiel Gallina <fgallina@gnu.org>
2760
2761 python.el: better limit for looking-back calls
2762 * lisp/progmodes/python.el (python-shell-accept-process-output):
2763 Use last comint prompt start as limit for looking-back.
2764
2765 2015-05-10 Stefan Monnier <monnier@iro.umontreal.ca>
2766
2767 CEDET (srecode-insert-fcn): Fix use of oref on a class
2768 * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
2769 a class. Reported by Pierre Lorenzon.
2770 (srecode-template-inserter-point): Remove declaration.
2771
2772 CEDET (srecode-create-dictionary): Avoid obsolete object name
2773 * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
2774 Don't use a symbol as an object name. Reported by Pierre Lorenzon.
2775
2776 2015-05-10 Paul Eggert <eggert@cs.ucla.edu>
2777
2778 C-x 8 shorthands for curved quotes, Euro, etc.
2779 Although C-x 8 lets you insert arbitrary Unicode characters,
2780 it's awkward to use this to insert commonly used symbols such as curved
2781 quotes, the Euro symbol, etc. This patch adds simpler sequences for
2782 characters commonly found in English text and in basic math.
2783 For example, assuming the Alt key works on your keyboard and iso-transl
2784 is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
2785 to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
2786 (Bug#20499)
2787 * doc/emacs/mule.texi (Unibyte Mode):
2788 A few other printing characters now work too.
2789 * etc/NEWS: Document this.
2790 * lisp/international/iso-transl.el (iso-transl-char-map):
2791 Also support the following characters:
2792 ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
2793
2794 2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
2795
2796 Add xref-find-regexp
2797 * lisp/progmodes/xref.el (xref-find-function): Describe the
2798 `matches' action.
2799 (xref-find-regexp): New command, using it.
2800 (xref-collect-references): Rename to xref-collect-matches.
2801 (xref--collect-reference): Rename to xref--collect-match.
2802 (xref-collect-matches, xref--collect-match): Accept new argument,
2803 KIND. Update accordingly.
2804 (xref--regexp-to-extended): New function.
2805 * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
2806 `matches' action.
2807 (elisp--xref-find-matches): Accept new argument. Resolve a FIXME.
2808 * lisp/progmodes/etags.el (etags-xref-find):
2809 Support the `matches' action.
2810 (etags--xref-find-matches): New function.
2811
2812 2015-05-10 Glenn Morris <rgm@gnu.org>
2813
2814 * Makefile.in: Fixes for recent change-history changes.
2815 (change-history-nocommit): Update footer regexp.
2816 Ensure output script stays executable.
2817
2818 2015-05-10 Nicolas Petton <nicolas@petton.fr>
2819
2820 New version of `seq-let' based on a pcase pattern
2821 * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
2822 pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
2823
2824 2015-05-10 Przemysław Wojnowski <esperanto@cumego.com>
2825
2826 Add basic HTML5 tags and a template
2827 * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
2828 (html-tag-alist): Add HTML5 tags.
2829 (html-tag-help): Add new tags descriptions.
2830 (html-navigational-links): Template for nav links.
2831 (html-html5-template): Template for a HTML5 page.
2832
2833 2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
2834
2835 semantic/symref/grep: Don't use word boundaries
2836 * lisp/cedet/semantic/symref/grep.el
2837 (semantic-symref-perform-search): Instead of wrapping input in
2838 word boundaries, check that the characters before and after are
2839 not word constituents.
2840
2841 semantic/symref/grep: Support regexp search
2842 * lisp/cedet/semantic/symref.el
2843 (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
2844 the search type is regexp.
2845 * lisp/cedet/semantic/symref/grep.el
2846 (semantic-symref-perform-search): Support the regexp search type.
2847 Pass -E to Grep when it's used.
2848
2849 semantic-symref-regexp: Allow to input an arbitrary string
2850 * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
2851 Allow to input an arbitrary string interactively.
2852
2853 Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
2854 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
2855 Remove tag-symbol-match-p from the default value
2856 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
2857
2858 Declare find-tag obsolete
2859 * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
2860 xref-find-definitions.
2861
2862 2015-05-10 Jan D <jan.h.d@swipnet.se>
2863
2864 Draw composite string correctly (Bug#20537).
2865 * nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
2866 (ns_draw_glyph_string): Call it (Bug#20537).
2867
2868 2015-05-09 Eli Zaretskii <eliz@gnu.org>
2869
2870 Avoid infloop in ERC
2871 * lisp/simple.el (line-move-to-column): Ignore field boundaries
2872 while computing line beginning position. (Bug#20498)
2873
2874 2015-05-08 Glenn Morris <rgm@gnu.org>
2875
2876 * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
2877 * build-aux/gitlog-to-emacslog: Check called from right directory.
2878 (srcprefix): Remove.
2879
2880 * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
2881 * Makefile.in (ChangeLog): No longer pass "distprefix".
2882 * make-dist: Update "make ChangeLog" syntax for the above change.
2883
2884 * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
2885 * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
2886
2887 * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
2888
2889 Add command-line option-parsing to gitlog-to-emacslog.
2890 * build-aux/gitlog-to-emacslog: Add command-line options.
2891 By default, refuse to remove an existing output file.
2892 * Makefile.in (CHANGELOG): Update default.
2893 (ChangeLog): Do not test for existing file.
2894 (change-history-nocommit): Ensure temp file does not exist.
2895
2896 Quieten --without-x compilation.
2897 * lisp/term/common-win.el: Provide a feature.
2898 * lisp/term/x-win.el (term/common-win): Require it.
2899
2900 * lisp/dired-aux.el (dired-do-print): Require lpr.
2901
2902 Quieten compilation, eg in --without-x builds.
2903 * lisp/dired-aux.el (lpr-printer-switch):
2904 * lisp/frame.el (tool-bar-height):
2905 * lisp/linum.el (font-info):
2906 * lisp/window.el (font-info, overflow-newline-into-fringe)
2907 (tool-bar-height):
2908 * lisp/emacs-lisp/package-x.el (tar-data-buffer):
2909 * lisp/gnus/gnus-util.el (iswitchb-mode):
2910 * lisp/mail/rmailmm.el (libxml-parse-html-region):
2911 * lisp/net/nsm.el (gnutls-peer-status)
2912 (gnutls-peer-status-warning-describe):
2913 * lisp/net/shr.el (libxml-parse-xml-region):
2914 * lisp/url/url-http.el (gnutls-peer-status): Declare.
2915
2916 2015-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
2917
2918 CEDET (srecode-pop, srecode-peek): Don't use `subclass'
2919 * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
2920 `subclass' since they're never called with a class.
2921 (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
2922 srecode-dictionary-child-p.
2923
2924 2015-05-08 Nicolas Richard <theonewiththeevillook@yahoo.fr>
2925
2926 help--binding-locus: Document argument POSITION.
2927 * lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
2928
2929 2015-05-08 Paul Eggert <eggert@cs.ucla.edu>
2930
2931 Merge from gnulib.
2932 * doc/misc/texinfo.tex: Get latest version.
2933
2934 2015-05-08 Oleh Krehel <ohwoeowho@gmail.com>
2935
2936 ffap.el (ffap-read-file-or-url): Fix completing-read call
2937 * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
2938 `completing-read' should be a symbol.
2939
2940 2015-05-08 Eli Zaretskii <eliz@gnu.org>
2941
2942 Verify file modifications by other programs
2943 * src/filelock.c (lock_file): Check whether the file was modified
2944 since it was visited even if 'create-lockfiles' is nil. (Bug#18828)
2945
2946 Fix keyboard macros that include function keys
2947 * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
2948 keys in the macro before returning. (Bug#20454)
2949
2950 2015-05-08 Glenn Morris <rgm@gnu.org>
2951
2952 * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
2953 "Copyright-paperwork-exempt". (Bug#20324)
2954
2955 * lisp/vc/log-edit.el: Handle "(tiny change)". (Bug#20324)
2956 (log-edit-rewrite-tiny-change): New variable.
2957 (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
2958 (log-edit-changelog-ours-p): Set log-edit-author to a cons.
2959 * etc/NEWS: Mention this.
2960
2961 * lisp/calc/calc.el (math-zerop): Declare.
2962
2963 * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
2964
2965 2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
2966
2967 * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
2968 Support the case when BINDINGS is a single tuple. (Bug#20525)
2969
2970 * etc/NEWS: Fix typo in commit 14bb519
2971
2972 2015-05-07 Jan D <jan.h.d@swipnet.se>
2973
2974 Warn for multiple display crash for all Gtk+ versions.
2975 * configure.ac: Warn for multiple display crash for all Gtk+
2976 versions. Output URL to Gtk+ bug (Bug#20452).
2977
2978 ns-win.el (ns-paste-secondary): Use gui-get-selection.
2979 * ns-win.el (ns-paste-secondary): Use gui-get-selection.
2980
2981 2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
2982
2983 * lisp/emacs-lisp/package.el: New "external" package status
2984 An external package is any installed package that's not built-in
2985 and not from `package-user-dir', which usually means it's from an
2986 entry in `package-directory-list'. They are treated much like
2987 built-in packages, in that they cannot be through the Package Menu
2988 deleted and are not considered for upgrades.
2989 (package-desc-status): Identify if a package is installed outside
2990 `package-user-dir'.
2991 (package-menu--print-info-simple)
2992 (package-menu--status-predicate): Add support for it.
2993 * etc/NEWS: Document it.
2994
2995 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2996
2997 * lisp/mail/rmail.el: Use lexical-binding
2998 (rmail-bury): Remove unused var `buffer-to-bury'.
2999 (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
3000 (rmail-parse-url): Remove unused var `proto', `user', and `host'.
3001 (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
3002 (rmail-insert-inbox-text): Remove unused var `movemail'.
3003 (rmail-add-mbox-headers): Remove unused var `limit'.
3004 (rmail-undelete-previous-message): Remove unused var `value'.
3005 (rmail-reply): Remove unused vars `resent-to', `resent-cc',
3006 `resent-reply-to'.
3007 (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
3008 (rmail-restore-desktop-buffer): Rename arguments.
3009
3010 2015-05-06 Glenn Morris <rgm@gnu.org>
3011
3012 * Makefile.in (change-history-commit): Add missing piece of previous.
3013
3014 Avoid unnecessary bumping of Makefile.in's timestamp.
3015 * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
3016 (emacslog): New variable.
3017 (ChangeLog): Use $emacslog. Don't pass $gen_origin.
3018 (unchanged-history-files): Use $emacslog rather than Makefile.in.
3019 (change-history-nocommit): Store hash in $emacslog.
3020 * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
3021 * admin/update_autogen (changelog_files): Update for the above.
3022
3023 * Makefile.in: Don't always insist on removing existing "ChangeLog".
3024 (CHANGELOG): New variable.
3025 (no-ChangeLog): Remove.
3026 (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
3027 (change-history-nocommit): Use a temp file rather than insisting
3028 on deletion of any existing "ChangeLog".
3029
3030 * build-aux/gitlog-to-emacslog: Allow specification of output.
3031
3032 * admin/update_autogen: Add option to update ChangeLog.
3033 (usage): Mention -H.
3034 (changelog_flag, changelog_n, changelog_files): New variables.
3035 (main): Check for -H, and maybe run change-history-nocommit.
3036
3037 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3038
3039 * lisp/subr.el (delete-dups): Pre-size the hashtable.
3040
3041 (define-modify-macro): Make sure cl--arglist-args is defined
3042 * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
3043 cl--arglist-args is defined (bug#20517).
3044
3045 2015-05-06 Glenn Morris <rgm@gnu.org>
3046
3047 * Makefile.in (change-history-nocommit): New.
3048
3049 2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
3050
3051 Only cancel timer when it is non-nil
3052 * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
3053 timer when it is non-nil
3054 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
3055
3056 2015-05-06 Glenn Morris <rgm@gnu.org>
3057
3058 Quieten cedet compilation
3059 * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
3060 Invert fboundp test to quieten on current Emacs.
3061 * lisp/cedet/ede/config.el (ede-shell-run-something)
3062 (semanticdb-file-table-object, semanticdb-needs-refresh-p)
3063 (semanticdb-refresh-table): Declare.
3064 (ede-preprocessor-map): Require semantic/db.
3065
3066 Quieten cc-mode compilation
3067 * lisp/progmodes/cc-awk.el (c-forward-sws):
3068 * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
3069 Declare.
3070
3071 2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
3072
3073 lisp/subr.el (delete-dups): Avoid nreverse.
3074
3075 2015-05-06 Artur Malabarba <bruce.connor.am@gmail.com>
3076
3077 * lisp/subr.el (delete-dups): Make it destructive again.
3078
3079 2015-05-06 Paul Eggert <eggert@cs.ucla.edu>
3080
3081 * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
3082
3083 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3084
3085 * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
3086 * lisp/emacs-lisp/testcover.el: Use lexical-binding.
3087 (testcover--read): Rename from testcover-read. Change calling convention.
3088 Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
3089 (testcover-start): Use add-function. Move edebug-all-defs binding to
3090 testcover--read.
3091 (testcover-this-defun): Tighten scope of edebug-all-defs binding.
3092 (testcover-mark): Remove unused var `item'.
3093 * src/lread.c (syms_of_lread): Default load-read-function to `read'.
3094
3095 2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
3096
3097 lisp/subr.el (delete-dups): Use a hash table
3098 * lisp/subr.el (delete-dups): When there are more than 100 candidates,
3099 use a hash table. This can result in ~500 times speed-up for typical
3100 collections of size 5000, like that of `load-library'.
3101
3102 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3103
3104 CEDET: Avoid `oref' on classes in a few more cases
3105 * lisp/cedet/ede/generic.el (ede-find-target):
3106 * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
3107 * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
3108 var `prefix'.
3109
3110 * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
3111 * lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
3112 (semantic-symref-perform-search): Remove unused var `pat'.
3113
3114 CEDET (srecode-compile-inserter): Avoid `oref' on classes
3115 * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
3116 Avoid `oref' on classes (bug#20491).
3117 (srecode-compile-split-code): Remove unused var `key'.
3118
3119 2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
3120
3121 Clean up pulse.el a little
3122 * lisp/cedet/pulse.el (pulse): Remove.
3123 (pulse-momentary-timer): Save instead of the stop time.
3124 (pulse-momentary-highlight-overlay): Call
3125 pulse-momentary-unhighlight first thing. Treat
3126 pulse-momentary-overlay as a single value, not a list. Save the
3127 created timer. Only pass the stop time to the timer.
3128 (pulse-tick): Update accordingly.
3129 (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
3130 single value. Cancel the timer.
3131
3132 2015-05-06 Tassilo Horn <tsdh@gnu.org>
3133
3134 Support the biblatex journaltitle field
3135 * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
3136 Support the biblatex journaltitle field.
3137
3138 2015-05-05 Glenn Morris <rgm@gnu.org>
3139
3140 Minor declare-function improvement
3141 * lisp/emacs-lisp/bytecomp.el
3142 (byte-compile-macroexpand-declare-function):
3143 Handle declarations after calls. (Bug#20509)
3144
3145 * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
3146
3147 * lisp/w32-fns.el (w32-shell-name): Silence compiler.
3148
3149 2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
3150
3151 Pulse using a timer
3152 * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
3153 (pulse-momentary-highlight-overlay): Set up the timer instead of
3154 calling `pulse'
3155 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
3156 (pulse-tick): New function.
3157 (pulse-momentary-unhighlight): Cut off the stop time.
3158 (pulse-delay): Update the docstring WRT to not using sit-for.
3159
3160 Add semantic/symref/grep file patterns for ruby-mode
3161 * lisp/cedet/semantic/symref/grep.el
3162 (semantic-symref-filepattern-alist): Add patterns for
3163 ruby-mode. Clarify the docstring.
3164
3165 Don't require match
3166 * lisp/progmodes/xref.el (xref--read-identifier): Don't require
3167 match. That doesn't work for every command, and some identifier
3168 completion tables are bound to be imperfect anyway.
3169
3170 2015-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
3171
3172 * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
3173 (semantic-grammar--template-expand): New function.
3174 (semantic-grammar-header, semantic-grammar-footer): Use it.
3175 (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
3176 (semantic-grammar-file-regexp): Refine regexp.
3177 (semantic-grammar-eldoc-get-macro-docstring):
3178 Use elisp-get-fnsym-args-string when available.
3179 (semantic-idle-summary-current-symbol-info): Use new elisp-* names
3180 instead of the old eldoc-* names.
3181 * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
3182 from elisp-mode.el. Tweak calling convention.
3183 * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
3184 (elisp-get-fnsym-args-string): Add `prefix' argument. Rename from
3185 elisp--get-fnsym-args-string.
3186 (elisp--highlight-function-argument): Add `prefix' arg.
3187 (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
3188 (elisp--docstring-format-sym-doc): Move back to eldoc.el.
3189
3190 2015-05-05 Glenn Morris <rgm@gnu.org>
3191
3192 * lisp/help-fns.el (describe-function-1):
3193 Handle builtins with advertised calling conventions. (Bug#20479)
3194
3195 2015-05-05 Nicolas Petton <nicolas@petton.fr>
3196
3197 Merge branch 'seq-let'
3198
3199 Update `seq-let' documentation
3200 * doc/lispref/sequences.texi: Update the documentation of `seq-let'
3201 with the support of `&rest'.
3202
3203 Add support for &rest in `seq-let'
3204 * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
3205 in the argument list.
3206 * test/automated/seq-tests.el: Add a test for parsing and binding
3207 `&rest' in `seq-let'.
3208
3209 2015-05-05 Paul Eggert <eggert@cs.ucla.edu>
3210
3211 Spelling fixes
3212
3213 2015-05-05 (tiny change) Pierre Lorenzon <devel@pollock-nageoire.net>
3214
3215 * eieio-custom.el (eieio-object-value-get): Add missing increment
3216 (Bug#20467)
3217
3218 (eieio-object-value-create): Adjust to new slots representation
3219 (Bug#20467)
3220 * eieio-custom.el (eieio-object-value-create):
3221 Fix missed adjustment to new representation of slots metadata.
3222
3223 2015-05-05 Nicolas Petton <nicolas@petton.fr>
3224
3225 * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
3226
3227 2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
3228
3229 Work around "Attempt to modify read-only object"
3230 * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
3231 elisp--xref-find-definitions, to work around "Attempt to modify
3232 read-only object" error.
3233
3234 Only skip some variables that have function counterparts
3235 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
3236 Only skip minor-mode-named variable if it's defined in a Lisp
3237 file, and it's in minor-mode-list (bug#20506).
3238 * test/automated/elisp-mode-tests.el
3239 (elisp-xref-finds-both-function-and-variable)
3240 (elisp-xref-finds-only-function-for-minor-mode): New tests.
3241
3242 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
3243
3244 Buttonize the whole line, including the number at the beginning
3245 * lisp/progmodes/xref.el (xref--location-at-point): Revert the
3246 previous change.
3247 (xref--insert-xrefs): Buttonize the whole line, including the
3248 number at the beginning.
3249
3250 Make sure we're inside the let bindings
3251 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
3252 Make sure we're inside the let bindings.
3253 * test/automated/elisp-mode-tests.el
3254 (elisp-completes-functions-after-let-bindings): New test.
3255
3256 2015-05-04 Glenn Morris <rgm@gnu.org>
3257
3258 * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
3259 (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
3260 (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
3261 Remove outdated declarations.
3262
3263 Replace instances of "(eval-when-compile (autoload ...))"
3264 * lisp/gnus/gnus-art.el (nneething-get-file-name):
3265 Declare rather than autoload.
3266 * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
3267 Remove pointless autoload.
3268 * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
3269 (gnus-topic-create-topic, gnus-topic-enter-dribble):
3270 Declare rather than autoload.
3271 * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
3272 (mailcap-extension-to-mime): Autoload at run-time.
3273 * lisp/gnus/mm-util.el (latin-unity-massage-name)
3274 (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
3275 (latin-unity-representations-present-region):
3276 Declare rather than autoload.
3277 * lisp/gnus/mml-smime.el (epg-make-context)
3278 (epg-passphrase-callback-function): Autoload at run-time.
3279 (epg-context-set-signers, epg-context-result-for)
3280 (epg-new-signature-digest-algorithm)
3281 (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
3282 (epg-sign-string, epg-encrypt-string)
3283 (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
3284 (epg-configuration, epg-expand-group, epa-select-keys):
3285 Declare rather than autoload.
3286 * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
3287 Autoload at run-time.
3288 (gnus-group-topic-name, nnimap-buffer, nnimap-command)
3289 (gnus-registry-get-id-key, gnus-registry-action):
3290 Declare rather than autoload.
3291 * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
3292 * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
3293 (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
3294 (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
3295 (spam-stat-split-fancy): Remove pointless autoloads.
3296 * lisp/net/mairix.el: Load gnus-util when compiling.
3297 (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
3298 (message-field-value): Declare rather than autoload.
3299 (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
3300 Check gnus-alive-p is fbound.
3301 (vm-quit, vm-visit-folder, vm-select-folder-buffer)
3302 (vm-check-for-killed-summary, vm-error-if-folder-empty)
3303 (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
3304 Declare rather than autoload.
3305
3306 * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
3307
3308 * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
3309 (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
3310
3311 * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
3312
3313 * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
3314
3315 * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
3316 * lisp/emacs-lisp/package.el (epg-signature-status):
3317 Fix declarations.
3318
3319 * lisp/play/gametree.el (gametree-show-children-and-entry)
3320 (gametree-apply-layout, gametree-mouse-show-subtree)
3321 (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
3322
3323 * lisp/emacs-lisp/check-declare.el (check-declare-verify):
3324 Handle cl-defgeneric, cl-defmethod.
3325
3326 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
3327
3328 Highlight both type and symbol name
3329 * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
3330 Highlight both type and symbol name.
3331
3332 Insert, highlight and align line numbers in xref output
3333 * lisp/progmodes/etags.el (xref-location-line): Specialize for
3334 xref-etags-location.
3335 * lisp/progmodes/xref.el (xref-location-line): New generic method.
3336 (xref-file-location): Add reader for the line slot.
3337 (xref--location-at-point): Skip to the `xref-location' property.
3338 (xref--collect-reference): Drop the line number from description.
3339 (xref--insert-xrefs): Insert, highlight and align line numbers.
3340
3341 2015-05-04 Daniel Colascione <dancol@dancol.org>
3342
3343 Fix previous commit
3344
3345 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
3346
3347 Don't pulse the indentation, or the newline
3348 * lisp/cedet/pulse.el (pulse-lighten-highlight)
3349 (pulse-reset-face): Fall back to the inherited background
3350 attribute in FACE.
3351 (pulse-momentary-highlight-region): Add autoload cookie.
3352 * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
3353 indentation, or the newline, if the line's non-empty
3354 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
3355
3356 2015-05-04 Daniel Colascione <dancol@dancol.org>
3357
3358 Add `save-mark-and-excursion', which has the old `save-excursion' behavior
3359 * doc/lispref/positions.texi (Excursions): Document
3360 `save-mark-and-excursion'.
3361 * lisp/font-lock.el (font-lock-fontify-block): Use
3362 `save-mark-and-excursion' instead of `save-excursion', restoring
3363 Emacs 24 behavior.
3364 * lisp/simple.el (save-mark-and-excursion--save)
3365 (save-mark-and-excursion--restore): New functions.
3366 (save-mark-and-excursion): New user macro.
3367 * src/editfns.c (Fsave_excursion): Mention
3368 `save-mark-and-excursion' in `save-excursion' documentation.
3369
3370 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
3371
3372 Classify lone symbol inside let varlist as variable
3373 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
3374 Classify lone symbol inside let varlist as variable.
3375 * test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
3376 New test.
3377
3378 Add xref-pulse-on-jump
3379 * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
3380 Add autoload cookie.
3381 * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
3382 (xref--maybe-pulse): New function.
3383 (xref-pop-marker-stack, xref--pop-to-location)
3384 (xref--display-position): Use it.
3385 (xref--location-at-point): Use back-to-indentation.
3386
3387 2015-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
3388
3389 * lisp/org/org-{macs,list}.el: Fix lexical warnings
3390 * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
3391 (org-list-get-next-item, org-list-get-prev-item)
3392 (org-list-get-children): Mark unused arg `struct'.
3393 (org-list-use-alpha-bul-p): Remove unused var `bul'.
3394 (org-toggle-checkbox): Mark unused var.
3395 (org-update-checkbox-count): Remove unused var `box-num'.
3396 (org-adapt-indentation): Declare.
3397 (org-list-parse-list): Declare var instead of adding a dummy duplicate.
3398 (org-list-send-list): Remove unused var `txt'.
3399 (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
3400 (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
3401 * lisp/org/org-macs.el: Use `declare'.
3402 (org-with-limited-levels): Declare dyn-bound vars.
3403
3404 2015-05-04 Eli Zaretskii <eliz@gnu.org>
3405
3406 Fix minor issues with CEDET on MS-Windows
3407 * lisp/cedet/semantic/symref/idutils.el
3408 (semantic-symref-parse-tool-output-one-line): Fix the search
3409 regexp to match MS-Windows file names with drive letters.
3410 (Bug#19468)
3411 * lisp/cedet/semantic/symref/grep.el
3412 (semantic-symref-grep-use-template): Remove "--color=always" from
3413 Grep switches on MS-Windows.
3414 (semantic-symref-grep-shell): Use shell-file-name as the default
3415 value, so this works not only on Posix platforms.
3416 (semantic-symref-perform-search): Use shell-quote-argument instead
3417 of literal '..' for portable quoting of Grep command-line
3418 argument. Use shell-command-switch instead of a literal "-c".
3419 * lisp/cedet/semantic/bovine/gcc.el
3420 (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
3421 for an absolute file name in a portable way.
3422
3423 2015-05-04 Artur Malabarba <bruce.connor.am@gmail.com>
3424
3425 * lisp/emacs-lisp/package.el: Remove `package--silence' variable
3426 (package-import-keyring, package-refresh-contents)
3427 (package-compute-transaction, package--save-selected-packages)
3428 (package-install-from-archive, package-delete)
3429 (package-menu--perform-transaction): Use `inhibit-message'
3430 instead.
3431 (package--compile): Set `warning-minimum-level' to :error.
3432
3433 2015-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
3434
3435 * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
3436 (terminal-init-screen): Use it (bug#20356).
3437 * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
3438 (xterm--extra-capabilities-type): New const.
3439 (xterm-extra-capabilities): Use it.
3440 (xterm--version-handler): Lower the pseudo-version for `screen'.
3441
3442 2015-05-03 Dmitry Gutov <dgutov@yandex.ru>
3443
3444 xref--insert-xrefs: Tweak the faces
3445 * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
3446 Always insert a newline at the end (to avoid mouse-face background
3447 tail at the last line).
3448
3449 elisp-completion-at-point: Prioritize being quoted over funpos
3450 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
3451 Only consider function position when not inside quoted form
3452 (bug#20425).
3453 * test/automated/elisp-mode-tests.el: New file.
3454
3455 Stop vc-print-log from jumping to the top
3456 * lisp/vc/vc.el (vc-print-log-internal): Pass nil
3457 GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
3458 is not specified.
3459 (vc-incoming-outgoing-internal): Always pass nil.
3460 (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
3461 call it, and don't set vc-sentinel-movepoint (bug#15322).
3462 (vc-print-root-log): Don't fetch the root working revision, nor
3463 pass it to vc-print-log-internal.
3464
3465 2015-05-02 Michael Vehrs <Michael.Burschik@gmx.de>
3466
3467 Fix display of keyboard layouts for right-to-left scripts
3468 * lisp/international/quail.el (quail-insert-kbd-layout): Force
3469 left-to-right paragraph direction.
3470
3471 2015-05-02 K. Handa <handa@gnu.org>
3472
3473 * cmds.c (internal_self_insert): When we insert spaces for
3474 padding, set point before the padding spaces, not after them.
3475
3476 2015-05-02 Nicolas Petton <nicolas@petton.fr>
3477
3478 * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
3479
3480 2015-05-02 Dmitry Gutov <dgutov@yandex.ru>
3481
3482 Fix etags-xref-find for references
3483 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
3484 * lisp/progmodes/etags.el (etags-xref-find): Ditto. Prompt for
3485 directory if no tags tables are loaded (bug#19468).
3486
3487 2015-05-02 Philipp Stephani <phst@google.com>
3488
3489 Update the options in whitespace-style defcustom
3490 * lisp/whitespace.el (whitespace-style): Use `set' instead of a
3491 `repeat' because the option is really set-like. Add missing
3492 options. Reorder options to match the order in the
3493 documentation. (Bug#20346)
3494
3495 2015-05-02 Eli Zaretskii <eliz@gnu.org>
3496
3497 Fix error diagnostics of c-macro-expand
3498 * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
3499 too early if no start-marker string was found -- that generally
3500 means cpp exited abnormally, and we still want to show its error
3501 messages to the user.
3502
3503 Don't require Texinfo 5.0 for Emacs documentation
3504 * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
3505 "@set txicodequotebacktick" instead of "@codequotebacktick on" and
3506 "@codequoteundirected on", respectively, to avoid requiring
3507 Texinfo 5.x for Emacs documentation.
3508
3509 2015-05-01 Simen Heggestøyl <simenheg@gmail.com>
3510
3511 * lisp/files.el (pwd):
3512 When called with a prefix argument, insert the current default
3513 directory at point.
3514
3515 2015-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
3516
3517 * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
3518 * lisp/isearch.el (isearch-mode-map): Don't inhibit
3519 function-key-map remapping for backspace (bug#20466).
3520
3521 2015-05-01 Dmitry Gutov <dgutov@yandex.ru>
3522
3523 Implement xref-find-references in etags and elisp-mode
3524 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
3525 (elisp-xref-find): Use it.
3526 * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
3527 * lisp/progmodes/xref.el (xref-collect-references):
3528 (xref--collect-reference): New functions.
3529
3530 2015-05-01 Paul Eggert <eggert@cs.ucla.edu>
3531
3532 Prefer plain characters to Texinfo circumlocutions
3533 For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
3534 'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
3535
3536 Fix single-quoting style in PDF manuals
3537 The PDF versions of the GNU manuals used curved single quotes to
3538 represent grave accent and apostrophe, which made it a pain to cut
3539 and paste code examples from them. Fix the PDF versions to use
3540 grave accent and apostrophe for Lisp source code, keystrokes, etc.
3541 This change does not affect the info files, nor does it affect
3542 ordinary uses of curved single quotes in PDF.
3543 * doc/emacs/docstyle.texi: New file, which specifies treatment for
3544 grave accent and apostrophe, as well as the document encoding.
3545 * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
3546 * doc/lispintro/emacs-lisp-intro.texi:
3547 * doc/lispref/back.texi, doc/lispref/book-spine.texi:
3548 * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
3549 * doc/misc/ada-mode.texi, doc/misc/auth.texi:
3550 * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
3551 * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
3552 * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
3553 * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
3554 * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
3555 * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
3556 * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
3557 * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
3558 * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
3559 * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
3560 * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
3561 * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
3562 * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
3563 * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
3564 * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
3565 * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
3566 * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
3567 * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
3568 * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
3569 * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
3570 * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
3571 * doc/misc/woman.texi:
3572 Use it instead of '@documentencoding UTF-8', to lessen the need for
3573 global changes like this in the future.
3574 * doc/emacs/Makefile.in (EMACS_XTRA):
3575 * doc/lispintro/Makefile.in (srcs):
3576 * doc/lispref/Makefile.in (srcs):
3577 Add dependency on docstyle.texi.
3578 * doc/misc/Makefile.in (style): New macro.
3579 (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
3580 (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
3581 Use it.
3582
3583 2015-05-01 Glenn Morris <rgm@gnu.org>
3584
3585 * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
3586
3587 * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
3588 (help-fns--signature): Declare.
3589
3590 * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
3591
3592 2015-05-01 Nicolas Petton <nicolas@petton.fr>
3593
3594 New macro seq-let, providing destructuring support to seq.el
3595 * lisp/emacs-lisp/seq.el (seq-let): New macro. `seq-let' is similar
3596 to `cl-destructuring-bind' but works on all sequence types supported
3597 by `seq.el'. Bump version number to 1.6.
3598 * test/automated/seq-tests.el: Add tests for seq-let.
3599 * doc/lispref/sequences.texi: Add documentation for seq-let.
3600
3601 2015-05-01 Pontus Michael <m.pontus@gmail.com>
3602
3603 * lisp/simple.el (blink-matching-open): Better behavior in minibuffer
3604
3605 2015-05-01 Glenn Morris <rgm@gnu.org>
3606
3607 * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
3608
3609 2015-05-01 Artur Malabarba <bruce.connor.am@gmail.com>
3610
3611 * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
3612 This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
3613 This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
3614 With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
3615 (Bug#20445).
3616
3617 2015-05-01 K. Handa <handa@gnu.org>
3618
3619 * mule-cmds.el (input-method-use-echo-area): Change :type to
3620 'boolean.
3621
3622 2015-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
3623
3624 Start using proportional fonts in eww by default
3625 * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
3626 it seems to work well.
3627
3628 Fix links in tables in shr
3629 * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
3630 makes (some) links in tables not work.
3631
3632 2015-05-01 Jan D <jan.h.d@swipnet.se>
3633
3634 (ns-get-cut-buffer-internal): Remove this alias.
3635 * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
3636
3637 2015-04-30 Glenn Morris <rgm@gnu.org>
3638
3639 * lisp/emacs-lisp/ert.el (ert--special-operator-p):
3640 Update for 2015-02-08 change to indirect-function.
3641
3642 * lisp/term/ns-win.el (ns-get-selection-internal):
3643 Remove declaration for function deleted 2014-10-21.
3644
3645 * lisp/dom.el: Load subr-x when compiling, for when-let.
3646
3647 Silence some compilation warnings
3648 * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
3649 * lisp/emulation/cua-base.el (delete-active-region):
3650 * lisp/net/net-utils.el (w32-get-console-output-codepage):
3651 * lisp/term/ns-win.el (ns-own-selection-internal)
3652 (ns-disown-selection-internal, ns-selection-owner-p)
3653 (ns-selection-exists-p, ns-get-selection):
3654 Declare for compiler..
3655
3656 Function declaration updates prompted by 'make check-declare'
3657 * lisp/emacs-lisp/package.el (lm-homepage):
3658 * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
3659 * lisp/gnus/mm-decode.el (libxml-parse-html-region):
3660 * lisp/gnus/mml.el (libxml-parse-html-region):
3661 * lisp/gnus/nnrss.el (libxml-parse-html-region):
3662 * lisp/net/eww.el (libxml-parse-html-region):
3663 * lisp/net/shr.el (libxml-parse-html-region):
3664 * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
3665 * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
3666 * lisp/vc/vc-git.el (vc-annotate-convert-time):
3667 * lisp/vc/vc-hg.el (vc-annotate-convert-time):
3668 * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
3669 * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
3670 Update declaration.
3671
3672 Remove compatibility code for 20-year old function renaming
3673 * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
3674 Make it an obsolete alias.
3675 (idlwave-shell-filter): Change all uses to comint-output-filter.
3676
3677 2015-04-30 Tassilo Horn <tsdh@gnu.org>
3678
3679 Add ace-window face config
3680 * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
3681 configuration.
3682
3683 2015-04-30 Paul Eggert <eggert@cs.ucla.edu>
3684
3685 Unclutter 'make doc' output a bit
3686 * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
3687 Use make subst rather than sh IFS to split target string apart.
3688 This makes 'make' output easier to follow.
3689
3690 Merge from gnulib
3691 * doc/misc/texinfo.tex: Update from gnulib.
3692
3693 2015-04-30 Artur Malabarba <bruce.connor.am@gmail.com>
3694
3695 * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
3696 (package-menu--print-info): Obsolete.
3697 (package-menu--print-info-simple): New function.
3698 (package-menu--refresh): Use it, simplify code, and improve
3699 performance.
3700 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
3701 Tiny performance improvement.
3702
3703 * lisp/emacs-lisp/package.el (package--message): inhibit-message
3704
3705 2015-04-29 Paul Eggert <eggert@cs.ucla.edu>
3706
3707 Omit -Wstrict-overflow workaround in GCC 5
3708 * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
3709 if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
3710
3711 Merge from gnulib
3712 This incorporates:
3713 2015-04-29 extern-inline: no need for workaround in GCC 5.1
3714 2015-04-26 file-has-acl: port to CentOS 6
3715 * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
3716
3717 2015-04-29 Helmut Eller <eller.helmut@gmail.com>
3718
3719 Set next-error-* in xref--xref-buffer-mode
3720 * xref.el (xref--xref-buffer-mode): Set `next-error-function' and
3721 `next-error-last-buffer'.
3722 (xref--next-error-function): New function.
3723 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
3724
3725 2015-04-29 Fabián Ezequiel Gallina <fgallina@gnu.org>
3726
3727 python.el: Fix warnings on looking-back calls missing LIMIT
3728 * lisp/progmodes/python.el (python-shell-accept-process-output):
3729 Pass LIMIT arg to looking-back.
3730
3731 2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
3732
3733 * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
3734 (package--download-and-read-archives): Use pushnew instead of
3735 append. If something terrible happened during a previous
3736 download, simply refreshing should now make things work again.
3737
3738 2015-04-29 Dmitry Gutov <dgutov@yandex.ru>
3739
3740 Introduce etags-xref-find-definitions-tag-order
3741 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
3742 New variable.
3743 (etags--xref-find-definitions): Use it (bug#19468).
3744
3745 2015-04-29 Eli Zaretskii <eliz@gnu.org>
3746
3747 PATH- and completion-related fixes in Eshell on MS-Windows
3748 * lisp/eshell/esh-ext.el (eshell-search-path): When running on
3749 MS-Windows, prepend "." to list of directories produced from PATH,
3750 as Windows always implicitly searches the current directory first.
3751 (eshell-force-execution): Make it have a non-nil default value on
3752 MS-Windows and MS-DOS.
3753 * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
3754 eshell-force-execution is non-nil, complete on readable files and
3755 directories, not only executables. When running on MS-Windows,
3756 prepend "." to list of directories produced from PATH, as Windows
3757 always implicitly searches the current directory first.
3758
3759 2015-04-29 Sam Steingold <sds@gnu.org>
3760
3761 bury RCIRC buffers when there is no activity
3762 lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
3763 (rcirc-bury-buffers): new function
3764 (rcirc-next-active-buffer): when there is no new activity, use
3765 `rcirc-bury-buffers' to hide all RCIRC buffers
3766
3767 2015-04-29 Krzysztof Jurewicz <krzysztof.jurewicz@gmail.com> (tiny change)
3768
3769 Fix DBUS query result parsing for secrets-search-items
3770 * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
3771 parsing. The function assumed that return value of the
3772 SearchItems method called on a collection is a list of two lists,
3773 however this is true only when no collection is specified. GNOME
3774 had used to incorrectly return a list of two lists in both cases,
3775 but this was already fixed:
3776 https://bugzilla.gnome.org/show_bug.cgi?id=695115 . Also fix an
3777 incorrect information in the secrets-search-items’ docstring.
3778 (Bug#20449)
3779
3780 2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
3781
3782 * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
3783 (byte-compile--message): Use `inhibit-message' instead of hiding
3784 the previous message with (message nil).
3785
3786 2015-04-29 Oleh Krehel <ohwoeowho@gmail.com>
3787
3788 Remove the deprecated INTERNAL_FIELD macro by expanding it
3789 * src/lisp.h (INTERNAL_FIELD): Remove.
3790 (DEFVAR_KBOARD): Modify accordingly.
3791 * alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
3792 * syntax.c: Adjust users.
3793 * src/buffer.c (compact_buffer): Use BVAR.
3794
3795 2015-04-29 Glenn Morris <rgm@gnu.org>
3796
3797 Replace an obsolete function alias
3798 * lisp/isearch.el (isearch-yank-x-selection):
3799 * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
3800 (mouse-drag-secondary-moving):
3801 * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
3802 Replace obsolete alias x-get-selection with gui-get-selection.
3803
3804 2015-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
3805
3806 * lisp/mail/rmailsum.el: Use lexical-binding.
3807
3808 2015-04-29 Glenn Morris <rgm@gnu.org>
3809
3810 * test/automated/package-test.el (package-test-update-archives-async):
3811 Skip test on hydra.nixos.org.
3812
3813 2015-04-28 Glenn Morris <rgm@gnu.org>
3814
3815 * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
3816 (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
3817 (foldout-mouse-hide-or-exit): Use new names for outline functions.
3818
3819 * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
3820 Update for 2014-06-26 hideif.el change.
3821
3822 * lisp/mail/rmailsum.el: Fix search for encoded subjects. (Bug#19088)
3823 (rmail--decode-and-apply): New function.
3824 (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
3825
3826 * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
3827
3828 2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
3829
3830 * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
3831 (package-menu--refresh): Delegate obsolete-hiding to
3832 `package--remove-hidden'.
3833 (package--remove-hidden): Disregard high-priority package if it is
3834 older than the installed one.
3835
3836 2015-04-28 Paul Eggert <eggert@cs.ucla.edu>
3837
3838 Update source file encoding list
3839 Update admin/notes/unicode, along with coding system cookies in
3840 other files, so that the two match each other better.
3841 * admin/notes/unicode: lisp/language/ethio-util.el and
3842 lisp/language/ethiopic.el also use utf-8-emacs.
3843 * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
3844 * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
3845 * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
3846 * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
3847 * etc/refcards/sk-survival.tex:
3848 Add "coding: utf-8" so that this file is not mishandled in a
3849 Latin-1 or Big-5 locale.
3850 * lisp/international/robin.el, lisp/org/ox-ascii.el:
3851 Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
3852 * lisp/language/ethio-util.el: Fix trailer.
3853
3854 2015-04-28 Eli Zaretskii <eliz@gnu.org>
3855
3856 Fix synchronous invocation of Ispell
3857 * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
3858 value to ispell-process-directory before calling ispell-init-process.
3859 Don't call set-process-coding-system if ispell-async-processp is nil.
3860 (Bug#20448)
3861
3862 2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
3863
3864 * lisp/emacs-lisp/package.el: Skip space and comments in init file
3865 (package--ensure-init-file): Insert snippet at first
3866 non-whitespace non-comments line. Respects local-vars at the top
3867 of the file.
3868
3869 2015-04-28 Glenn Morris <rgm@gnu.org>
3870
3871 * lisp/mail/rmail.el (rmail-copy-headers):
3872 Handle rmail-nonignored-headers being nil. (Bug#18878)
3873
3874 * lisp/subr.el (delay-mode-hooks): Fix doc typo.
3875
3876 * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
3877 Don't get confused by a bzrlib version mismatch warning.
3878
3879 2015-04-27 Thomas Fitzsimmons <fitzsim@fitzsim.org>
3880
3881 Change default location of EUDC options file
3882 * NEWS: Document change to EUDC options file's default location.
3883 * lisp/net/eudc-vars.el (eudc-options-file): Use
3884 `locate-user-emacs-file' to change default options file location.
3885
3886 2015-04-27 Glenn Morris <rgm@gnu.org>
3887
3888 * test/automated/package-test.el (package-test-update-archives-async):
3889 Try to handle the test server script dying.
3890
3891 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3892
3893 * lisp/saveplace.el (save-place-mode): New minor mode.
3894 (save-place): Redefine as an obsolete alias.
3895
3896 * lisp/midnight.el: Make it a minor mode. Allow predicates.
3897 * lisp/midnight.el: Use lexical-binding.
3898 (midnight-mode): Make it a proper minor mode.
3899 (midnight-buffer-display-time): Make arg non-optional.
3900 (midnight-find): Remove.
3901 (clean-buffer-list-kill-never-regexps)
3902 (clean-buffer-list-kill-regexps): Tweak type for new function choice.
3903 (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
3904 contain functions.
3905 (clean-buffer-list): Use cl-find.
3906 Allow clean-buffer-list-kill-never-regexps to contain functions.
3907
3908 2015-04-27 Nicolas Petton <nicolas@petton.fr>
3909
3910 Bump version of seq.el to 1.5
3911 * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
3912 from seq-doseq. Bump version number of seq.el.
3913
3914 2015-04-27 Glenn Morris <rgm@gnu.org>
3915
3916 * lisp/mail/rmail.el (rmail-reply):
3917 Decode subject before matching "Re:" prefix. (Bug#20396)
3918
3919 2015-04-27 Artur Malabarba <bruce.connor.am@gmail.com>
3920
3921 * lisp/emacs-lisp/package.el: Small improvements
3922 (package--with-work-buffer-async): More informative error.
3923 (package-install-user-selected-packages): Rename to
3924 `package-install-selected-packages'.
3925
3926 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3927
3928 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
3929 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
3930 (eieio--class-make): Remove leftover `tag'.
3931
3932 2015-04-27 Glenn Morris <rgm@gnu.org>
3933
3934 * lisp/gnus/message.el (gnus-extract-address-components):
3935 Remove bogus declaration that was masking previous problem.
3936
3937 2015-04-27 Nicolas Graner <nicolas.graner@u-psud.fr> (tiny change)
3938
3939 * lisp/gnus/message.el (message-insert-formatted-citation-line):
3940 Fix typo. (Bug#20318)
3941
3942 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3943
3944 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
3945
3946 * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
3947 * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
3948 the buffer in yet another frame.
3949 (reftex-toc-visit-location): Make sure toc-window has focus at the end
3950 when `final' is nil.
3951 (reftex--rebuilding-toc): Defvar to avoid `boundp' and
3952 silence warnings. Use `--' to clarify that it's internal.
3953 (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
3954 (reftex-toc-promote): Clarify unused argument.
3955 (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
3956 Add `reftex--' prefix. Fix all users.
3957 (reftex-toc-promote-prepare): Use _ for dummy variable.
3958 (reftex-toc-restore-region): Rename `m
3959
3960 2015-04-27 Eli Zaretskii <eliz@gnu.org>
3961
3962 Fix a typo in bibtex.el
3963 * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
3964 last change. (Bug#20429)
3965
3966 Fix redisplay of frame after loading new fonts
3967 * src/xdisp.c (redisplay_internal): When retrying redisplay of a
3968 frame because new fonts were loaded, disable all redisplay
3969 optimizations on that frame by calling SET_FRAME_GARBAGED.
3970 (Bug#20410)
3971
3972 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3973
3974 * lisp/info.el (Info-menu): Properly provide the `default'
3975 (Bug#20391)
3976
3977 * elisp-mode.el: Catch errors from `documentation'
3978 (Bug#20418)
3979 * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
3980 Catch errors from documentation.
3981 (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
3982
3983 2015-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
3984
3985 lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
3986 Remove redundant ":group 'package".
3987
3988 2015-04-26 Eli Zaretskii <eliz@gnu.org>
3989
3990 Fix a typo in rmail.el
3991 * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
3992 last commit. (Bug#20429)
3993
3994 2015-04-26 Dmitry Gutov <dgutov@yandex.ru>
3995
3996 Introduce xref-prompt-for-identifier
3997 * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
3998 (xref--read-identifier): Use it
3999 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
4000
4001 2015-04-26 João Távora <joaotavora@gmail.com>
4002
4003 `tex-insert-quote' after single `'' opens quotes instead of closing
4004 Without this, it's very hard to precede double quotes with the
4005 apostrophe character, i.e. insert the sequence '``
4006 (quote-backquote-backquote), commonly useful in portuguese, for
4007 instance.
4008 * tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
4009 chars making `tex-insert-quote' be in the "opening" context.
4010
4011 2015-04-25 Dmitry Gutov <dgutov@yandex.ru>
4012
4013 Pass `id' to `completing-read' as def instead of initial input
4014 * xref.el (xref--read-identifier): Pass `id' to `completing-read'
4015 as the default value instead of initial input
4016 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
4017
4018 2015-04-25 Paul Eggert <eggert@cs.ucla.edu>
4019
4020 Don't freeze with unreadable processes
4021 Don't freeze if an exiting process can't be read from. (Bug#19860).
4022 This fixes a bug I introduced in
4023 2014-07-08T07:24:07Z@eggert@cs.ucla.edu
4024 "* process.c: Add sanity checks for file descriptors."
4025 Dmitry Gutov did most of the legwork in finding the problem.
4026 * src/process.c (wait_reading_process_output):
4027 Treat non-running processes that can't be read from
4028 the same as other non-running processes.
4029
4030 2015-04-25 Alan Mackenzie <acm@muc.de>
4031
4032 Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
4033 * lisp/subr.el (remove-yank-excluded-properties): put
4034 `with-silent-modifications' around only the last three lines of code.
4035
4036 2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
4037
4038 * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
4039 (package--all-keywords): Deleted variable.
4040
4041 * etc/NEWS: Document package-hiding functionality
4042
4043 2015-04-25 Eli Zaretskii <eliz@gnu.org>
4044
4045 lisp/window.el (recenter-last-op): Doc fix. (Bug#20419)
4046
4047 Clarify the doc string of 'replace-regexp-in-string'
4048 * lisp/subr.el (replace-regexp-in-string): Doc fix. (Bug#20395)
4049
4050 Improve doc string of 'insert-buffer-substring'
4051 * src/editfns.c (Finsert_buffer_substring): Doc fix. (Bug#20421)
4052
4053 MS-Windows followup for the recent gnulib update
4054 * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
4055 acl-internal.c.
4056
4057 2015-04-24 Paul Eggert <eggert@cs.ucla.edu>
4058
4059 Spelling fixes
4060
4061 Merge from gnulib
4062 This incorporates:
4063 2015-04-24 file-has-acl: new module, split from acl
4064 2015-04-24 manywarnings: add GCC 5.1 warnings
4065 2015-04-21 lstat: fix cross-compilation 'ln -s' problem
4066 2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
4067 2015-04-15 acl: On Linux, check for acls without libacl
4068 2015-04-14 tempname: avoid unused parameter warnings (trivial)
4069 * lib/acl-internal.c: New file, from gnulib.
4070 * lib/file-has-acl.c: Remove; no longer imported from gnulib.
4071 * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
4072 * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
4073 Update from gnulib.
4074
4075 Port --enable-gcc-warnings to GCC 5.1 x86-64
4076 * lib-src/ebrowse.c (dump_sym):
4077 * lib-src/hexl.c (main):
4078 * src/ccl.c (ccl_driver):
4079 * src/character.c (string_escape_byte8):
4080 * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
4081 * src/gnutls.c (Fgnutls_boot):
4082 * src/gtkutil.c (xg_check_special_colors):
4083 * src/image.c (x_build_heuristic_mask):
4084 * src/print.c (safe_debug_print, print_object):
4085 * src/term.c (produce_glyphless_glyph):
4086 * src/xdisp.c (get_next_display_element)
4087 (produce_glyphless_glyph):
4088 * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
4089 Don't use a signed format to print an unsigned integer, or vice
4090 versa. GCC 5.1's new -Wformat-signedness option warns about this.
4091 * src/image.c (png_load_body, jpeg_load_body):
4092 Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
4093
4094 2015-04-24 Tassilo Horn <tsdh@gnu.org>
4095
4096 Add new faces to tsdh-light-theme
4097 * etc/themes/tsdh-light-theme.el (tsdh-light): New face
4098 definitions for Info-quoted, ace-jump-face-foreground,
4099 hl-paren-face, show-paren-match, and show-paren-mismatch.
4100
4101 2015-04-24 Nicolas Petton <nicolas@petton.fr>
4102
4103 * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
4104
4105 2015-04-24 Glenn Morris <rgm@gnu.org>
4106
4107 * build-aux/gitlog-to-emacslog:
4108 Use raw log format rather than wrapped one.
4109
4110 2015-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
4111
4112 * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
4113 (seq-doseq): Fix out-of-scope binding.
4114 Don't call `seq-length at every iteration.
4115 Reduce `if's from 3 to 2 per iteration.
4116 (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
4117
4118 2015-04-24 Glenn Morris <rgm@gnu.org>
4119
4120 * lisp/textmodes/text-mode.el (text-mode-hook):
4121 Move text-mode-hook-identify to default.
4122
4123 * lisp/mouse.el (minor-mode-menu-from-indicator):
4124 Handle non-function members of minor-mode-map-alist. (Bug#20201)
4125
4126 * lisp/help-fns.el (describe-function): More type checking.
4127 (describe-function-1): Handle changed symbol-function. (Bug#20201)
4128
4129 * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
4130 (Bug#20325)
4131
4132 2015-04-24 Andreas Schwab <schwab@linux-m68k.org>
4133
4134 shr: strip leading whitespace when expanding URLs
4135 * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
4136
4137 2015-04-24 Eli Zaretskii <eliz@gnu.org>
4138
4139 Clarify "co-authored" some more
4140
4141 * CONTRIBUTE: Clarify "co-authored-by". (Bug#20400)
4142
4143 Clarify doc strings of functions that search for properties
4144 * src/textprop.c (Fnext_char_property_change)
4145 (Fprevious_char_property_change)
4146 (Fnext_single_char_property_change)
4147 (Fprevious_single_char_property_change, Fnext_property_change)
4148 (Fnext_single_property_change, Fprevious_property_change)
4149 (Fprevious_single_property_change): Clarify doc strings wrt return
4150 value and the optional LIMIT argument. (Bug#20411)
4151
4152 2015-04-24 Glenn Morris <rgm@gnu.org>
4153
4154 * test/automated/message-mode-tests.el (message-mode-propertize):
4155 Handle non-writable HOME; eg on hydra.nixos.org.
4156
4157 2015-04-23 Eli Zaretskii <eliz@gnu.org>
4158
4159 Avoid starting threads by w32-shell-execute
4160 * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
4161 local file names, before invoking ShellExecute. (Bug#20220)
4162
4163 2015-04-23 Martin Rudalics <rudalics@gmx.at>
4164
4165 Fix following doc-links in `widget-documentation-link-action'
4166 * lisp/wid-edit.el (widget-documentation-link-action): Make
4167 following doc-links less simplistic (Bug#20398).
4168
4169 2015-04-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
4170
4171 Improve EUDC manual
4172 * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
4173
4174 2015-04-22 Paul Eggert <eggert@cs.ucla.edu>
4175
4176 Omit needless "\ " after multibyte then newline
4177 * src/print.c: Include <c-ctype.h>, for c_isxdigit.
4178 (print_object): When print-escape-multibyte is non-nil and a
4179 multibyte character is followed by a newline or formfeed, followed
4180 by a hex digit, don't output a needless "\ " before the hex digit.
4181 * test/automated/print-tests.el (print-hex-backslash): New test.
4182
4183 2015-04-22 Oleh Krehel <ohwoeowho@gmail.com>
4184
4185 Add a new `inhibit-message' variable
4186 * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
4187 (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
4188 `inhibit_message' is non-zero.
4189 * etc/NEWS: Add an entry.
4190 * doc/lispref/display.texi: Add an entry for `inhibit-message',
4191 mention it in `message'.
4192
4193 2015-04-22 Martin Rudalics <rudalics@gmx.at>
4194
4195 Fix last fix in `display-buffer-record-window'.
4196 * lisp/window.el (display-buffer-record-window): Fix last fix.
4197
4198 2015-04-22 Eli Zaretskii <eliz@gnu.org>
4199
4200 Minor edits in CONTRIBUTE
4201 * CONTRIBUTE: Rearrange instructions about log messages.
4202 Use "Git" capitalized all over.
4203 Use 2 spaces between sentences.
4204
4205 2015-04-22 Artur Malabarba <bruce.connor.am@gmail.com>
4206
4207 * lisp/files.el (basic-save-buffer): Fix argument
4208
4209 * lisp/cus-edit.el (custom-file): Consider init-file-had-error
4210 In case `(and (null custom-file) init-file-had-error)' do the same
4211 thing we'd do if `(null user-init-file)', which is to either error out
4212 or return nil. This is in line with `custom-save-all' which would
4213 throw an error in that situation. (bug#20355)
4214
4215 * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
4216 (package-menu-hide-low-priority): New variable, see its doc.
4217 (package-archive-priorities): Update doc.
4218 (package-desc-priority): New function.
4219 (package-desc-priority-version): Use it.
4220 (package--remove-hidden): New function.
4221 (package-menu--refresh): Use it.
4222
4223 * lisp/emacs-lisp/package.el: Implement displaying obsolete packages
4224 (package-menu--hide-obsolete): New variable.
4225 (package--remove-hidden): Use it.
4226 (package-menu-hide-obsolete): New interactive function to toggle
4227 the variable.
4228 (package--quick-help-keys): Document it.
4229 (package-menu-async): Add :version tag.
4230 (package-menu-mode-map): Bind package-menu-hide-obsolete.
4231 (package-desc-status): Indicate non-installed obsolete packages as
4232 avail-obso.
4233 (package-menu-mark-install): Allow installation of avail-obso.
4234 (package-menu--status-predicate): Sort avail-obso with available.
4235
4236 2015-04-22 Alan Mackenzie <acm@muc.de>
4237
4238 On C-y, stop some text property entries being written into buffer-undo-list
4239 lisp/subr.el (remove-yank-excluded-properties): enclose the code in
4240 `with-silent-modifications'.
4241
4242 2015-04-22 Martin Rudalics <rudalics@gmx.at>
4243
4244 In display-buffer-record-window record selected window if necessary.
4245 * lisp/window.el (display-buffer-record-window): Store selected window
4246 if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
4247
4248 2015-04-22 Tassilo Horn <tsdh@gnu.org>
4249
4250 Fix reftex-citation bug
4251 * reftex-cite.el (reftex-extract-bib-entries): Fix
4252 `wrong-type-argument stringp nil' error that occurs when AUCTeX
4253 integration is enabled and there are no citations in the document
4254 so far.
4255
4256 2015-04-21 Dmitry Gutov <dgutov@yandex.ru>
4257
4258 Add or reset based on the presence of MERGE_HEAD
4259 * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
4260 `vc-git-resolve-when-done' to `after-save-hook' in either case.
4261 (vc-git-conflicted-files): Add a TODO.
4262 (vc-git-resolve-when-done): Depending on the presence of
4263 MERGE_HEAD, either update the resolved file in the index, or
4264 remove it from there. (Bug#20292)
4265
4266 2015-04-21 Glenn Morris <rgm@gnu.org>
4267
4268 * lisp/custom.el (custom-declare-group): No need to purecopy
4269 custom-current-group-alist members following recent change to set
4270 it to nil before dumping.
4271
4272 * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
4273 (Bug#20399)
4274
4275 2015-04-21 Daniel Colascione <dancol@dancol.org>
4276
4277 Unbreak no-op buffer save message
4278 * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
4279 (basic-save-buffer): Accept called-interactively as an argument instead of
4280 directly invoking called-interactively-p, which will always yield nil
4281 in that context.
4282
4283 2015-04-21 Alan Mackenzie <acm@muc.de>
4284
4285 CC Mode: Do nothing in before/after-change-functions for text property changes
4286 Fixes bug#20266.
4287 lisp/progmodes/cc-mode.el (c-basic-common-init): Make
4288 yank-handled-properties buffer local, and remove 'category from it.
4289 (c-called-from-text-property-change-p): New function.
4290 (c-before-change): Don't do anything if a call of the new function
4291 returns non-nil.
4292 (c-after-change): Don't do much if a call of the new function returns
4293 non-nil.
4294 (c-extend-after-change-region): Put changes to text property 'fontified
4295 inside c-save-buffer-state.
4296
4297 2015-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
4298
4299 Fix byte-compiler warnings about looking-back.
4300 * lisp/vc/log-view.el (log-view-end-of-defun-1):
4301 * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
4302 * lisp/textmodes/reftex-ref.el (reftex-goto-label):
4303 * lisp/textmodes/bibtex.el (bibtex-insert-kill):
4304 * lisp/progmodes/sh-script.el (sh--maybe-here-document):
4305 * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
4306 * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
4307 * lisp/org/org.el (org-insert-heading, org-sort-entries):
4308 * lisp/org/org-mouse.el (org-mouse-end-headline)
4309 (org-mouse-context-menu):
4310 * lisp/org/org-clock.el (org-clock-cancel):
4311 * lisp/man.el (Man-default-man-entry):
4312 * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
4313 (rmail-ensure-blank-line):
4314 * lisp/mail/footnote.el (Footnote-delete-footnote):
4315 * lisp/mail/emacsbug.el (report-emacs-bug):
4316 * lisp/info.el (Info-follow-reference, Info-fontify-node):
4317 * lisp/info-look.el (info-lookup-guess-custom-symbol):
4318 * lisp/help-fns.el (help-fns--key-bindings):
4319 * lisp/files.el (hack-local-variables):
4320 * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
4321 (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
4322 (viper-complete-filename-or-exit):
4323 * lisp/emulation/viper-cmd.el (viper-backward-indent):
4324 * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
4325 * lisp/emacs-lisp/elint.el (elint-get-top-forms):
4326 * lisp/cus-edit.el (custom-face-edit-value-create):
4327 * lisp/calendar/todo-mode.el (todo-set-item-priority)
4328 (todo-filter-items-1, todo-convert-legacy-files)
4329 (todo-prefix-overlays): Add explicit second arg to looking-back.
4330
4331 2015-04-20 Glenn Morris <rgm@gnu.org>
4332
4333 Avoid non-nil current-load-list at startup
4334 * src/process.c (init_process_emacs): Move Fprovide statement...
4335 (syms_of_process): ... to here.
4336
4337 * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
4338
4339 * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
4340
4341 2015-04-20 Ludovic Courtès <ludo@gnu.org>
4342
4343 * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
4344 (Bug#20330)
4345
4346 2015-04-20 Glenn Morris <rgm@gnu.org>
4347
4348 * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
4349
4350 Tweak exec-path in uninstalled case
4351 * src/callproc.c (init_callproc): If running uninstalled, do not
4352 include eventual installation libexec directory in exec-path.
4353
4354 2015-04-20 Artur Malabarba <bruce.connor.am@gmail.com>
4355
4356 * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
4357 (package-menu-filter): Accept a list of keywords.
4358 (package--all-keywords): New variable to cache known keywords.
4359 (package-all-keywords): Populate it if necessary.
4360 (package-refresh-contents): Reset it.
4361
4362 * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
4363 (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
4364 as special keywords which match agains package archive and status
4365 respectively.
4366 * etc/NEWS: Document it.
4367
4368 2015-04-20 Eli Zaretskii <eliz@gnu.org>
4369
4370 Describe and index "empty overlays".
4371 * doc/lispref/display.texi (Overlays): Improve indexing.
4372 (Managing Overlays): Describe "empty" overlays.
4373 (Overlay Properties, Finding Overlays): Add cross-reference to
4374 where empty overlays are described.
4375
4376 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
4377
4378 Spelling fixes
4379
4380 Quote 'like this' in top-level files
4381 * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
4382 Prefer to single-quote 'like this' (instead of the older style
4383 `like this').
4384 * configure.ac: Fix some space-before-tab problems that 'git commit'
4385 complained about.
4386
4387 Use bool for boolean in textprop.c, undo.c
4388 * src/textprop.c (soft, hard): Now constants instead of macros.
4389 (validate_plist): Rewrite to avoid need for boolean local.
4390 (interval_has_all_properties, interval_has_some_properties)
4391 (interval_has_some_properties_list, add_properties)
4392 (remove_properties, get_char_property_and_overlay)
4393 (Fnext_single_char_property_change)
4394 (Fprevious_single_char_property_change, add_text_properties_1)
4395 (Fremove_text_properties, Fremove_list_of_text_properties)
4396 (copy_text_properties):
4397 * src/tparam.c (tparam1):
4398 * src/undo.c (record_change, record_property_change)
4399 (syms_of_undo):
4400 Use 'true' and 'false' for booleans.
4401
4402 2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
4403
4404 Call `smerge-start-session' even when dealing with a stash conflict
4405 * lisp/vc/vc-git.el (vc-git-find-file-hook):
4406 Call `smerge-start-session' even when dealing with a stash
4407 conflict (bug#20292).
4408
4409 2015-04-19 Vibhav Pant <vibhavp@gmail.com>
4410
4411 Add option to eshell/clear to clear scrollback.
4412 * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
4413 (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
4414 scrollback contents are cleared.
4415 * etc/NEWS: Describe change.
4416 * doc/misc/eshell.texi: Add entry for `clear'.
4417
4418 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
4419
4420 * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
4421 where either will do.
4422
4423 2015-04-19 Steve Purcell <steve@sanityinc.com>
4424
4425 Assume package archive-contents are UTF8-encoded
4426 * lisp/emacs-lisp/package.el (package--read-archive-file):
4427 Set `coding-system-for-read' explicitly to 'utf-8 when reading the
4428 downloaded and cached archive-contents files, so that non-ASCII
4429 characters in package descriptions are displayed correctly in the
4430 `list-packages' menu. (Bug#20231)
4431
4432 2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
4433
4434 Abort when looking at stashed changes
4435 * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
4436 stashed changes (bug#20292).
4437
4438 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
4439
4440 Refactor low-level printing for simplicity
4441 * src/print.c (PRINTDECLARE): Remove. Move its contents into
4442 PRINTPREPARE; doable now that we assume C99. All callers changed.
4443 (PRINTCHAR): Remove, as it adds more mystery than clarity.
4444 All callers changed.
4445 (strout): Assume that caller computes length. All callers changed.
4446 (print_c_string): New function.
4447 (write_string, write_string_1): Compute length instead of asking
4448 the caller to compute it. All callers changed.
4449 (write_string): Simplify by using write_string_1.
4450 (write_string_1): Simplify by using print_c_string.
4451 (Fterpri): Compute default val more clearly.
4452 (Fprin1_to_string, print_object):
4453 Assume C99 to avoid unnecessary nesting.
4454 (print_object): Prefer print_c_string to multiple printchar, or
4455 to calling strout with -1 length. Coalesce into sprintf when
4456 this is easy.
4457
4458 2015-04-18 Paul Eggert <eggert@cs.ucla.edu>
4459
4460 Prefer "Bug#1234" in commit messages (Bug#20325)
4461 * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
4462 as this isn't useful for Git.
4463 * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
4464
4465 2015-04-18 Glenn Morris <rgm@gnu.org>
4466
4467 * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
4468 (Bug#19506)
4469
4470 2015-04-18 Tom Willemse <tom@ryuslash.org> (tiny change)
4471
4472 * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
4473 (Bug#19505)
4474
4475 2015-04-18 Glenn Morris <rgm@gnu.org>
4476
4477 * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
4478
4479 * doc/emacs/misc.texi (Sorting): Small edit.
4480 (Bug#19896)
4481
4482 * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
4483
4484 2015-04-18 Simen Heggestøyl <simenheg@gmail.com>
4485
4486 css-mode.el: Support multi-line comment filling
4487 (Bug#20256)
4488 * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
4489 comment filling.
4490 (css-adaptive-fill): New function.
4491 (css-mode): Set `adaptive-fill-function'.
4492 (scss-mode): Set `comment-continue'.
4493
4494 2015-04-18 Nicolas Petton <nicolas@petton.fr>
4495
4496 * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
4497
4498 2015-04-18 Ivan Radanov Ivanov <ivanradanov@yahoo.co.uk> (tiny change)
4499
4500 Minor improvements in Bulgarian input methods
4501 * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
4502 Replace U+042C with U+045D, as the former character is not used in
4503 the modern Bulgarian language.
4504 (Bug#20350)
4505
4506 2015-04-17 Thomas Fitzsimmons <fitzsim@fitzsim.org>
4507
4508 Improve EUDC manual
4509 * eudc.texi (LDAP Configuration): Mention simple and SASL
4510 authentication schemes. Add index items. Shorten example server
4511 name.
4512
4513 2015-04-17 Dmitry Gutov <dgutov@yandex.ru>
4514
4515 Don't show both feature and function with the same name
4516 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
4517 Don't show both feature and function with the same name.
4518
4519 (elisp--xref-identifier-location): Skip variable, if it's also a functiong
4520 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
4521 Avoid returning both the variable and the function for the same
4522 minor mode.
4523
4524 2015-04-17 Wolfgang Jenkner <wjenkner@inode.at>
4525
4526 Fix fontification of keywords clobbered by the prompt.
4527 * lisp/comint.el (comint-output-filter): Remove the uses of
4528 with-silent-modifications I introduced as part of the last change.
4529 This fixes, e.g., erratically missing highlighting when running
4530 ./configure --help; ./configure in a shell-mode buffer with
4531 compilation-shell-minor-mode turned on.
4532
4533 2015-04-17 Glenn Morris <rgm@gnu.org>
4534
4535 * admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
4536
4537 2015-04-17 Stefan Monnier <monnier@iro.umontreal.ca>
4538
4539 * lisp/indent.el (indent-region): Don't deactivate the mark
4540 (Bug#20357)
4541
4542 2015-04-17 Sam Steingold <sds@gnu.org>
4543
4544 lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
4545
4546 2015-04-16 Leo Liu <sdl.web@gmail.com>
4547
4548 * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
4549
4550 2015-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
4551
4552 * lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
4553
4554 2015-04-16 Glenn Morris <rgm@gnu.org>
4555
4556 * admin/authors.el (authors-lax-changelogs): Update for erc changes.
4557
4558 2015-04-16 Eli Zaretskii <eliz@gnu.org>
4559
4560 Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
4561 * configure.ac (LIBJPEG): Leave it empty for MinGW.
4562
4563 2015-04-16 Glenn Morris <rgm@gnu.org>
4564
4565 * lisp/replace.el (query-replace-from-to-separator): Delay initialization
4566 to avoid rogue setting after startup.
4567
4568 2015-04-16 Paul Eggert <eggert@cs.ucla.edu>
4569
4570 Pre-4.6 GCC succeeds with unknown option
4571 * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
4572 (Bug#20338)
4573
4574 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
4575
4576 '[:graph:]' now excludes whitespace, not just ' '
4577 * doc/lispref/searching.texi (Char Classes):
4578 * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
4579 sans whitespace (not sans space).
4580 * src/character.c (graphicp): Exclude all Unicode whitespace chars,
4581 not just space.
4582 * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
4583
4584 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
4585
4586 (looking-back): Make the second arg non-optional.
4587 * lisp/subr.el (substitute-key-definition-key, special-form-p)
4588 (macrop): Drop deprecated second arg to indirect-function.
4589 (looking-back): Make the second arg non-optional.
4590
4591 * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
4592 command is actually sent to the shell.
4593
4594 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
4595
4596 Port jpeg configuration to Solaris 10 with Sun C
4597 * configure.ac: Check for jpeglib 6b by trying to link it, instead
4598 of relying on cpp magic that has problems in practice. Check for
4599 both jpeglib.h and jerror.h features. Remove special case for
4600 mingw32, which should no longer be needed (and if it were needed,
4601 should now be addressable by hotwiring emacs_cv_jpeglib).
4602 (Bug#20332)
4603
4604 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
4605
4606 Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
4607 * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
4608 Move to elisp-mode.el.
4609 (lisp-mode-variables): (Re)move elisp-specific settings.
4610 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
4611 from lisp-mode-variables.
4612 (elisp--font-lock-flush-elisp-buffers): New function, moved from
4613 lisp-mode.el.
4614
4615 * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
4616 Avoid pathological slowdown at top-level in large file.
4617
4618 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
4619
4620 Standardize names of ChangeLog history files
4621 Suggested by Glenn Morris in:
4622 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
4623 * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
4624 * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
4625 * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
4626 * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
4627 * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
4628 * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
4629 Remove.
4630
4631 Split top-level entries into pre- and post-April 7
4632 This more clearly distingiushes pre-April-7 ChangeLog entries (which
4633 are for top-level files only) from post-April-7 entries (which are
4634 about files at all levels. Problem reported by Glenn Morris in:
4635 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
4636 * ChangeLog.1: Move post-April-7 entries from here ...
4637 * ChangeLog.2: ... to this new file.
4638 * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
4639
4640 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
4641
4642 Fix recent cus-start changes that added customize-rogues
4643 * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
4644 vars early.
4645 * lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
4646
4647 2015-04-15 Nicolas Petton <nicolas@petton.fr>
4648
4649 Define cl-concatenate as an alias to seq-concatenate
4650 * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
4651 code by making cl-concatenate an alias to seq-concatenate.
4652
4653 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
4654
4655 * src/lread.c (intern_1): Make sure we'd find the symbol we add
4656 (Bug#20334)
4657 * src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
4658
4659 2015-04-15 Glenn Morris <rgm@gnu.org>
4660
4661 * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
4662
4663 2015-04-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
4664
4665 Clean up gnus-uu saving code slightly
4666 * gnus-uu.el (gnus-uu-save-article): Make the
4667 save-restriction/widen calls make more sense.
4668
4669 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
4670
4671 Make [:graph:] act like [:print:] sans space
4672 In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
4673 [:graph:] so that it matches everything that [:print:] does,
4674 except for space.
4675 * doc/lispref/searching.texi (Char Classes):
4676 * etc/NEWS:
4677 * lisp/emacs-lisp/rx.el (rx):
4678 Document [:graph:] to be [:print:] sans ' '.
4679 * src/character.c, src/character.h (graphicp): New function.
4680 * src/regex.c (ISGRAPH) [emacs]: Use it.
4681 (BIT_GRAPH): New macro.
4682 (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
4683 (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
4684 Return BIT_GRAPH for RECC_GRAPH.
4685 (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
4686 and ISPRINT if BIT_PRINT.
4687
4688 2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
4689
4690 automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
4691 Don't use call-next-method in a cl-defmethod.
4692
4693 * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
4694 (eieio--class-p): Remove, provided by cl-defstruct.
4695
4696 2015-04-14 Nicolas Petton <nicolas@petton.fr>
4697
4698 Add seq-intersection and seq-difference to the seq library
4699 * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
4700 functions.
4701 * test/automated/seq-tests.el: Add tests for seq-intersection and
4702 seq-difference.
4703 * doc/lispref/sequences.texi: Add documentation for seq-intersection
4704 and seq-difference.
4705
4706 2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
4707
4708 * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
4709
4710 2015-04-14 Sam Steingold <sds@gnu.org>
4711
4712 package--ensure-init-file: widen requires save-restriction
4713
4714 2015-04-14 Eli Zaretskii <eliz@gnu.org>
4715
4716 Improve the commit-msg Git hook for unibyte environments
4717 * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
4718 in unibyte environments. (Suggested by Paul Eggert
4719 <eggert@cs.ucla.edu>.) Use a more accurate approximation to
4720 [:print:], based on UTF-8 sequences of the unprintable characters.
4721
4722 Describe problems with cursor caused by Windows Magnifier
4723 * etc/PROBLEMS: Describe the problem with cursor shape on
4724 MS-Windows due to Windows Magnifier.
4725 (Bug#20271)
4726
4727 Make [:print:] support non-ASCII characters correctly
4728 * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
4729 (BIT_PRINT): New bit mask.
4730 (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
4731 * src/character.c (printablep): New function.
4732 * src/character.h (printablep): Add prototype.
4733 * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
4734 of 'print', 'alnum', and 'alphabetic'.
4735 * doc/lispref/searching.texi (Char Classes): Document the new
4736 behavior of [:print:].
4737 * etc/NEWS: Mention the new behavior of [:print:].
4738
4739 Assign correct general-category and names to surrogates
4740 * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
4741 surrogates. This avoids assigning them the default
4742 general-category of 'Cn', i.e. unassigned codepoints.
4743 (unidata-get-name): Give surrogates synthetic names.
4744
4745 2015-04-14 Paul Eggert <eggert@cs.ucla.edu>
4746
4747 Assume C89 offsetof in xterm.c, xlwmenu.c
4748 * lwlib/xlwmenu.c (offset):
4749 * src/xterm.c (cvt_string_to_pixel_args):
4750 Use offsetof, not XtOffset.
4751
4752 2015-04-14 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
4753
4754 Assume C89 offsetof in widget.c
4755 * src/widget.c (XtOffset): Remove; no longer needed.
4756 (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
4757
4758 Fix think-o in previous patch
4759 * src/window.c (count_windows, get_leaf_windows):
4760 Don't optimize count_windows incorrectly.
4761
4762 2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
4763
4764 Avoid some int overflows in window.c
4765 * src/print.c (print_object):
4766 * src/window.c (sequence_number):
4767 * src/window.h (struct window.sequence_number):
4768 Don't assume window sequence number fits in int.
4769 * src/window.c (window_select_count):
4770 * src/window.h (struct window.use_time, window_select_count):
4771 Don't assume window use time fits in int.
4772 * src/window.c (Fsplit_window_internal):
4773 Don't assume user-supplied integer, or sum, fits in int.
4774 (Fset_window_configuration, count_windows, get_leaf_windows)
4775 (save_window_save, Fcurrent_window_configuration):
4776 Use ptrdiff_t for object counts.
4777 (Fset_window_configuration): Omit unused local 'n'.
4778 (count_windows): Simplify by writing in terms of get_leaf_windows.
4779 (get_leaf_windows): Don't store through FLAT if it's null.
4780 (extract_dimension): New static function.
4781 (set_window_margins, set_window_fringes, set_window_scroll_bars):
4782 Use it to avoid undefined behavior when converting user-supplied
4783 integer to 'int'.
4784
4785 2015-04-13 Glenn Morris <rgm@gnu.org>
4786
4787 Minor doc copyedits
4788 * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
4789 * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
4790
4791 2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
4792
4793 [Gnus] Catch the invalid-operation that idna.el will issue
4794 * lisp/gnus/gnus-art.el (gnus-use-idna):
4795 * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
4796 * lisp/gnus/message.el (message-use-idna):
4797 Catch the invalid-operation that idna.el will issue.
4798
4799 2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
4800
4801 * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
4802
4803 2015-04-13 Sam Steingold <sds@gnu.org>
4804
4805 package--ensure-init-file: widen before looking for "(package-initialize)"
4806
4807 2015-04-13 Dmitry Gutov <dgutov@yandex.ru>
4808
4809 Change diff-switches default to `-u'
4810 (Bug#20290)
4811 * doc/emacs/files.texi (Comparing Files): Document the new default
4812 value of `diff-switches'.
4813 * doc/emacs/trouble.texi (Sending Patches): Document the preference
4814 for unified diff format. Escape the plus in the suggested `-F' regexp
4815 value.
4816 * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
4817
4818 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4819
4820 (gnus-group--setup-tool-bar-update): Fix last change
4821 * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
4822 cursor-sensor-functions should be a list of functions.
4823
4824 2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
4825
4826 Use gmm-called-interactively-p in Gnus
4827 * lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
4828
4829 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4830
4831 * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
4832 (Bug#20321)
4833 * lisp/cus-start.el (read-buffer-function): Don't advertize
4834 iswitchb-read-buffer any more.
4835 (iswitchb): Don't tweak this obsolete group any more.
4836
4837 2015-04-13 Artur Malabarba <bruce.connor.am@gmail.com>
4838
4839 * lisp/emacs-lisp/package.el: Fix package--ensure-init-file
4840
4841 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
4842 Adding a string after a constructor's argument list will use
4843 that string as the constructor function docstring. If this string
4844 is absent but the struct itself was given a docstring, use that as
4845 the constructor's docstring.
4846 Fixes (bug#17284).
4847
4848 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4849
4850 Deprecate `intangible' and `point-entered' properties
4851 * lisp/emacs-lisp/cursor-sensor.el: New file.
4852 * lisp/simple.el (pre-redisplay-functions): New hook.
4853 (redisplay--pre-redisplay-functions): New function.
4854 (pre-redisplay-function): Use it.
4855 (minibuffer-avoid-prompt): Mark obsolete.
4856 (redisplay--update-region-highlight): Adapt it to work as a function on
4857 pre-redisplay-functions.
4858 * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
4859 (minibuffer-prompt-properties): Use it. Use cursor-intangible rather
4860 than point-entered to make the prompt intangible.
4861 * lisp/forms.el: Move `provide' calls to the end.
4862 (forms-mode): Don't use `run-hooks' on a local var.
4863 (forms--make-format, forms--make-format-elt-using-text-properties):
4864 Use cursor-intangible rather than `intangible'.
4865 (forms-mode): Enable cursor-intangible-mode.
4866 * lisp/isearch.el (isearch-mode): Use defvar-local.
4867 (cursor-sensor-inhibit): Declare.
4868 (isearch-mode): Set cursor-sensor-inhibit.
4869 (isearch-done): Set it back.
4870 (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
4871 (isearch-close-unnecessary-overlays): Don't bother with `intangible'
4872 any more.
4873 * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
4874 (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
4875 Add Edebug spec.
4876 (ses-goto-print, ses-print-cell, ses-adjust-print-width)
4877 (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
4878 inhibit-point-motion-hooks any more.
4879 (ses--cell-at-pos, ses--curcell): New functions, extracted from
4880 ses-set-curcell.
4881 (ses-set-curcell): Use them.
4882 (ses-print-cell, ses-setup): Use cursor-intangible instead of
4883 `intangible'. Make sure cursor-intangible isn't sticky at BOB.
4884 (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
4885 Use ses--cell-at-pos.
4886 (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
4887 extracted from ses-command-hook. Make them work with multiple windows
4888 displaying the same buffer.
4889 (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
4890 Enable cursor-intangible-mode.
4891 (ses-command-hook): Remove cell highlight and mode-line update code.
4892 (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
4893 Update for new name of text-property holding the cell name.
4894 (ses-rename-cell): Don't mess with mode-line-process.
4895 * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
4896 cursor-sensor-functions property instead of point-entered.
4897 (erc-insert-timestamp-right, erc-format-timestamp):
4898 Use cursor-intangible rather than `intangible'.
4899 (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
4900 remove-from-invisibility-spec. Enable cursor-intangible-mode and
4901 cursor-sensor-mode if needed.
4902 (erc-echo-timestamp): Adapt to calling convention of
4903 cursor-sensor-functions.
4904 (erc-insert-timestamp-right): Remove unused vars `current-window' and
4905 `indent'.
4906 * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
4907 (gnus-update-group-mark-positions): Remove unused `topic' var.
4908 (gnus-group-insert-group-line): Remove unused var `header'.
4909 (gnus-group--setup-tool-bar-update): New function.
4910 (gnus-group-insert-group-line): Use it.
4911 (gnus-group-update-eval-form): Declare local
4912 dynamically-bound variables.
4913 (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
4914 * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
4915 (gnus-group-prepare-topics, gnus-topic-update-topic)
4916 (gnus-topic-change-level, gnus-topic-catchup-articles)
4917 (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
4918 Use inhibit-read-only.
4919 (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
4920 (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
4921 * lisp/textmodes/reftex-index.el (reftex-display-index):
4922 Use cursor-intangible-mode if available.
4923 (reftex-index-post-command-hook): Check cursor-intangible.
4924 * lisp/textmodes/reftex-toc.el (reftex-toc):
4925 Use cursor-intangible-mode if available.
4926 (reftex-toc-recenter, reftex-toc-post-command-hook):
4927 Check cursor-intangible.
4928 * lisp/textmodes/sgml-mode.el: Use lexical-binding.
4929 (sgml-tag): Use cursor-sensor-functions instead of point-entered.
4930 (sgml-tags-invisible): Use with-silent-modifications and
4931 inhibit-read-only. Enable cursor-sensor-mode.
4932 (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
4933 calling convention of cursor-sensor-functions.
4934 * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
4935 (table-point-entered-cell-hook, table-point-left-cell-hook):
4936 Don't autoload.
4937 (table-cell-entered-state): Remove var.
4938 (table--put-cell-point-entered/left-property)
4939 (table--remove-cell-properties):
4940 Use cursor-sensor-functions rather than point-entered/left.
4941 (table--point-entered/left-cell-function): Merge
4942 table--point-entered-cell-function and table--point-left-cell-function
4943 and adjust to calling convention of cursor-sensor-functions.
4944
4945 Update ldef-boots.el
4946
4947 * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
4948
4949 * doc/misc/eieio.texi: Don't advertize now obsolete constructs
4950
4951 Collapse successive char deletions in the undo log
4952 * src/cmds.c (remove_excessive_undo_boundaries): New function,
4953 extracted from Fself_insert_command.
4954 (Fdelete_char, Fself_insert_command): Use it.
4955 * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
4956 * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
4957
4958 xterm and OSC 52: Add NEWS entry, and tweak the code
4959 * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
4960 top-level.
4961 (terminal-init-xterm-activate-set-selection): Set a terminal property.
4962 (xterm--set-selection): Use it instead of checking the value of
4963 `terminal-initted'. Don't use string-bytes.
4964
4965 2015-04-13 Philipp Stephani <p.stephani2@gmail.com>
4966
4967 xterm.el: Implement OSC-52 functionality for setting the X selection
4968 * lisp/term/xterm.el (xterm-max-cut-length): New var.
4969 (xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
4970 (terminal-init-xterm, xterm--version-handler): Use them.
4971
4972 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4973
4974 Remove left over code from when we used an obsolete/loaddefs.el file
4975 * lisp/subr.el (do-after-load-evaluation): Remove left over code from when
4976 we used an obsolete/loaddefs.el file.
4977
4978 * cedet/semantic/fw.el: Use declare.
4979 * cedet/semantic/fw.el (semantic-exit-on-input)
4980 (semanticdb-without-unloaded-file-searches): Use declare.
4981 (semantic-fw-add-edebug-spec): Remove.
4982
4983 (completion-lisp-mode-hook): Use completion-separator-chars
4984 * lisp/completion.el (completion-lisp-mode-hook):
4985 Use completion-separator-chars rather than local key binding.
4986
4987 * src/*.c: Set deactivate_mark buffer-locally
4988 (Bug#20260)
4989 * src/insdel.c (prepare_to_modify_buffer_1):
4990 * src/fileio.c (Finsert_file_contents): Set deactivate_mark
4991 buffer-locally.
4992
4993 2015-04-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
4994
4995 python.el: Keep symmetry on sexp navigation with parens
4996 (Bug#19954)
4997 * lisp/progmodes/python.el
4998 (python-nav--forward-sexp): Add argument skip-parens-p.
4999 (python-nav-forward-sexp, python-nav-backward-sexp)
5000 (python-nav-forward-sexp-safe)
5001 (python-nav-backward-sexp-safe): Use it.
5002 * test/automated/python-tests.el
5003 (python-nav-forward-sexp-1): Fix test.
5004
5005 2015-04-12 João Távora <joaotavora@gmail.com>
5006
5007 Don't use `setq-local' in Gnus code
5008 This might break upstream builds with older Emacsen
5009 * lisp/gnus/message.el (message-mode): Use `set' and
5010 `make-local-variable' instead of `setq-local'.
5011
5012 2015-04-12 Paul Eggert <eggert@cs.ucla.edu>
5013
5014 Update Makefile.in's .PHONY dependencies
5015 * Makefile.in (change-history-commit, master-branch-is-current)
5016 (no-ChangeLog): Now phony.
5017
5018 Remove configure's --with-mmdf option
5019 * configure.ac (MAIL_USE_MMDF): Remove.
5020 * etc/NEWS: Document this.
5021 * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
5022 (Bug#20308)
5023
5024 * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
5025 That way, 'make install' won't think it's a man page.
5026 Reported by Ashish SHUKLA in:
5027 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
5028
5029 Improve 'make change-history' prereq tests
5030 * Makefile.in (gen_origin): Fix to match what's in the master branch.
5031 (no-ChangeLog, master-branch-is-current): New rules.
5032 (change-history): Depend on them, to avoid similar future problems.
5033 Escape the local-variables string to pacify Emacs when editing
5034 Makefile.in.
5035
5036 2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
5037
5038 * test/automated/package-test.el (with-package-test): Kill Packages buffer
5039
5040 * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
5041 (package-menu--prompt-transaction-p): Prompt for "Delete" first,
5042 "Upgrade" last, and use capitalized instead of all-caps.
5043
5044 * lisp/emacs-lisp/package.el: Completely silence async operations
5045 (package--make-autoloads-and-stuff): Silence autoloads.
5046 (package--save-selected-packages): New function, silences
5047 `customize-save-variable'.
5048 (package--user-selected-p, package-install-from-buffer)
5049 (package-delete, package-install): Use it.
5050 (package-install-from-archive)
5051 (package-menu--perform-transaction): Silence.
5052 (package-menu-execute): Feedback when operation starts.
5053
5054 Use delay-mode-hooks when visiting the init-file
5055 * lisp/emacs-lisp/package.el (package--ensure-init-file):
5056 delay-mode-hooks
5057 * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
5058
5059 * lisp/files.el: Only message when saving if save-silently is nil
5060 (save-silently): New variable.
5061 (files--message): New function.
5062 (find-file-noselect, save-buffer, basic-save-buffer)
5063 (basic-save-buffer-2, save-some-buffers, not-modified)
5064 (append-to-file): Use them.
5065
5066 2015-04-12 Johan Bockgård <bojohan@gnu.org>
5067
5068 Support debug declarations in pcase macros
5069 * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
5070 (pcase-UPAT): Use it. Remove "`".
5071 (pcase--edebug-match-macro): New function.
5072 (pcase-defmacro): Support debug declarations.
5073 * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
5074 * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
5075 * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
5076
5077 pcase.el: Edebug support for `app' and vector patterns
5078 * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
5079 (pcase-UPAT): Use it. Support `app' patterns.
5080 (pcase-QPAT): Support vector patterns.
5081
5082 edebug.el: Disambiguate vector specifications
5083 * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
5084 `(vector ...)' as a vector specification, not as a sublist.
5085
5086 (gnus-summary-refer-thread): Don't clobber unread articles
5087 This fixes a bug where `A T' causes "random" articles to become marked
5088 as read.
5089 * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
5090 gnus-newsgroup-unreads remains sorted.
5091
5092 mouse-sel.el: Fix mouse-sel-get-selection-function
5093 * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
5094 Use gui--last-selected-text-primary instead of no longer existing
5095 gui-last-selected-text.
5096
5097 * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
5098
5099 * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
5100
5101 2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
5102
5103 * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
5104
5105 * lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
5106
5107 * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
5108 (byte-compile--interactive): New var.
5109 (byte-compile--message): New function.
5110 (byte-compile-log-1, byte-force-recompile)
5111 (byte-recompile-directory, byte-recompile-file)
5112 (byte-compile-file, compile-defun)
5113 (byte-compile-file-form-defmumble, byte-compile)
5114 (byte-compile-file-form-defalias, display-call-tree): Use it.
5115
5116 * lisp/files.el: Don't message when nothing happened
5117 (save-some-buffers, basic-save-buffer): Before messaging to say
5118 "nothing was saved" check if (called-interactively-p 'any).
5119
5120 2015-04-12 João Távora <joaotavora@gmail.com>
5121
5122 Summary: Improve sexp-based movement in message-mode
5123 Works by giving citations and smileys a different syntax. This helps
5124 modes like `show-paren-mode', `electric-pair-mode', and C-M-*
5125 sexp-based movement.
5126 * lisp/gnus/message.el (message--syntax-propertize): New function.
5127 (message-mode): Set syntax-related vars.
5128 (message-smileys): New variable.
5129 * test/automated/message-mode-tests.el: New file
5130
5131 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
5132
5133 Use bool for boolean in window.c
5134 * src/window.c: Omit unnecessary static function decls.
5135 (adjust_window_count, select_window, Fselect_window)
5136 (window_body_width, Fwindow_body_height, Fwindow_body_width)
5137 (set_window_hscroll, check_window_containing, Fwindow_at)
5138 (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
5139 (unshow_buffer, replace_window, recombine_windows)
5140 (add_window_to_list, candidate_window_p, next_window)
5141 (Fnext_window, Fprevious_window, window_loop, check_all_windows)
5142 (Fget_buffer_window, Fdelete_other_windows_internal)
5143 (replace_buffer_in_windows_safely, set_window_buffer)
5144 (Fset_window_buffer, Fforce_window_update)
5145 (temp_output_buffer_show, make_parent_window)
5146 (window_resize_check, window_resize_apply, Fwindow_resize_apply)
5147 (resize_frame_windows, Fsplit_window_internal)
5148 (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
5149 (Fresize_mini_window_internal, mark_window_cursors_off)
5150 (window_scroll, window_scroll_pixel_based)
5151 (window_scroll_line_based, scroll_command, Fscroll_other_window)
5152 (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
5153 (Fmove_to_window_line, Fset_window_configuration)
5154 (delete_all_child_windows, apply_window_adjustment)
5155 (set_window_fringes, set_window_scroll_bars)
5156 (Fset_window_vscroll, foreach_window, foreach_window_1)
5157 (compare_window_configurations, Fcompare_window_configurations):
5158 Prefer 'bool', 'true', and 'false' for booleans.
5159 * src/window.h (WINDOW_MODE_LINE_LINES)
5160 (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
5161
5162 2015-04-11 Artur Malabarba <bruce.connor.am@gmail.com>
5163
5164 Speed up byte-compilation and autoload generation by avoiding mode-hooks
5165 This prevents emacs-lisp-mode-hook from being run everytime an
5166 autoload file is generated, which can account for a fraction of
5167 package installation time depending on the hooks the user has
5168 configured.
5169 * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
5170 * lisp/emacs-lisp/autoload.el (autoload-find-file)
5171 (autoload-find-generated-file): Use delay-mode-hooks.
5172
5173 * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
5174 (package-menu-refresh): Respect async and do new package checking.
5175 (list-packages): Use `package-menu-refresh' instead of repeating code.
5176
5177 * lisp/emacs-lisp/package.el: Improve package-menu-quick-help
5178 (package--quick-help-keys): New variable.
5179 (package--prettify-quick-help-key): New function.
5180 (package-menu-quick-help): Use it.
5181
5182 * lisp/emacs-lisp/package.el: Fix initially wrong compat table
5183 (package--build-compatibility-table): require finder
5184
5185 * test/automated/package-test.el: Fix new test
5186
5187 * lisp/emacs-lisp/package.el: Silence async operations
5188 (package--silence): New variable.
5189 (package--message): New function.
5190 (package-import-keyring, package-refresh-contents)
5191 (package-compute-transaction, package-install, package-delete)
5192 (package-menu--perform-transaction, package-menu-execute): Use it.
5193
5194 * test/automated/package-test.el: Test async functionality
5195 (package-test-update-archives-async): New test
5196
5197 2015-04-11 Daiki Ueno <ueno@gnu.org>
5198
5199 Utilize `make-process' in epg.el
5200 * lisp/epg.el (epg-error-output): Abolish.
5201 (epg-context): New slot `error-buffer'.
5202 (epg--start): Use `make-process' and `make-pipe-process'.
5203 (epg--process-filter): Remove code separating stderr from stdout.
5204 (epg-wait-for-completion): Simplify `error-output' handling.
5205 (epg-reset): Dispose error buffer.
5206
5207 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
5208
5209 * .gitignore: Ignore doc temps and outputs.
5210
5211 Port commit-msg to MSYS Bash+Gawk
5212 See Eli Zaretskii in:
5213 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
5214 * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
5215 (cent_sign, print_at_sign, at_sign): Revert previous change.
5216 (print_at_sign): Prepend "BEGIN".
5217 (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
5218
5219 Port commit-msg to broken MS-Windows shell
5220 * build-aux/git-hooks/commit-msg (cent_sign):
5221 Just use UTF-8 here rather than ASCII + printf, as the latter fails
5222 on a broken MS-Windows shell. Reported by Eli Zaretskii in:
5223 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
5224
5225 2015-04-11 Chris Zheng <chriszheng99@gmail.com> (tiny change)
5226
5227 Support GnuTLS v3.4 and later on MS-Windows
5228 * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
5229 * lisp/term/w32-win.el (dynamic-library-alist): Determine which
5230 GnuTLS DLL to load according to value of libgnutls-version.
5231 (Bug#20294)
5232
5233 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
5234
5235 Minor quoting etc. fixes to misc manuals
5236 Fix some minor quoting and spacing issues. Distinguish more
5237 clearly among grave accent and apostrophe (which are ASCII) and
5238 single quote (which is not). Prefer the standard terms
5239 "apostrophe" and "grave accent" to alternative names that can be
5240 confusing. Use apostrophes to single-quote ASCII text.
5241 * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
5242 rather than approximating it in ASCII with grave accent.
5243
5244 2015-04-11 Daiki Ueno <ueno@gnu.org>
5245
5246 Respect more keyword args in `make-process'
5247 * process.c (Fmake_process): Respect `:sentinel' and `:filter'
5248 keywords as documented.
5249
5250 2015-04-10 Dmitry Gutov <dgutov@yandex.ru>
5251
5252 Extract ChangeLog entries when committing a directory
5253 * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
5254 * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
5255 Add a FIXME comment.
5256 (log-edit-changelog-entries): Extract from
5257 `log-edit-changelog-entries', handle FILE being a directory
5258 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
5259
5260 2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
5261
5262 Fix problems found by --enable-gcc-warnings
5263 * src/process.c (create_process, Fmake_pipe_process)
5264 (Fmake_network_process): Omit unused locals.
5265
5266 Fix commit-msg to handle scissors lines
5267 * build-aux/git-hooks/commit-msg:
5268 Ignore every line after a scissors line, such as a line generated
5269 by 'git commit -v'. Problem reported by Johan Bockgård in:
5270 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
5271
5272 port commit-msg to Gawk 3.0.4 (1999)
5273 * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
5274 (print_at_sign, at_sign): New vars. Use them to avoid problems
5275 Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS. See:
5276 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
5277
5278 Have commit-msg report commit failure
5279 * build-aux/git-hooks/commit-msg: If the commit is aborted,
5280 say so. Simplify by doing this at the end. Problem reported
5281 by Eli Zaretskii in:
5282 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
5283
5284 2015-04-10 Thomas Fitzsimmons <fitzsim@fitzsim.org>
5285
5286 Clean up LDAP Configuration section of EUDC manual
5287 * doc/misc/eudc.texi: Combine indices.
5288 (LDAP Configuration): Use command markup. Add index entries.
5289 Change formatting. Wrap long lines. Add noindent markup.
5290
5291 2015-04-10 Daiki Ueno <ueno@gnu.org>
5292
5293 Add facility to collect stderr of async subprocess
5294 * src/w32.h (register_aux_fd): New function declaration.
5295 * src/w32.c (register_aux_fd): New function.
5296 * src/process.h (struct Lisp_Process): New member stderrproc.
5297 * src/process.c (PIPECONN_P): New macro.
5298 (PIPECONN1_P): New macro.
5299 (Fdelete_process, Fprocess_status, Fset_process_buffer)
5300 (Fset_process_filter, Fset_process_sentinel, Fstop_process)
5301 (Fcontinue_process): Handle pipe process specially.
5302 (create_process): Respect p->stderrproc.
5303 (Fmake_pipe_process): New function.
5304 (Fmake_process): Add new keyword argument :stderr.
5305 (wait_reading_process_output): Specially handle a pipe process when
5306 it gets an EOF.
5307 (syms_of_process): Register Qpipe and Smake_pipe_process.
5308 * doc/lispref/processes.texi (Asynchronous Processes): Document
5309 `make-pipe-process' and `:stderr' keyword of `make-process'.
5310 * lisp/subr.el (start-process): Suggest to use `make-process' handle
5311 standard error separately.
5312 * test/automated/process-tests.el (process-test-stderr-buffer)
5313 (process-test-stderr-filter): New tests.
5314 * etc/NEWS: Mention new process type `pipe' and its usage with the
5315 `:stderr' keyword of `make-process'.
5316
5317 2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
5318
5319 Minor quoting etc. fixes to lispref manual
5320 * doc/lispref/tips.texi (Documentation Tips):
5321 Distinguish more clearly among grave accent, apostrophe,
5322 and single quote.
5323 * doc/lispref/README, doc/lispref/buffers.texi:
5324 * doc/lispref/commands.texi, doc/lispref/control.texi:
5325 * doc/lispref/customize.texi, doc/lispref/display.texi:
5326 * doc/lispref/elisp.texi, doc/lispref/files.texi:
5327 * doc/lispref/frames.texi, doc/lispref/hash.texi:
5328 * doc/lispref/help.texi, doc/lispref/internals.texi:
5329 * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
5330 * doc/lispref/markers.texi, doc/lispref/modes.texi:
5331 * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
5332 * doc/lispref/os.texi, doc/lispref/positions.texi:
5333 * doc/lispref/strings.texi, doc/lispref/syntax.texi:
5334 * doc/lispref/text.texi, doc/lispref/tips.texi:
5335 * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
5336 Use American-style double quoting in ordinary text,
5337 and quote 'like this' when single-quoting in ASCII text.
5338 Also, fix some minor spacing issues.
5339
5340 2015-04-10 Michael Albinus <michael.albinus@gmx.de>
5341
5342 Handle symlinked test directory in tramp-tests.el
5343 * test/automated/tramp-tests.el (tramp-test18-file-attributes)
5344 (tramp--test-check-files): Use `file-truename' for directories.
5345
5346 2015-04-10 Eli Zaretskii <eliz@gnu.org>
5347
5348 Fix 'recenter' when visual-line-mode is turned on
5349 * src/window.c (Frecenter): Use the same code for GUI and TTY
5350 frames alike; use vmotion only for "initial" frames. This is
5351 because vmotion doesn't support visual-line-mode. Rewrite the
5352 'iarg >= 0' case to use move_it_* functions instead of using
5353 vmotion, for the same reason. Fix the clipping of the argument
5354 value to support scroll-margin in all cases and avoid unwarranted
5355 recentering. Reported by Milan Stanojević <milanst@gmail.com> in
5356 http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
5357 which see.
5358
5359 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
5360
5361 * abbrev.el (define-abbrev-table): Refine last change.
5362
5363 cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
5364 * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
5365 use of c[ad]+r", so as to keep the "cl-" prefix on all
5366 cl-lib definitions.
5367
5368 * vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
5369
5370 * lisp/cedet/semantic: Remove some dead code
5371 * lisp/cedet/semantic/util-modes.el
5372 (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
5373 any more.
5374 * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
5375 not supported any more.
5376 (semantic-safe): Use `declare'.
5377 * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
5378 (semantic-tag-intangible-p): Remove unused functions.
5379 * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
5380 Remove unused function.
5381
5382 * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
5383 (gnus-article-hide-text, gnus-article-unhide-text)
5384 (gnus-article-unhide-text-type): Remove special handling of
5385 `intangible' since that property is not used any more.
5386 (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
5387
5388 2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
5389
5390 Use the VC root in `log-edit-listfun'
5391 * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
5392 `log-edit-listfun'.
5393
5394 2015-04-09 Jay Belanger <jay.p.belanger@gmail.com>
5395
5396 Fix description of Unix time, mention new function.
5397 * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
5398 Unix time.
5399 * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
5400 (Basic Operations on Units): Mention `calc-convert-exact-units'.
5401
5402 2015-04-09 Artur Malabarba <bruce.connor.am@gmail.com>
5403
5404 * lisp/emacs-lisp/package.el: Use mode-line-process for notification
5405
5406 2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
5407
5408 (log-edit-insert-changelog-entries): Don't add newline after the last entry
5409 * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
5410 Don't add newline after the last entry.
5411
5412 2015-04-09 Simen Heggestøyl <simenheg@gmail.com>
5413
5414 css-mode.el: Add "not" pseudo-class
5415 (Bug#20267)
5416 * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
5417 list of CSS pseudo-classes.
5418
5419 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
5420
5421 etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
5422
5423 2015-04-09 Michael Albinus <michael.albinus@gmx.de>
5424
5425 Stop messing with the EMACS env var
5426 * misc.texi (Interactive Shell): Remove description of EMACS env var.
5427
5428 2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
5429
5430 Adapt 'make change-history' to coding cookie
5431 * Makefile.in (change-history): Adjust to change of format of
5432 ChangeLog file, which now has a coding cookie before an indented
5433 copyright notice.
5434
5435 2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
5436
5437 Adapt 'make change-history' to coding cookie
5438 * Makefile.in (change-history): Adjust to change of format of
5439 ChangeLog file, which now has a coding cookie before an indented
5440 copyright notice.
5441
5442 gitlog-to-changelog coding cookie and mv -i
5443 * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
5444 for copyright notice prototype, so that we get a proper "coding:"
5445 cookie. Use 'mv -i' to avoid unconditionally overwriting an
5446 existing ChangeLog. Problems reported by Eli Zaretskii in:
5447 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
5448
5449 Merge from gnulib
5450 * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
5451 2015-04-09 gitlog-to-changelog: port to MS-Windows
5452
5453 2015-04-09 Boruch Baum <boruch_baum@gmx.com> (tiny change)
5454
5455 * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
5456 (Bug#20212)
5457
5458 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
5459
5460 Stop messing with the EMACS env var
5461 (Bug#20202)
5462 * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5463 * lisp/comint.el (comint-exec-1):
5464 * lisp/term.el (term-exec-1): Don't set EMACS envvar.
5465 * lisp/progmodes/compile.el (compilation-start): Same and bring
5466 INSIDE_EMACS's format in line with other users.
5467
5468 css-mode.el (css-smie-rules): Fix indentation after complex selectors
5469 (Bug#20282)
5470 * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
5471 inner structure of selectors.
5472
5473 2015-04-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
5474
5475 python.el: Indent docstring lines to base-indent
5476 (Bug#19595)
5477 Thanks to immerrr <immerrr@gmail.com> for reporting and providing
5478 an initial patch.
5479 * lisp/progmodes/python.el
5480 (python-indent-context): Add :inside-docstring context.
5481 (python-indent--calculate-indentation): Handle :inside-docstring.
5482 (python-indent-region): Re-indent docstrings.
5483 * test/automated/python-tests.el (python-indent-region-5)
5484 (python-indent-inside-string-2): Fix tests.
5485
5486 python.el: Increase native completion robustness
5487 (Bug#19755)
5488 Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
5489 this and providing useful ideas.
5490 * lisp/progmodes/python.el
5491 (python-shell-completion-native-output-timeout): Increase value.
5492 (python-shell-completion-native-try-output-timeout): New var.
5493 (python-shell-completion-native-try): Use it.
5494 (python-shell-completion-native-setup): New readline setup avoids
5495 polluting current context, ensures output when no-completions are
5496 available and includes output end marker.
5497 (python-shell-completion-native-get-completions): Trigger with one
5498 tab only. Call accept-process-output until output end is found or
5499 python-shell-completion-native-output-timeout is exceeded.
5500
5501 2015-04-08 Samer Masterson <samer@samertm.com>
5502
5503 * lisp/eshell: Make backslash a no-op in front of normal chars
5504 (Bug#8531)
5505 * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
5506 (eshell-parse-backslash): Return escaped character after backslash
5507 if it is special. Otherwise, if the backslash is not in a quoted
5508 string, ignore the backslash and return the character after; if
5509 the backslash is in a quoted string, return the backslash and the
5510 character after.
5511 * test/automated/eshell.el (eshell-test/escape-nonspecial)
5512 (eshell-test/escape-nonspecial-unicode)
5513 (eshell-test/escape-nonspecial-quoted)
5514 (eshell-test/escape-special-quoted): Add tests for new
5515 `eshell-parse-backslash' behavior.
5516
5517 2015-04-08 Gustav Hållberg <gustav@gmail.com> (tiny change)
5518
5519 * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
5520 after the file name.
5521 (Bug#20276)
5522
5523 2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
5524
5525 Minor quoting etc. fixes to Emacs manual
5526 * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
5527 * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
5528 * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
5529 * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
5530 * doc/emacs/indent.texi, doc/emacs/macos.texi:
5531 * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
5532 * doc/emacs/programs.texi, doc/emacs/rmail.texi:
5533 * doc/emacs/search.texi, doc/emacs/trouble.texi:
5534 * doc/emacs/vc1-xtra.texi:
5535 Use American-style double quoting in ordinary text,
5536 and quote 'like this' when single-quoting in ASCII text.
5537 Also, fix some minor spacing issues.
5538
5539 Minor quoting etc. fixes to elisp intro
5540 * doc/lispintro/emacs-lisp-intro.texi: Consistently use
5541 American-style double quoting in ordinary text. In ASCII text,
5542 consistently quote 'like this' instead of `like this', unless
5543 Emacs requires the latter.
5544
5545 2015-04-08 Dmitry Gutov <dgutov@yandex.ru>
5546
5547 * CONTRIBUTE: Mention log-edit-insert-changelog.
5548
5549 * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
5550
5551 2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
5552
5553 * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
5554
5555 2015-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
5556
5557 (eieio-copy-parents-into-subclass): Fix inheritance of initargs
5558 (Bug#20270)
5559 * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
5560 Fix inheritance of initargs.
5561
5562 2015-04-08 Artur Malabarba <bruce.connor.am@gmail.com>
5563
5564 * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
5565 while dowloading information.
5566
5567 * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
5568 (package--ensure-init-file): Check file contents before visiting.
5569 (package-initialize): Call it.
5570 (package-install-from-buffer, package-install): Don't call it.
5571
5572 2015-04-08 Eli Zaretskii <eliz@gnu.org>
5573
5574 * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
5575 (Bug#17517)
5576
5577 2015-04-08 Michael Albinus <michael.albinus@gmx.de>
5578
5579 Fix nasty scoping bug in tramp-cache.el
5580 * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
5581
5582 2015-04-08 Tassilo Horn <tsdh@gnu.org>
5583
5584 Add notice to visual commands section
5585 * doc/misc/eshell.texi (Input/Output): Add notice that some tools
5586 such as git call less with its -F option which omits pagination if
5587 the contents is less than one page long. This interferes with
5588 eshell's visual (sub-)commands.
5589
5590 2015-04-07 Dmitry Gutov <dgutov@yandex.ru>
5591
5592 ffap: Support environment variable expansion in file names
5593 (Bug#19839)
5594 * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
5595 environment variable expansion in file names.
5596
5597 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
5598
5599 Prefer double-quote to accent-grave in man pages
5600
5601 2015-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
5602
5603 (Bug#20257)
5604 * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
5605
5606 2015-04-07 Ivan Shmakov <ivan@siamics.net>
5607
5608 Update etc/PROBLEMS.
5609 * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
5610 ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
5611 'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
5612 respectively); other minor updates and tweaks. (Bug#20011)
5613
5614 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
5615
5616 Add doc strings for some Isearch state vars
5617 * lisp/misearch.el (multi-isearch-buffer-list)
5618 (multi-isearch-file-list): Add doc strings.
5619 (Bug#20232)
5620
5621 2015-04-07 Alan Mackenzie <acm@muc.de>
5622
5623 Always mark "<" and ">" in #include directives with text properties.
5624 * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
5625 matcher" with an invocation of c-make-font-lock-search-function to allow
5626 fontification when there's no trailing space on an "#include <..>" line.
5627
5628 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
5629
5630 Generate a ChangeLog file from commit logs
5631 * .gitignore: Add 'ChangeLog'.
5632 * build-aux/gitlog-to-changelog: New file, from Gnulib.
5633 * build-aux/gitlog-to-emacslog: New file.
5634 * CONTRIBUTE: Document the revised workflow.
5635 * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
5636 instead of just special cases.
5637 (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
5638 (ChangeLog, unchanged-history-files, change-history)
5639 (change-history-commit): New rules.
5640 * admin/admin.el (make-manuals-dist--1):
5641 Don't worry about doc/ChangeLog.
5642 * admin/authors.el: Add a FIXME.
5643 * admin/make-tarball.txt:
5644 * lisp/calendar/icalendar.el:
5645 * lisp/gnus/deuglify.el:
5646 * lisp/obsolete/gulp.el:
5647 * lwlib/README:
5648 Adjust to renamed ChangeLog history files.
5649 * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
5650 * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
5651 Remove obsolete discussion of merging ChangeLog files.
5652 New section "Maintaining ChangeLog history".
5653 * build-aux/git-hooks/pre-commit:
5654 Reject attempts to commit files named 'ChangeLog'.
5655 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
5656 * make-dist: Make and distribute top-level ChangeLog if there's a
5657 .git directory. Distribute the new ChangeLog history files
5658 instead of scattered ChangeLog files. Distribute the new files
5659 gitlog-to-changelog and gitlog-to-emacslog.
5660 (Bug#19113)
5661
5662 Rename ChangeLogs for gitlog-to-changelog
5663 This patch was implemented via the following shell commands:
5664 find * -name ChangeLog |
5665 sed 's,.*,git mv & &.1,
5666 s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
5667 s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
5668 s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
5669 s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
5670 s, src/ChangeLog\.1$, src/ChangeLog.13,' |
5671 sh
5672 git commit -am"[this commit message]"
5673
5674 This file records repository revisions from
5675 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
5676 commit 325bf192ae281046834884b12705d6c522871b24 (inclusive).
5677 See ChangeLog.1 for earlier changes.
5678
5679 ;; Local Variables:
5680 ;; coding: utf-8
5681 ;; End:
5682
5683 Copyright (C) 2015 Free Software Foundation, Inc.
5684
5685 This file is part of GNU Emacs.
5686
5687 GNU Emacs is free software: you can redistribute it and/or modify
5688 it under the terms of the GNU General Public License as published by
5689 the Free Software Foundation, either version 3 of the License, or
5690 (at your option) any later version.
5691
5692 GNU Emacs is distributed in the hope that it will be useful,
5693 but WITHOUT ANY WARRANTY; without even the implied warranty of
5694 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
5695 GNU General Public License for more details.
5696
5697 You should have received a copy of the GNU General Public License
5698 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.