1 2015-08-23 Xue Fuqiao <xfq.free@gmail.com>
3 * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
4 magic-fallback-mode-alist.
6 2015-08-22 Fabián Ezequiel Gallina <fgallina@gnu.org>
8 python.el: fallback completion, ffap and eldoc setup enhancements
9 Setup codes are now sent continuously so that the current frame is
10 always taken into account. This allows working within debuggers
11 and always keeping a fresh version of setup codes that will return
13 * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
14 (python-shell-send-setup-code): Send code only when
15 python-shell-setup-codes is non-nil.
16 (python-shell-completion-string-code): Cleanup trailing newline.
17 (python-shell-completion-get-completions): Always use
18 python-shell-completion-setup-code.
19 (python-ffap-setup-code): Work with any object, not only modules.
20 (python-ffap-string-code): Cleanup trailing newline.
21 (python-ffap-module-path): Always use python-ffap-setup-code.
22 (python-eldoc-string-code): Cleanup trailing newline.
23 (python-eldoc--get-doc-at-point): Always use
24 python-eldoc-setup-code. Return non-nil only if docstring is
27 python.el: Increase native completion robustness.
28 * lisp/progmodes/python.el (python-shell-completion-native-setup):
29 Make completer print real candidates and just return dummy ones to
30 avoid input modification.
31 (python-shell-completion-native-get-completions): Set
32 comint-redirect-insert-matching-regexp to non-nil and make
33 comint-redirect-finished-regexp match the last dummy candidate.
34 Use python-shell-accept-process-output to wait for the full list
37 2015-08-22 Eli Zaretskii <eliz@gnu.org>
39 Fix invocation of programs via cmdproxy.exe
40 * src/w32proc.c (sys_spawnve): Use exec-directory, not
41 invocation-directory, for finding cmdproxy.exe. When Emacs is
42 run from the source tree, look for cmdproxy.exe in the same source
45 2015-08-22 Simen Heggestøyl <simenheg@gmail.com>
47 Handle comments inside unquoted URIs in css-mode
48 * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
49 (css-syntax-propertize-function): New defconst.
50 (css--font-lock-keywords): Handle parens around unquoted URIs.
51 (css-mode): Set `syntax-propertize-function'.
53 2015-08-22 Eli Zaretskii <eliz@gnu.org>
55 Support invocation of Hunspell with multiple dictionaries
56 * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file): Support
57 lists of dictionaries of the form "DICT1,DICT2,...".
58 (ispell-hunspell-add-multi-dic): New command. (Bug#20495)
60 Minor formatting changes in ispell.el
61 * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
62 (ispell-print-if-debug, ispell-aspell-find-dictionary)
63 (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
64 (ispell-hunspell-dictionary-alist)
65 (ispell-hunspell-fill-dictionary-entry)
66 (ispell-find-hunspell-dictionaries, ispell-send-replacement)
67 (ispell-buffer-with-debug, ispell-complete-word)
68 (ispell-current-dictionary, ispell-current-personal-dictionary)
69 (ispell-accept-output, ispell-minor-mode)
70 (ispell-personal-dictionary, ispell-dictionary-alist)
71 (ispell-really-aspell, ispell-really-hunspell)
72 (ispell-encoding8-command, ispell-aspell-supports-utf8)
73 (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
74 Fix whitespace, inconsistent capitalization, and arguments in doc
77 2015-08-22 Martin Rudalics <rudalics@gmx.at>
79 In ‘adjust-window-trailing-edge’ fix bug with size-preserved windows.
80 * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
81 function refused to resize a size-preserved window.
83 2015-08-22 Eli Zaretskii <eliz@gnu.org>
85 Improve documentation of 'window-use-time'
86 * doc/lispref/windows.texi (Selecting Windows): Improve
87 documentation and indexing of 'window-use-time'.
89 2015-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
91 * lisp/progmodes/cc-*.el: Fix up commenting style
92 * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
93 * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
94 * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
95 * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
96 * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
97 * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
98 * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
99 Fix up commenting style.
101 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
103 text-quoting-style in emacs-lisp diagnostics
104 * lisp/emacs-lisp/advice.el (ad-read-advised-function)
105 (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
106 (ad-disable-advice, ad-remove-advice, ad-set-argument)
108 * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
109 (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
110 (byte-optimize-while, byte-optimize-apply):
111 * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
112 (byte-compile-log-file, byte-compile-format-warn)
113 (byte-compile-nogroup-warn, byte-compile-arglist-warn)
114 (byte-compile-cl-warn)
115 (byte-compile-warn-about-unresolved-functions)
116 (byte-compile-file, byte-compile-fix-header)
117 (byte-compile--declare-var, byte-compile-file-form-defmumble)
118 (byte-compile-form, byte-compile-normal-call)
119 (byte-compile-variable-ref, byte-compile-variable-set)
120 (byte-compile-subr-wrong-args, byte-compile-setq-default)
121 (byte-compile-negation-optimizer)
122 (byte-compile-condition-case--old)
123 (byte-compile-condition-case--new, byte-compile-save-excursion)
124 (byte-compile-defvar, byte-compile-autoload)
125 (byte-compile-lambda-form)
126 (byte-compile-make-variable-buffer-local, display-call-tree)
127 (batch-byte-compile):
128 * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
129 (cconv-analyze-form):
130 * lisp/emacs-lisp/chart.el (chart-space-usage):
131 * lisp/emacs-lisp/check-declare.el (check-declare-scan)
132 (check-declare-warn, check-declare-file)
133 (check-declare-directory):
134 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
135 (checkdoc-message-text-engine):
136 * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
137 * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
138 (cl-symbol-macrolet):
139 * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
140 * lisp/emacs-lisp/copyright.el (copyright)
141 (copyright-update-directory):
142 * lisp/emacs-lisp/edebug.el (edebug-read-list):
143 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
144 * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
145 (eieio-oref, eieio-oset-default):
146 * lisp/emacs-lisp/eieio-speedbar.el:
147 (eieio-speedbar-child-make-tag-lines)
148 (eieio-speedbar-child-description):
149 * lisp/emacs-lisp/eieio.el (defclass, change-class):
150 * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
151 (elint-init-form, elint-check-defalias-form)
152 (elint-check-let-form):
153 * lisp/emacs-lisp/ert.el (ert-get-test):
154 * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
155 (find-function-library):
156 * lisp/emacs-lisp/generator.el (iter-yield):
157 * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
158 * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
159 * lisp/emacs-lisp/package-x.el (package-upload-file):
160 * lisp/emacs-lisp/package.el (package-version-join)
161 (package-disabled-p, package-activate-1, package-activate)
162 (package--download-one-archive)
163 (package--download-and-read-archives)
164 (package-compute-transaction, package-install-from-archive)
165 (package-install, package-install-selected-packages)
166 (package-delete, package-autoremove)
167 (package-install-button-action, package-delete-button-action)
168 (package-menu-hide-package, package-menu--list-to-prompt)
169 (package-menu--perform-transaction)
170 (package-menu--find-and-notify-upgrades):
171 * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
172 * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
173 * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
174 * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
175 * lisp/emacs-lisp/smie.el (smie-config-save):
176 * lisp/emacs-lisp/subr-x.el (internal--check-binding):
177 * lisp/emacs-lisp/testcover.el (testcover-1value):
178 Use curved quotes in diagnostic format strings.
180 2015-08-21 Fabián Ezequiel Gallina <fgallina@gnu.org>
182 python.el: Ensure remote process-environment on non-interactive processes
183 * lisp/progmodes/python.el
184 (python-shell-tramp-refresh-process-environment): New function.
185 (python-shell-with-environment): Use it.
186 * test/automated/python-tests.el (python-shell-with-environment-2): Update.
188 python.el: Enhancements to process environment setup.
189 * lisp/progmodes/python.el (python-shell-process-environment)
190 (python-shell-extra-pythonpaths, python-shell-exec-path)
191 (python-shell-virtualenv-root): Update docstring. Remove :safe.
192 (python-shell-setup-codes): Remove :safe.
193 (python-shell-remote-exec-path): New defcustom.
194 (python-shell--add-to-path-with-priority): New macro.
195 (python-shell-calculate-pythonpath): Give priority to
196 python-shell-extra-pythonpaths. Update docstring.
197 (python-shell-calculate-process-environment): Give priority to
198 python-shell-process-environment. Update docstring.
199 (python-shell-calculate-exec-path): Give priority to
200 python-shell-exec-path and calculated virtualenv bin directory.
202 (python-shell-tramp-refresh-remote-path): New function.
203 (python-shell-with-environment): Use it when working remotely and
204 do not modify tramp-remote-path. Allow nesting.
205 (python-shell-calculate-command): Remove useless
206 python-shell-with-environment call.
207 * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
208 (python-shell-calculate-pythonpath-2)
209 (python-shell-calculate-process-environment-6)
210 (python-shell-calculate-process-environment-7)
211 (python-shell-calculate-process-environment-8)
212 (python-shell-calculate-exec-path-3)
213 (python-shell-calculate-exec-path-4)
214 (python-shell-calculate-exec-path-5)
215 (python-shell-calculate-exec-path-6)
216 (python-shell-with-environment-3): New tests.
217 (python-shell-calculate-process-environment-2)
218 (python-shell-calculate-process-environment-3)
219 (python-shell-calculate-process-environment-4)
220 (python-shell-calculate-process-environment-5)
221 (python-shell-calculate-exec-path-1)
222 (python-shell-calculate-exec-path-2)
223 (python-shell-with-environment-1)
224 (python-shell-with-environment-2): Update and simplify.
226 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
228 Avoid hard-coding "M-x command" in docstrings
229 * lisp/calendar/todo-mode.el (todo-mode):
230 * lisp/desktop.el (desktop-save-mode):
231 * lisp/edmacro.el (edit-kbd-macro):
232 * lisp/emacs-lisp/package.el (package-menu-execute):
233 * lisp/emulation/viper-cmd.el (viper-ask-level):
234 * lisp/emulation/viper-init.el (viper-expert-level):
235 * lisp/filesets.el (filesets-add-buffer):
236 * lisp/follow.el (follow-mode):
237 * lisp/gnus/auth-source.el (auth-sources):
238 * lisp/international/ogonek.el (ogonek-informacja)
239 (ogonek-information):
240 * lisp/net/tramp.el (tramp-process-actions):
241 * lisp/org/org-gnus.el (org-gnus-no-new-news):
242 * lisp/org/org.el (org-ellipsis):
243 * lisp/progmodes/python.el (python-shell-get-process-or-error):
244 * lisp/progmodes/vhdl-mode.el (vhdl-mode):
245 * lisp/server.el (server-start):
246 * lisp/type-break.el (type-break-noninteractive-query):
247 * lisp/userlock.el (ask-user-about-supersession-help):
248 * lisp/whitespace.el (whitespace-report-region):
249 Prefer (substitute-command-keys "`\\[foo-command]'")
250 to "`M-x foo-command'" in docstrings and the like.
252 2015-08-21 Tassilo Horn <tsdh@gnu.org>
254 Use add-function for prettify-symbols-compose-predicate
255 * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
256 prettify-symbols-compose-predicate in terms of add-function.
257 * etc/NEWS: Mention prettify-symbols-compose-predicate and
258 prettify-symbols-mode support in tex-mode.
260 2015-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
262 * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun
263 (smie-indent-exps, smie-indent-keyword): Use it.
264 * test/indent/css-mode.css: Test alignment with leading comment.
266 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
268 Respect text-quoting-style in (*Finder*) menus
269 * lisp/info.el (info--prettify-description):
270 Treat description as a docstring, so that it's requoted as
271 per text-quoting-style.
273 2015-08-21 Martin Rudalics <rudalics@gmx.at>
275 Document `window-use-time' in Elisp manual
276 * doc/lispref/windows.texi (Selecting Windows): Document `window-use-time'.
278 2015-08-21 Eli Zaretskii <eliz@gnu.org>
280 A better fix for bug#21303
281 * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600. This is a
282 cleaner fix for Bug#21260 than the previous change.
284 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
286 Respect text-quoting-style in calc
287 In calc, tespect text-quoting-style preference in diagnostic
288 formats and fix a few similar problems in docstrings.
289 * lisp/calc/calc-aent.el (math-read-factor):
290 * lisp/calc/calc-embed.el (calc-do-embedded):
291 * lisp/calc/calc-ext.el (calc-user-function-list)
292 * lisp/calc/calc-graph.el (calc-graph-show-dumb):
293 * lisp/calc/calc-help.el (calc-describe-key)
294 (calc-describe-thing):
295 * lisp/calc/calc-lang.el (calc-c-language)
296 (math-parse-fortran-vector-end, math-parse-tex-sum)
297 (math-parse-eqn-matrix, math-parse-eqn-prime)
298 (calc-yacas-language, calc-maxima-language, calc-giac-language)
299 (math-read-big-rec, math-read-big-balance):
300 * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
301 (calc-auto-recompute):
302 * lisp/calc/calc-prog.el (calc-user-define-invocation)
304 * lisp/calc/calc-store.el (calc-edit-variable):
305 * lisp/calc/calc-units.el (math-build-units-table-buffer):
306 * lisp/calc/calc-vec.el (math-read-brackets):
307 * lisp/calc/calc-yank.el (calc-edit-mode):
308 * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
309 Use curved quotes in diagnostic format strings.
310 * lisp/calc/calc-help.el (calc-describe-thing):
311 Format docstrings with substitute-command-keys.
312 * lisp/calc/calc-help.el (calc-j-prefix-help):
313 * lisp/calc/calc-misc.el (calc-help):
314 * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
315 Escape a docstring "`".
317 2015-08-21 Eli Zaretskii <eliz@gnu.org>
319 Fix documentation of 'menu-set-font' and 'set-frame-font'
320 * lisp/menu-bar.el (menu-set-font): Doc fix. (Bug#21303)
321 * doc/lispref/frames.texi (Frame Font): Document that
322 set-frame-font with the last argument 't' will also make the font
323 the default for the future GUI frames.
325 Document '--create-frame' option to emacsclient
326 * doc/emacs/misc.texi (emacsclient Options): Document the
327 '--create-frame' option. (Bug#21308)
329 2015-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
331 * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
333 2015-08-21 Eli Zaretskii <eliz@gnu.org>
335 Document 'get-mru-window' in the ELisp manual
336 * doc/lispref/windows.texi (Cyclic Window Ordering): Document
337 'get-mru-window'. (Bug#21306)
339 Clarify documentation of 'get-buffer-window-list'
340 * doc/lispref/windows.texi (Buffers and Windows): Mention that the
341 current window, if relevant, will be the first in the list
342 returned by 'get-buffer-window-list'.
343 * lisp/window.el (get-buffer-window-list): Doc fix. (Bug#21305)
345 2015-08-21 Vasilij Schneidermann <v.schneidermann@gmail.com>
347 In `ielm' use `pop-to-buffer-same-window' instead of `switch-to-buffer'
348 * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
351 2015-08-21 Kaushal <kaushal.modi@gmail.com> (tiny change)
353 In woman.el use `display-buffer' instead of `switch-to-buffer'
354 * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
355 `display-buffer' instead of `switch-to-buffer'.
357 2015-08-21 Paul Eggert <eggert@cs.ucla.edu>
359 Follow user preference in calendar diagnostics
360 Respect text-quoting-style preference in diagnostic formats by
361 using curved quotes (which are translated as per text-quoting-style)
362 instead of grave accent and apostrophe (which are not).
363 * lisp/calendar/appt.el (appt-display-message):
364 * lisp/calendar/diary-lib.el (diary-check-diary-file)
365 (diary-mail-entries, diary-from-outlook):
366 * lisp/calendar/icalendar.el (icalendar-export-region)
367 (icalendar--convert-float-to-ical)
368 (icalendar--convert-date-to-ical)
369 (icalendar--convert-ical-to-diary)
370 (icalendar--convert-recurring-to-diary)
371 (icalendar--add-diary-entry):
372 * lisp/calendar/time-date.el (format-seconds):
373 * lisp/calendar/timeclock.el (timeclock-mode-line-display)
374 (timeclock-make-hours-explicit):
375 * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
376 (todo-item-mark, todo-check-format)
377 (todo-insert-item--next-param, todo-edit-item--next-key)
379 Use curved quotes in diagnostic format strings.
380 * lisp/calendar/icalendar.el (icalendar-import-format-sample):
381 * test/automated/icalendar-tests.el (icalendar--import-format-sample):
382 Just use straight quoting for simple test case.
384 2015-08-21 Michael Albinus <michael.albinus@gmx.de>
386 * src/gfilenotify.c (Fgfile_add_watch):
387 Handle errors from g_file_monitor.
389 2015-08-21 Martin Rudalics <rudalics@gmx.at>
391 In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
392 * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
393 frame" instead of "non-minibuffer frame".
395 Fix frame geometry related text
396 * doc/lispref/frames.texi (Frame Layout): Rename
397 `x-frame-geometry' to `frame-geometry'.
398 * doc/lispref/frames.texi (Mouse Position):
399 * doc/lispref/windows.texi (Coordinates and Windows): Use
400 `set-mouse-absolute-pixel-position' instead of
401 `x-set-mouse-absolute-pixel-position'.
403 Sanitize frame geometry related functions
404 * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
405 (Fx_frame_edges): Rename to Fns_frame_edges.
406 * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
407 (Fx_frame_edges): Rename to Fw32_frame_edges.
408 (Fx_mouse_absolute_pixel_position): Rename to
409 Fw32_mouse_absolute_pixel_position.
410 (Fx_set_mouse_absolute_pixel_position): Rename to
411 Fw32_set_mouse_absolute_pixel_position.
412 * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
413 (ns-frame-geometry, x-frame-edges, w32-frame-edges)
414 (ns-frame-edges, w32-mouse-absolute-pixel-position)
415 (x-mouse-absolute-pixel-position)
416 (w32-set-mouse-absolute-pixel-position)
417 (x-set-mouse-absolute-pixel-position): Declare.
418 (frame-geometry, mouse-absolute-pixel-position)
419 (set-mouse-absolute-pixel-position): New functions.
420 (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
422 2015-08-21 Eli Zaretskii <eliz@gnu.org>
424 Fix MinGW64 build broken by latest w32uniscribe.c changes
425 * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
426 MinGW64. Reported by Andy Moreton <andrewjmoreton@gmail.com>.
429 2015-08-21 Tassilo Horn <tsdh@gnu.org>
431 Add TeX defaults for prettify-symbol-mode
432 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Rename
433 from tex-prettify-symbols-alist.
434 (tex--prettify-symbols-compose-p): New function.
435 (tex-common-initialization): Use them as prettify-symbols-alist
436 and prettify-symbols-compose-predicate.
438 Generalize prettify-symbols to arbitrary modes
439 * lisp/progmodes/prog-mode.el
440 (prettify-symbols-default-compose-p): New function.
441 (prettify-symbols-compose-predicate): New variable.
442 (prettify-symbols--compose-symbol): Use it.
444 2015-08-20 Paul Eggert <eggert@cs.ucla.edu>
446 Don't quote symbols 'like-this' in docstrings etc.
447 * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
448 * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
449 * lisp/allout.el (allout-add-resumptions, allout-mode):
450 * lisp/calculator.el (calculator-operators):
451 * lisp/cedet/data-debug.el (dd-propertize):
452 * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
453 * lisp/cedet/semantic/analyze/debug.el:
454 (semantic-analyzer-debug-global-miss-text):
455 * lisp/cedet/semantic/lex-spp.el:
456 (semantic-lex-spp-replace-or-symbol-or-keyword):
457 * lisp/cedet/semantic/symref.el:
458 (semantic-symref-cleanup-recent-buffers-fcn):
459 * lisp/cedet/semantic/tag.el (semantic-tag-class):
460 * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
461 * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
462 * lisp/gnus/pop3.el (pop3-authentication-scheme):
463 * lisp/help-fns.el (describe-function-orig-buffer):
464 * lisp/imenu.el (imenu--history-list):
465 * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
466 (feedmail-display-full-frame, feedmail-deduce-bcc-where)
467 (feedmail-queue-default-file-slug)
468 (feedmail-queue-buffer-file-name):
469 * lisp/net/mairix.el (mairix-searches-mode-map):
470 * lisp/net/newst-backend.el (newsticker-retrieval-method)
471 (newsticker-auto-mark-filter-list):
472 * lisp/obsolete/vi.el (vi-mode):
473 * lisp/progmodes/cc-engine.el (c-literal-type):
474 * lisp/progmodes/cpp.el (cpp-face):
475 * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
476 * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
477 * lisp/progmodes/pascal.el (pascal-auto-lineup):
478 * lisp/progmodes/prog-mode.el (prog-widen):
479 * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
480 (verilog-auto-lineup, verilog-auto-reset-widths)
481 (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
482 * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
483 (flyspell-maybe-correct-doubling):
484 * lisp/textmodes/table.el (table-justify, table-justify-cell)
485 (table-justify-row, table-justify-column, table-insert-sequence)
486 (table--justify-cell-contents):
487 * lisp/url/url-auth.el (url-get-authentication):
488 * lisp/window.el (display-buffer-record-window):
489 * lisp/xml.el (xml-parse-file, xml-parse-region):
490 * src/gfilenotify.c (Fgfile_add_watch):
491 Don't quote symbols with apostrophes in doc strings.
492 Use asymmetric quotes instead.
493 * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
494 Likewise for symbol in diagnostic.
495 * lisp/image.el (image-extension-data):
496 * lisp/register.el (frame-configuration-to-register):
497 * src/buffer.c (syms_of_buffer):
498 Remove bogus apostrophes after symbols.
499 * lisp/thumbs.el (thumbs-conversion-program):
500 Quote Lisp string values using double-quotes, not apostrophes.
502 2015-08-20 Martin Rudalics <rudalics@gmx.at>
504 Describe frame geometry and related functions in Elisp manual
505 * doc/lispref/display.texi (Size of Displayed Text, Line Height)
506 (Showing Images): Update references.
507 * doc/lispref/elisp.texi (Top): Update node listing.
508 * doc/lispref/frames.texi (Frame Geometry): New node. Move
509 `Size and Position' section here.
510 (Size Parameters): Update references.
511 (Mouse Position): Update references and nomenclature. Describe
512 new functions `x-mouse-absolute-pixel-position' and
513 `x-set-mouse-absolute-pixel-position'.
514 * doc/lispref/windows.texi (Window Sizes): Update references.
515 (Resizing Windows): Update references. Move description of
516 `fit-frame-to-buffer' here.
517 (Coordinates and Windows): Update nomenclature and references.
518 Describe new arguments of `window-edges'. Comment out
519 descriptions of `window-left-column', `window-top-line',
520 `window-pixel-left' and `window-pixel-top'. Describe
521 `window-absolute-pixel-position'.
523 2015-08-20 Alan Mackenzie <acm@muc.de>
525 Handling of `c-parse-state'. Fix low level bug.
526 progmodes/cc-engine.el (c-remove-stale-state-cache-backwards): Add
527 "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
529 2015-08-20 Andreas Politz <politza@hochschule-trier.de>
531 In `widget-color--choose-action' quit *Color* window instead of deleting it
532 * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
533 window instead of deleting it.
535 2015-08-20 Martin Rudalics <rudalics@gmx.at>
537 In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
538 * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
539 determine whether frame has a titlebar.
540 Suggested by Eli Zaretskii <eliz@gnu.org>
542 2015-08-20 Tassilo Horn <tsdh@gnu.org>
544 Add a prettify-symbols-alist for (La)TeX
545 * tex-mode.el (tex-prettify-symbols-alist): New variable holding
546 an alist suitable as prettify-symbols-alist in (La)TeX modes.
548 2015-08-19 Alan Mackenzie <acm@muc.de>
550 Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
552 In Emacs >= 25, let electric-pair-mode take precedence over
553 delete-selection-mode.
554 delsel.el (delete-selection-uses-region-p): New function, previously a
555 lambda expression in a property value for `self-insert-command'.
556 (top-level) Set the `delete-selection' property of `self-insert-command'
557 to `delete-selection-uses-region-p'.
558 progmodes/cc-cmds.el (top-level): Give the `delete-selection' property
559 for c-electric-\(brace\|paren\) the value `delete-selection-uses-region-p'
560 when the latter function exists.
562 2015-08-19 Paul Eggert <eggert@cs.ucla.edu>
564 Fix key binding quoting in tutorial *Help*
565 * lisp/tutorial.el (tutorial--describe-nonstandard-key):
566 When generating help for custom key bindings, use the user-preferred
567 quoting style rather than hardcoding the grave style.
569 2015-08-19 Eli Zaretskii <eliz@gnu.org>
571 Improve and future-proof OTF fonts support in w32uniscribe.c
572 * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
573 about the expected results and why the new Uniscribe APIs are not
574 used in this function.
575 (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
576 (ScriptGetFontFeatureTags_Proc): New function typedefs.
577 (uniscribe_new_apis): New static variable.
578 (uniscribe_check_features): New function, implements OTF features
579 verification while correctly accounting for features in the list
580 after the nil member, if any.
581 (uniscribe_check_otf_1): New function, retrieves the features
582 supported by the font for the requested script and language using
583 the Uniscribe APIs available from Windows Vista onwards.
584 (uniscribe_check_otf): If the new Uniscribe APIs are available,
585 use them in preference to reading the font data directly. Call
586 uniscribe_check_features to verify that the requested features are
587 supported, replacing the original incomplete code.
588 (syms_of_w32uniscribe): Initialize function pointers for the new
589 Uniscribe APIs. (Bug#21260)
590 (otf_features): Scan the script, langsys, and feature arrays back
591 to front, so that the result we return has them in alphabetical
592 order, like ftfont.c does.
593 * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
594 New variable for debugging w32uniscribe.c code.
596 2015-08-19 Artur Malabarba <bruce.connor.am@gmail.com>
598 * isearch.el (isearch-search-fun-default): Revert a5bdb87
599 Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
600 clause of `isearch-search-fun-default'. That lax variable does not
601 refer to lax-whitespacing. Related to (bug#21777).
602 This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
603 * character-fold.el (character-fold-search): Set to nil
604 Default to nil for now, until someone implements proper
605 lax-whitespacing with char-fold searching.
607 2015-08-19 Martin Rudalics <rudalics@gmx.at>
609 Fix doc-string of `help-mode-finish'.
610 * lisp/help-mode.el (help-mode-finish): Fix doc-string.
612 In nsimage.m include coding.h (Bug#21292)
613 * src/nsimage.m (top-level): Include coding.h (Bug#21292).
615 Move window edge functions to Elisp.
616 * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
617 (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
618 (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
620 (calc_absolute_offset): Remove.
621 * lisp/frame.el (frame-edges): New function.
622 * lisp/window.el (window-edges, window-pixel-edges)
623 (window-absolute-pixel-edges): Move here from window.c.
624 (window-body-edges, window-body-pixel-edges)
625 (window-absolute-body-pixel-edges): Move here from window.c and
626 rename "inside" to "body". Keep old names as aliases.
627 (window-absolute-pixel-position): New function.
629 2015-08-19 Katsumi Yamaoka <yamaoka@jpl.org>
631 [Gnus]: Use overlay functions directly
632 * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
633 (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
634 (gnus-article-highlight-signature, gnus-article-extend-url-button)
635 (gnus-article-add-button, gnus-insert-prev-page-button)
636 (gnus-insert-next-page-button, gnus-insert-mime-security-button):
637 * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
638 (gnus-cite-add-face):
639 * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
640 * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
641 (gnus-tree-recenter, gnus-highlight-selected-tree):
642 * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
643 (gnus-summary-show-thread, gnus-summary-hide-thread)
644 (gnus-highlight-selected-summary):
645 * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
646 * lisp/gnus/message.el (message-fix-before-sending)
647 (message-toggle-image-thumbnails):
648 * lisp/gnus/mm-decode.el (mm-convert-shr-links):
649 * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
650 Use overlay functions directly instead of using gnus-overlay-*,
651 message-overlay-*, and sieve-overlay-*.
652 * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
653 * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
654 (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
655 (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
656 (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
657 * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
658 (message-overlay-get, message-overlay-put, message-overlays-in):
659 * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
663 2015-08-19 Martin Rudalics <rudalics@gmx.at>
665 In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version.
666 * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
667 builds can use the declaration from the system headers.
668 (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
669 definition of TITLEBAR_INFO.
670 Suggested by Eli Zaretskii <eliz@gnu.org>
672 2015-08-19 Glenn Morris <rgm@gnu.org>
674 * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
676 2015-08-19 Paul Eggert <eggert@cs.ucla.edu>
678 Use new q ‘format’ flag when fixing quotes in C
679 * src/image.c (image_size_error): New function. All uses of
680 image_error with "Invalid image size ..." changed to use it.
681 * src/image.c (image_size_error, xbm_load_image, xbm_load)
682 (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
683 (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
684 (imagemagick_load, svg_load, svg_load_image, gs_load)
686 * src/lread.c (load_warn_old_style_backquotes):
687 * src/xfaces.c (load_pixmap):
688 * src/xselect.c (x_clipboard_manager_error_1):
689 Use %qs, not uLSQM and uRSQM.
690 * src/syntax.c (Finternal_describe_syntax_value):
691 Prefer Fsubstitute_command_keys to Fformat, as this lets
693 * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
694 as it's now guaranteed to be ASCII.
695 * src/xselect.c (x_clipboard_manager_error_2):
696 Avoid grave accent in low-level stderr diagnostic.
698 2015-08-19 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
700 New q flag for ‘format’
701 * doc/lispref/processes.texi (Sentinels):
702 Don't hardwire grave quoting style in example.
703 * doc/lispref/strings.texi (Formatting Strings):
706 * src/editfns.c (Fformat): Implement it.
708 2015-08-18 Daiki Ueno <ueno@gnu.org>
710 pinentry.el: Add debugging support
711 * lisp/net/pinentry.el (pinentry-debug): New variable.
712 (pinentry-debug-buffer): New variable.
713 (pinentry--process-filter): Send input to the debug buffer, if
714 `pinentry-debug' is set.
716 pinentry.el: Improve multiline prompt
717 * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
718 (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
721 2015-08-18 Paul Eggert <eggert@cs.ucla.edu>
723 Fix multibyte confusion in diagnostics
724 * src/print.c (print_error_message):
725 Don't assume that the caller's name is unibyte.
726 * src/xdisp.c (vadd_to_log):
727 Don't assume that the formatted diagnostic is unibyte.
729 Fix file name encodings in diagnostics
730 Also, close some minor races when opening image files, by opening
731 them once instead of multiple times.
732 * src/gtkutil.c (xg_get_image_for_pixmap):
733 * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
735 * src/nsimage.m (allocInitFromFile:):
736 * src/xfns.c (xg_set_icon):
737 Encode file name, since x_find_image_file no longer does that.
738 * src/image.c (x_find_image_fd): New function.
739 (x_find_image_file): Use it. Do not encode resulting file name,
740 since callers sometimes need it decoded.
741 (slurp_file): File arg is now a fd, not a file name.
742 All callers changed. This saves us having to open the file twice.
743 (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
745 Use x_find_image_fd and fdopen to save a file-open.
746 Report file name that failed.
747 * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
749 2015-08-18 Dmitry Gutov <dgutov@yandex.ru>
751 Allow blink-matching-paren to jump off screen
752 * doc/emacs/programs.texi (Matching): Mention the
753 `blink-matching-paren' value `jump-offscreen'.
754 * lisp/simple.el (blink-matching-paren): New possible value.
755 (blink-matching-paren-on-screen): Clarify the docstring.
756 (blink-matching-open): Handle `jump-offscreen' (bug#21286).
758 Refine the previous change
759 * lisp/simple.el (blink-matching-open): Use minibuffer-message
760 outside of save-excursion (bug#21286).
762 2015-08-18 Martin Rudalics <rudalics@gmx.at>
764 Rewrite and add frame geometry related functions.
765 * src/frame.c (Fframe_position): New function.
766 (Fset_frame_position): Rename parameters and rewrite doc-string.
767 (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
768 Qtitle_height and Qframe_inner_size. Add Qouter_edges,
769 Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
771 * src/nsfns.m (frame_geometry): New function.
772 (Fx_frame_geometry): Call frame_geometry.
773 (Fx_frame_edges): New function.
774 * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
775 (GetTitleBarInfo_Proc): Define these so we can use the
777 (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
778 (Fx_frame_geometry): Rewrite.
779 (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
780 (Fx_set_mouse_absolute_pixel_position): New functions.
781 * src/xfns.c (frame_geometry): New function.
782 (Fx_frame_geometry): Call frame_geometry.
783 (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
784 (Fx_set_mouse_absolute_pixel_position): New functions.
786 2015-08-18 Michael Albinus <michael.albinus@gmx.de>
788 Improve Tramp's compatibility
789 * lisp/net/tramp.el (tramp-get-method-parameter):
790 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
791 (tramp-adb-get-device):
792 * lisp/net/trampver.el (tramp-repository-get-version):
793 Use `tramp-compat-replace-regexp-in-string'.
795 2015-08-18 Pierre Téchoueyres <pierre.techoueyres@free.fr> (tiny change)
797 * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
798 Encode/decode string.
800 2015-08-18 Paul Eggert <eggert@cs.ucla.edu>
802 Clarify what happens to match data on failure
803 Problem reported by Ernesto Alfonso (Bug#21279).
804 * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
805 Document more carefully what happens to match data after a failed
807 * src/search.c (Fmatch_beginning, Fmatch_end): Document that
808 the return value is undefined if the last search failed.
809 (Fmatch_data): Simplify doc string line 1.
811 2015-08-18 Daiki Ueno <ueno@gnu.org>
813 Revert "pinentry.el: Support external passphrase cache"
814 This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
815 pinentry.el shouldn't directly interact with the secrets service,
816 but ask the caller to cache the passphrase.
818 2015-08-17 Xue Fuqiao <xfq.free@gmail.com>
820 * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
823 2015-08-17 Daiki Ueno <ueno@gnu.org>
825 epg.el: Make gpgconf output parsing future proof
826 * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
827 --list-options" output.
829 pinentry.el: Support external passphrase cache
830 * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
831 (pinentry--allow-external-password-cache): New local variable.
832 (pinentry--key-info): New local variable.
833 (secrets-enabled, secrets-search-items, secrets-get-secret):
835 (pinentry--send-passphrase): New function, split from
836 `pinentry--process-filter'.
837 (pinentry--process-filter): Use secrets.el to retrieve passphrase
840 pinentry.el: Popup window for multiline prompt
841 * lisp/net/pinentry.el (pinentry): New custom group.
842 (pinentry-popup-prompt-window): New user option.
843 (pinentry-prompt-window-height): New user option.
844 (pinentry--prompt-buffer): New variable.
845 (pinentry-prompt-mode-map): New variable.
846 (pinentry-prompt-mode): New function.
847 (pinentry--prompt): New function.
848 (pinentry--process-filter): Use `pinentry--prompt' instead of
849 `read-passwd' and `y-or-n-p'.
851 2015-08-17 Katsumi Yamaoka <yamaoka@jpl.org>
853 message.el: Silent the byte compiler
854 * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
855 (message-kill-all-overlays, message-overlays-in, message-overlay-get)
856 (message-delete-overlay, message-window-inside-pixel-edges):
857 Declare before using.
859 * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
860 (message-window-inside-pixel-edges): XEmacs compatible functions.
862 2015-08-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
864 * message.el (message-toggle-image-thumbnails): New command.
866 2015-08-17 Noah Friedman <friedman@splode.com>
868 (blink-matching-open): Restore point before calling minibuffer-message.
870 2015-08-17 Ronnie Schnell <ronnie@driver-aces.com>
872 Update version number in header (now matches help)
874 2015-08-17 Paul Eggert <eggert@cs.ucla.edu>
876 Curved quotes in --batch diagnostics in non-UTF-8
877 When run with --batch, check that curved quotes are compatible with
878 the system locale before outputting them in diagnostics.
879 Problem reported by Eli Zaretskii in:
880 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
881 * lisp/startup.el (command-line): Set internal--text-quoting-flag
882 after the standard display table is initialized.
883 * src/doc.c (default_to_grave_quoting_style): New function.
884 (text_quoting_style): Use it.
885 (text_quoting_flag): New static var, visible to Lisp as
886 internal--text-quoting-flag.
887 * src/emacs.c: Include <wchar.h> if available.
888 (using_utf8): New function.
889 (main): Use it to initialize text_quoting_flag.
890 * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
891 Don't define, as it's not needed and it clashes with wchar.h.
893 2015-08-17 Glenn Morris <rgm@gnu.org>
895 * doc/misc/tramp.texi (Configuration): Reword to avoid warning
896 from makeinfo about spurious "Note:" cross-reference, and for grammar.
898 2015-08-17 Ilya Zakharevich <ilya@math.berkeley.edu>
900 Minor change in variable initialization on MS-Windows
901 * src/w32fns.c <after_dead_key>: Initialize to -1.
902 (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
905 Fix a bug with LWindow key remapping on MS-Windows
906 * src/w32fns.c (deliver_wm_chars): Fix a typo. (Bug#21276)
908 2015-08-17 Eli Zaretskii <eliz@gnu.org>
910 Improve fontset support for latest OTF script tags
911 * lisp/international/fontset.el (otf-script-alist): Add some
913 (setup-default-fontset): Include settings for v2 versions of the
914 script tags used by some modern OTF/TTF fonts.
916 2015-08-17 Paul Eggert <eggert@cs.ucla.edu>
920 2015-08-16 Paul Eggert <eggert@cs.ucla.edu>
922 Use curved quotes in core elisp diagnostics
923 In the core elisp files, use curved quotes in diagnostic formats,
924 so that they follow user preference as per ‘text-quoting-style’
925 rather than being hard-coded to quote `like this'.
926 * lisp/abbrev.el (expand-region-abbrevs):
927 * lisp/button.el (button-category-symbol, button-put)
930 * lisp/custom.el (custom-add-dependencies, custom-check-theme)
931 (custom--sort-vars-1, load-theme):
932 * lisp/emacs-lisp/byte-run.el (defun, defsubst):
933 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
934 (cl-generic-generalizers):
935 * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
936 * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
937 * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
938 (advice--make, define-advice):
939 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
940 * lisp/emacs-lisp/timer.el (timer-event-handler):
941 * lisp/env.el (setenv):
942 * lisp/facemenu.el (facemenu-add-new-face)
943 (facemenu-add-new-color):
944 * lisp/faces.el (face-documentation, read-face-name)
945 (face-read-string, read-face-font, face-spec-set-match-display)
946 (read-color, x-resolve-font-name):
947 * lisp/files.el (locate-user-emacs-file, find-alternate-file)
948 (set-auto-mode, hack-local-variables)
949 (hack-one-local-variable--obsolete)
950 (dir-locals-set-directory-class, write-file)
951 (basic-save-buffer, delete-directory, copy-directory)
952 (recover-session, recover-session-finish, insert-directory)
953 (file-modes-char-to-who, file-modes-symbolic-to-number)
954 (move-file-to-trash):
955 * lisp/font-lock.el (font-lock-fontify-buffer):
956 * lisp/format.el (format-write-file, format-find-file)
957 (format-insert-file):
958 * lisp/frame.el (get-device-terminal, select-frame-by-name):
959 * lisp/fringe.el (fringe--check-style):
960 * lisp/help.el (describe-minor-mode-from-indicator):
961 * lisp/image.el (image-type):
962 * lisp/international/fontset.el (x-must-resolve-font-name):
963 * lisp/international/mule-cmds.el (prefer-coding-system)
964 (select-safe-coding-system-interactively)
965 (select-safe-coding-system, activate-input-method)
966 (toggle-input-method, describe-current-input-method):
967 * lisp/international/mule-conf.el (code-offset):
968 * lisp/mouse.el (minor-mode-menu-from-indicator):
969 * lisp/replace.el (query-replace-read-from)
970 (occur-after-change-function, occur-1):
971 * lisp/scroll-bar.el (scroll-bar-columns):
972 * lisp/simple.el (execute-extended-command)
973 (undo-outer-limit-truncate, compose-mail, set-variable)
974 (choose-completion-string, define-alternatives):
975 * lisp/startup.el (site-run-file, tty-handle-args, )
976 (command-line, command-line-1):
977 * lisp/subr.el (noreturn, define-error, add-to-list)
979 * lisp/term/common-win.el (x-handle-xrm-switch)
980 (x-handle-name-switch, x-handle-args):
981 * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
982 Use curved quotes in diagnostics.
983 * lisp/international/mule.el (find-auto-coding):
984 Use " to quote in a diagnostic, to be consistent with the rest of
987 Convert lisp/term/x-win.el to UTF-8
988 * lisp/term/x-win.el: Convert to UTF-8. This doesn't affect
989 runtime behavior, and the file is multilingual so compile-time
990 appearance shouldn't be an issue.
991 * admin/notes/unicode: Document this.
993 2015-08-16 Wilson Snyder <wsnyder@wsnyder.org>
995 Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
996 * losp/progmodes/verilog-mode.el: Fix some non-automated indent
997 issues and comments, bug943. (verilog-type-font-keywords): Cycle
998 delay operators like ##1 and ##[0:$] are now highlighted in their
999 entirety similarly to the # delay-control operator. Likewise, the
1000 followed-by operators #-# and #=# are no longer partially
1001 highlighed. (verilog-backward-syntactic-ws-quick,
1002 verilog-skip-backward-comments): Minor performance improvements to
1003 buffer traversal functions for reduced latency. (verilog-calc-1,
1004 verilog-in-deferred-immediate-final-p): When the keyword 'final'
1005 follows 'assert/assume/cover', then it is part of a deferred
1006 immediate assertion item and should not be treated as a final
1007 construct for indentation. Reported by Yuri Sugihara.
1008 (verilog-do-indent): Virtual task/function/class definition lines
1009 should not be considered as declarations. Reported by Enzo Chi.
1010 (verilog-do-indent): Do not falsely indent to '=' of
1011 property/sequence operators on subsequent lines of a multi-line
1012 statement. (verilog-assignment-operator-re): Fix '!==' operator
1013 and add support for '<->', ':/', '#-#', and '#=#' operators.
1014 (verilog-calculate-indent, verilog-label-be): Enable
1015 case-sensitive regular expression parsing when looking for
1016 keywords. (verilog-calc-1): Detect 'pure virtual method'
1017 declarations which exist in abstract classes. Reported by Enzo
1018 Chi and Kaushal Modi. (verilog-backward-ws&directives): When
1019 moving back to the start of a line and the preceeding line ended
1020 with an escaped-newline, then jump up one line. This properly
1021 consumes a multi-line pre-processor directive. Reported by
1022 Kaushal Modi. (verilog-dpi-import-export-re,
1023 verilog-extended-complete-re, verilog-calc-1): Teach verilog-mode
1024 to properly indent after a DPI import/export statement that
1025 resides outside of a module. Reported by Kaushal Modi.
1026 (verilog-extended-complete-re): Update regexp to match both
1027 "DPI-C" and "DPI". Reported by Kaushal Modi.
1029 2015-08-15 Paul Eggert <eggert@cs.ucla.edu>
1031 substitute-command-keys a few more doc strings
1032 * lisp/allout.el (outlineify-sticky):
1033 * lisp/files.el (hack-one-local-variable--obsolete):
1034 * lisp/help-fns.el (help-fns--obsolete, describe-variable):
1035 Use substitute-command-keys on some doc strings so that
1036 they don't use hard-coded key bindings or quoting styles.
1038 Fix quoting in Fformat calls
1039 * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
1040 (xpm_load, xpm_load_image, pbm_load, png_load_body)
1041 (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
1042 (imagemagick_load, svg_load, svg_load_image, gs_load)
1043 (x_kill_gs_process):
1044 * src/lread.c (load_warn_old_style_backquotes):
1045 * src/xfaces.c (load_pixmap):
1046 * src/xselect.c (x_clipboard_manager_error_1):
1047 Quote diagnostics according to user preference when calling
1048 Fformat or its derivatives.
1050 2015-08-15 Glenn Morris <rgm@gnu.org>
1052 * admin/admin.el (set-version, set-copyright): Remove deleted files.
1054 2015-08-15 Stephen Leake <stephen_leake@stephe-leake.org>
1056 Allow describe-function helpers to access buffer-local values.
1057 This will be used by cedet/mode-local.el `describe-mode-local-override'
1058 on `help-fns-describe-function-functions' in upstream CEDET.
1059 * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
1060 `describe-function'.
1061 (describe-function): Bind it, save it on the help xref stack.
1063 Handle pulse-background being nil
1064 * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
1065 pulse-background, handle it being nil.
1067 2015-08-15 Paul Eggert <eggert@cs.ucla.edu>
1069 Fix "\`" confusion in Lisp strings
1070 * admin/authors.el (authors-canonical-author-name):
1071 Fix typo by using "\\`" not "\`" in string RE.
1072 * lisp/obsolete/complete.el (PC-complete-as-file-name):
1073 * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
1074 * lisp/progmodes/verilog-mode.el (verilog-mode-map):
1075 Use plain "`", not the equivalent-but-confusing "\`", in strings.
1076 * lisp/textmodes/texinfmt.el: Fix comment likewise.
1078 2015-08-15 Dani Moncayo <dmoncayo@gmail.com>
1080 Remove 'nt/zipdist.bat' (no longer used)
1081 * nt/zipdist.bat: Remove - no longer used.
1083 2015-08-15 Jürgen Hötzel <juergen@archlinux.org>
1085 * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
1086 rather than "getenforce".
1087 (tramp-sh-handle-set-file-selinux-context): Do not
1088 cache SELinux context if not all context components are given.
1090 2015-08-15 Eli Zaretskii <eliz@gnu.org>
1092 Add doc strings to 2 help-mode.el functions
1093 * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
1094 strings. (Bug#21263)
1096 Remove files used by the old MS-Windows specific build procedure
1097 * admin/unidata/makefile.w32-in:
1098 * doc/emacs/makefile.w32-in:
1099 * doc/lispintro/makefile.w32-in:
1100 * doc/lispref/makefile.w32-in:
1101 * doc/misc/makefile.w32-in:
1102 * leim/makefile.w32-in:
1103 * lib-src/makefile.w32-in:
1104 * lib/makefile.w32-in:
1105 * lisp/makefile.w32-in:
1108 * nt/emacs-src.tags:
1111 * nt/makefile.w32-in:
1112 * nt/multi-install-info.bat:
1115 * src/makefile.w32-in: Files deleted.
1116 * nt/configure.bat: Remove everything except the blurb about the
1117 new build procedure.
1118 * make-dist: Remove references to makefile.w32-in in various
1119 directories, and to files in nt/ that were deleted.
1120 * etc/NEWS: Mention the fact that the files were dropped.
1122 2015-08-15 Paul Eggert <eggert@cs.ucla.edu>
1124 * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
1127 2015-08-14 Paul Eggert <eggert@cs.ucla.edu>
1129 Default to inotify instead of gfile
1130 * configure.ac (with_file_notification): Fix typo that
1131 prevented suppression of file notification if HAVE_NS.
1132 (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
1133 with_file_notification is 'yes' (Bug#21241).
1134 * etc/NEWS: Mention this.
1136 Fix broken URLs for ISO-IR
1137 * doc/emacs/mule.texi (Charsets):
1138 * lisp/international/mule-conf.el:
1139 Fix broken URL (Bug#21248).
1141 Low-level diagnostics now use ‘text-quoting-style’
1142 * src/doprnt.c (doprnt):
1143 Format ` and ' as per ‘text-quoting-style’.
1144 * src/xdisp.c (vmessage, message): Mention that the format should
1147 Prefer ‘format’ to ‘substitute-command-keys’
1148 * src/character.h (uLSQM, uRSQM): Move here ...
1149 * src/doc.c (uLSQM, uRSQM): ... from here.
1150 * src/doc.c (Fsubstitute_command_keys):
1151 * src/syntax.c (Finternal_describe_syntax_value):
1152 * lisp/cedet/mode-local.el (mode-local-print-binding)
1153 (mode-local-describe-bindings-2):
1154 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
1155 * lisp/cus-theme.el (describe-theme-1):
1156 * lisp/descr-text.el (describe-text-properties-1, describe-char):
1157 * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
1158 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
1159 * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
1160 * lisp/emacs-lisp/package.el (describe-package-1):
1161 * lisp/faces.el (describe-face):
1162 * lisp/help-fns.el (help-fns--key-bindings)
1163 (help-fns--compiler-macro, help-fns--parent-mode)
1164 (help-fns--obsolete, help-fns--interactive-only)
1165 (describe-function-1, describe-variable):
1166 * lisp/help.el (describe-mode):
1167 Prefer ‘format’ to ‘substitute-command-keys’ when either will do
1168 to implement quoting style. This generally makes the code simpler.
1170 Extend ‘format’ to translate curved quotes
1171 This is a followup to the recent doc string change, and deals with
1172 diagnostics and the like. This patch is more conservative than
1173 the doc string change, in that the behavior of ‘format’ changes
1174 only if its first arg contains curved quotes and the user prefers
1175 straight or grave quotes. (Come to think of it, perhaps we should
1176 be similarly conservative with doc strings too, but that can wait.)
1177 The upside of this conservatism is that existing usage is almost
1178 surely unaffected. The downside is that we'll eventually have to
1179 change Emacs's format strings to use curved quotes in places where
1180 the user might want curved quotes, but that's a simple and
1181 mechanical translation that I'm willing to do later. (Bug#21222)
1182 * doc/lispref/help.texi (Keys in Documentation):
1183 Move description of text-quoting-style from here ...
1184 * doc/lispref/strings.texi (Formatting Strings):
1185 ... to here, and describe new behavior of ‘format’.
1186 * etc/NEWS: Describe new behavior.
1187 * lisp/calc/calc-help.el (calc-describe-thing):
1188 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
1189 * lisp/info.el (Info-find-index-name):
1190 Use ‘concat’ rather than ‘format’ to avoid misinterpretation
1191 of recently-added curved quotes.
1192 * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
1194 * src/lisp.h: ... to here.
1195 * src/doc.c (text_quoting_style): New function.
1196 (Fsubstitute_command_keys): Use it.
1197 * src/editfns.c (Fformat): Implement new behavior.
1198 * src/lisp.h (enum text_quoting_style): New enum.
1200 2015-08-14 Stefan Monnier <monnier@iro.umontreal.ca>
1202 * src/keyboard.c: Use false/true instead of 0/1 for booleans
1203 * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
1205 2015-08-14 Michael Albinus <michael.albinus@gmx.de>
1207 * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
1208 stderr to /dev/null, this is done in `tramp-send-command-and-check'.
1210 2015-08-14 Jürgen Hötzel <juergen@archlinux.org>
1212 Flush file properties in Tramp
1213 * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
1214 (tramp-sh-handle-set-file-times):
1215 * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
1216 (tramp-adb-handle-set-file-times): Flush the file properties of
1219 2015-08-14 Ronnie Schnell <ronnie@driver-aces.com>
1221 * doc/emacs/misc.text (Amusements): Fixed typo.
1223 2015-08-14 Eli Zaretskii <eliz@gnu.org>
1225 Don't miss warnings about removing string text properties while dumping
1226 * src/alloc.c (purecopy): Warn about removing a string's text
1227 properties even when the same string was already pure-copied
1229 * lisp/progmodes/elisp-mode.el (elisp--xref-format)
1230 (elisp--xref-format-extra): Fix the commentary.
1232 2015-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
1234 * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
1236 2015-08-13 Magnus Henoch <magnus.henoch@gmail.com>
1238 * lisp/progmodes/compile.el: Assume 8-wide TABs (bug#21038)
1239 * lisp/progmodes/compile.el: Use lexical-binding.
1240 (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
1242 2015-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
1244 (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
1245 * lisp/uniquify.el: Remove redundant `:group's.
1247 2015-08-13 Jürgen Hötzel <juergen@archlinux.org>
1249 * lisp/net/tramp-adb.el
1250 (tramp-adb-handle-directory-files-and-attributes): Make a copy of
1251 result to prevent modification of the tramp-cache by side effects.
1252 Use the correct cache key.
1254 2015-08-13 Paul Eggert <eggert@cs.ucla.edu>
1256 Make add_to_log varargs
1257 * src/alloc.c (run_finalizer_handler):
1258 * src/charset.c (load_charset_map_from_vector):
1259 * src/nsimage.m (ns_load_image):
1260 * src/xfaces.c (load_pixmap, load_color2):
1261 Simplify, now that add_to_log has a variable number of args.
1262 * src/image.c (image_error): Take a variable number of args.
1264 * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
1265 * src/xdisp.c (format_nargs, vadd_to_log): New functions.
1266 (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
1267 * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
1269 Optional args for holiday-greek-orthodox-easter
1270 * etc/NEWS: Document this.
1271 * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
1272 Add optional args N and STRING, mimicking the API and code of
1273 ‘holiday-easter-etc’. From suggestion by Foivos S. Zakkak (Bug#21256).
1275 2015-08-13 Stephen Leake <stephen_leake@stephe-leake.org>
1277 xref-find-definitions: Exclude more generic function items.
1278 * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Add doc string.
1279 (cl--generic-find-defgeneric-regexp): New.
1280 (find-function-regexp-alist): Add it.
1281 * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
1282 elisp-mode.el, change to search for ";;; Code:"
1283 (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
1284 (find-function-regexp-alist): Add them.
1285 * lisp/progmodes/elisp-mode.el:
1286 (elisp--xref-format, elisp--xref-format-extra): Change back to defvar due
1288 (elisp--xref-find-definitions): Exclude co-located default methods for
1289 generic functions. Also exclude implicitly declared defgeneric.
1290 (elisp--xref-find-definitions): Handle C source properly. Exclude minor
1291 mode variables defined by 'define-minor-mode'.
1292 * test/automated/elisp-mode-tests.el: Declare generic functions, add
1294 (xref-elisp-test-run): Fix bug.
1295 (emacs-test-dir): Improve initial value.
1296 (find-defs-defun-defvar-el): Don't expect defvar.
1297 (find-defs-feature-el): Match change to find-feature-regexp.
1299 2015-08-13 Eli Zaretskii <eliz@gnu.org>
1301 Improve warning about purecopy of strings with properties
1302 * src/alloc.c (purecopy): Show the offending string with the
1303 warning about removing its text properties.
1305 2015-08-12 Alan Mackenzie <acm@muc.de>
1307 Introduce new macros to cover Emacs's new names in cl-lib.el.
1308 This also eliminates `mapcan' warnings in XEmacs.
1309 progmodes/cc-defs.el (c--mapcan-status): new variable to characterise
1311 (top-level): Require either 'cl or 'cl-lib, depending on
1313 Change this back to cc-external-require from an eval-when-compile
1315 (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
1316 (c--delete-duplicates): New macros which expand into either old or new
1318 (c-make-keywords-re, c-lang-defconst, c-lang-const) Use the new macros
1319 rather than the old names.
1320 progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan rather
1322 progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
1323 progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
1324 depending on c--mapcan-status.
1325 (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
1326 (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
1327 (c-not-decl-init-keywords, c-not-primitive-type-keywords)
1328 (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
1329 (c-decl-block-key, c-keywords, c-keywords-obarray)
1330 (c-regular-keywords-regexp, c-primary-expr-regexp,
1331 c-primary-expr-regexp)
1332 (c-block-prefix-disallowed-chars, c-known-type-key,
1333 c-nonlabel-token-key)
1334 (c-make-init-lang-vars-fun): Use the new macros rather than the old
1337 2015-08-12 Oleh Krehel <ohwoeowho@gmail.com>
1339 loadhist.el (read-feature): Conform to completing-read
1340 * lisp/loadhist.el (read-feature): According to `completing-read'
1341 documentation, if collection is a list, then it must be a list of
1342 strings. And not a list of symbols like before.
1344 2015-08-12 David Kastrup <dak@gnu.org>
1346 Deal gracefully with up-events (Bug#19746)
1347 * keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
1348 (parse_modifiers_uncached): React gracefully to "up-" modifiers:
1349 those may easily be injected by user-level Lisp code.
1350 (read_key_sequence): Discard unbound up-events like unbound
1351 down-events: they are even more likely only relevant for special
1353 While Emacs will not produce up-events on its own currently (those are
1354 converted to drag or click events before being converted to
1355 Lisp-readable structures), the input queue can be made to contain them
1356 by synthesizing events to `unread-command-events'. Emacs should deal
1357 consistently with such events.
1359 2015-08-12 Eli Zaretskii <eliz@gnu.org>
1361 Fix display of thin lines whose newline has line-height property of t
1362 * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
1363 and descent values of non-empty glyph rows, since they could have
1364 forced low values deliberately. (Bug#21243)
1366 2015-08-12 Richard Stallman <rms@gnu.org>
1368 Offer to combine multiple To or CC fields.
1369 * sendmail.el (mail-combine-fields): New function.
1370 (mail-send): Call 'mail-combine-fields'.
1372 Don't decrypt encrypted files.
1373 * mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
1375 Handle encrypted mbox files.
1376 * rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
1379 Re-enable mime processing after decryption. Add 'decrypt' keyword.
1380 * rmail.el (rmail-epa-decrypt-1): New subroutine.
1381 (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
1382 In a mime message, reenable Mime and show the parts that
1384 Add keyword "decrypt" if anything decrypted.
1386 epa-inhibit inhibits auto-recognition of .gpg files
1387 * lisp/epa-file.el (epa-inhibit): New variable.
1388 (epa-file-handler): Check epa-inhibit.
1390 2015-08-12 Artur Malabarba <bruce.connor.am@gmail.com>
1392 * emacs-lisp/lisp-mnt.el (lm-header): save-excursion
1394 2015-08-11 Fabián Ezequiel Gallina <fgallina@gnu.org>
1396 Respect python.el imenu when semantic-mode is off
1398 * lisp/cedet/semantic/wisent/python.el: Do not force
1399 wisent-python-default-setup on python-mode-hook.
1401 2015-08-11 Paul Eggert <eggert@cs.ucla.edu>
1403 Give names to Unicode code points in C code
1404 * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
1405 (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
1406 (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
1407 (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
1408 (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
1409 (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
1410 (OBJECT_REPLACEMENT_CHARACTER):
1411 New named constants for Unicode code points.
1412 * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
1413 * src/composite.c (char_composable_p):
1414 * src/lread.c (readevalloop, read1):
1415 * src/xdisp.c (get_next_display_element):
1417 * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
1418 Remove; now in character.h.
1420 2015-08-11 Stephen Leake <stephen_leake@stephe-leake.org>
1422 elisp--xref-find-definitions handle cl-defstuct default constructor
1423 * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
1424 (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
1425 (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
1426 * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
1427 from xref-elisp-test for ease of debugging.
1428 (xref-elisp-deftest): Rename from xref-elisp-test.
1429 (find-defs-constructor): New test.
1430 (find-defs-defgeneric-el): Match batch test config.
1431 (compile): Required for find-defs compilation-minor-mode test.
1432 (find-defs-defvar-el): Match code change.
1433 (find-defs-face-el): Match code change.
1434 * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
1437 2015-08-11 Stefan Monnier <monnier@iro.umontreal.ca>
1439 * lisp/replace.el (perform-replace): Document `replacements'.
1440 (perform-replace): Move the description of the format of `replacements' from
1441 the body's comment to the docstring.
1443 2015-08-11 Jürgen Hötzel <juergen@archlinux.org>
1445 * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
1446 sequence. Recent adb version send initial escape sequences, even
1447 when terminal type is set to TERM=dumb.
1449 2015-08-10 Stephen Leake <stephen_leake@stephe-leake.org>
1451 Rewrite elisp--xref-find-definitions to handle many more cases; add tests.
1452 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location): deleted
1453 (elisp--xref-format-cl-defmethod): new
1454 (find-feature-regexp): new
1455 (find-alias-regexp): new
1456 (elisp--xref-make-xref): new
1457 (elisp--xref-find-definitions): Rewrite using the above, handle many more
1458 cases. Always output all available definitions.
1459 (xref-location-marker): No need for special cases.
1460 * test/automated/elisp-mode-tests.el: Add more tests of
1461 elisp--xref-find-definitions, improve current tests.
1463 2015-08-10 Eli Zaretskii <eliz@gnu.org>
1465 Fix recording of events pushed onto unread-command-events
1466 * src/keyboard.c (read_char): Make sure events read from
1467 unread-command-events and unread-post-input-method-events are
1468 always recorded by record_char. Reported by David Kastrup
1470 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
1472 2015-08-10 Samer Masterson <samer@samertm.com>
1474 Set file buffer as current for "--file"
1475 * lisp/startup.el (command-line-1): Set file buffer as current before
1476 it is displayed so it can be used with options like
1477 "--eval". (Bug#21095)
1479 2015-08-10 Eli Zaretskii <eliz@gnu.org>
1481 Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
1482 * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
1483 after setting LC_ALL to the desired locale, to avoid affecting how
1484 numbers are read and printed. (Bug#21223)
1486 2015-08-10 Alan Mackenzie <acm@muc.de>
1488 Fix "Invalid search bound (wrong side of point)" in fontification.
1489 progmodes/cc-fonts.el (c-font-lock-declarators): After skipping an
1490 initialization expression, check point is not beyond the fontification
1493 2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
1495 Fix DPI calculation when Xft/DPI is default
1496 * src/xsettings.c (parse_settings): Don't use Xft/DPI default
1497 value of -1, which evaluates to 2**32 - 1 (Bug#21152).
1498 Remove unnecessary cast while we're in the neighborhood.
1500 2015-08-09 Dmitry Gutov <dgutov@yandex.ru>
1502 Add project-vc-search-path and project-vc-ignores
1503 * lisp/progmodes/project.el (project-vc): New group.
1504 (project-vc-search-path, project-vc-ignores): New variables.
1505 (project--value-in-dir): Utility function.
1506 (project-search-path, project-ignores): Use them.
1507 * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
1508 at bos. Don't add extra `/'. Don't prepend with `*' if replaced.
1510 2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
1512 Fix some minor quoting issues with grave accent
1513 * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
1514 Remove redundant quotes.
1515 * src/doc.c (uLSQM, uRSQM): New macros.
1516 * src/doc.c (Fsubstitute_command_keys):
1517 * src/syntax.c (Finternal_describe_syntax_value): Follow the user
1518 preference for quotes rather than hardcoding the ‘grave’ style.
1519 * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
1520 (re_match_2_internal) [DEBUG]: In debugging output, quote C
1521 strings with "...", not `...'.
1523 ChangeLog.2 ignores remote-tracking merges
1524 * build-aux/gitlog-to-emacslog: Ignore commit logs matching
1525 "Merge remote-tracking branch '.*'" too. See Eli Zaretskii in:
1526 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
1528 2015-08-09 Nicolas Richard <youngfrog@members.fsf.org>
1530 Use kpsewhich in ffap-latex-mode, if available
1531 * lisp/ffap.el (ffap-latex-guess-rules): New variable.
1532 (ffap-latex-mode): Use kpsewhich if available.
1534 ffap: disallow braces in filenames for tex modes
1535 * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
1536 braces in tex-related modes.
1538 Remove useless backslashes from ffap-string-at-point-mode-alist
1539 * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
1540 misleading backslashes from default value.
1542 Augment docstring of ffap-string-at-point-mode-alist
1543 * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
1544 and END are handled.
1546 2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
1548 Remove no-op calls to substitute-command-keys
1549 * lisp/org/org-src.el (org-edit-src-code)
1550 (org-edit-fixed-width-region):
1551 * lisp/simple.el (completion-setup-function):
1552 Remove calls to substitute-command-keys that always just return
1555 2015-08-09 Daiki Ueno <ueno@gnu.org>
1557 Utilize `quit-window' in epa.el
1558 * epa.el (epa-exit-buffer-function): Set to `quit-window'.
1561 2015-08-09 Ivan Kanis <ivan@kanis.fr>
1563 fix link to source code in help window
1564 * lisp/help-fns.el (find-lisp-object-file-name): remove code that
1565 will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
1566 'No longer include timestamp in header of .elc files'. Add code
1567 that will return .el source file in load-path.
1569 2015-08-09 Artur Malabarba <bruce.connor.am@gmail.com>
1571 * isearch.el (isearch-search-fun-default): (Bug#21164)
1572 Respect `isearch-lax-whitespace' when searching through
1575 2015-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
1577 * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
1579 * org.el: Fix up some lexical scoping warnings, and use dolist
1580 * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
1581 (org-set-regexps-and-options, org-assign-fast-keys)
1582 (org-contextualize-keys, org-contextualize-validate-key)
1583 (org-notes-order-reversed-p, org-local-logging, org-map-entries)
1584 (org-find-olp, org-find-exact-heading-in-directory)
1585 (org-cycle-agenda-files, org-release-buffers, org-fill-template)
1586 (org-agenda-prepare-buffers, org-occur-in-agenda-files)
1587 (org-replace-escapes): Use dolist.
1588 (org-mode): Optimize away XEmacs-only code.
1589 (org-refile-get-targets): Remove unused var `f'.
1590 (org-fast-todo-selection): Remove unused var `e'.
1591 (org-make-tags-matcher): Use dolist. Remove unused var `term'.
1592 (org-fast-tag-selection): Use dolist. Remove unused var `e'.
1593 (org-format-latex): Use dolist. Remove unused var `e'.
1594 (org-toggle-heading): Access vars lexically rather than dynamically.
1595 (org-backward-sentence, org-forward-sentence, org-meta-return)
1596 (org-kill-line): Mark arg as unused.
1597 (org-submit-bug-report): Silence compiler warning.
1598 (org-occur-in-agenda-files): Don't use add-to-list on local vars.
1599 (org-get-cursor-date): Remove unused var `tm'.
1600 (org-comment-or-uncomment-region): Use standard name `_'.
1601 (reftex-docstruct-symbol, reftex-cite-format): Declare to
1602 silence byte-compiler.
1603 (org-reftex-citation): Add `org--' prefix to dynamically scoped
1606 2015-08-08 Nicolas Petton <nicolas@petton.fr>
1608 Merge remote-tracking branch 'origin/fix/subsequence-error-with-negative-sequences'
1610 2015-08-08 Paul Eggert <eggert@cs.ucla.edu>
1612 Electric quote if coding is undecided or no conv
1613 * lisp/electric.el (electric--insertable-p): Also say that a
1614 string is insertable if the buffer file coding system is undecided
1615 or uses no conversion, as curved quotes will work in either case.
1617 * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
1619 2015-08-08 Eli Zaretskii <eliz@gnu.org>
1621 Fix overlay string display regressions introduced in Emacs 24.5
1622 * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
1623 buffer position, if we move the iterator to a new position as
1624 result of jumping over text covered by a "replacing" display
1626 * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
1628 Support recovery from C stack overflow on MS-Windows
1629 * src/w32fns.c (w32_reset_stack_overflow_guard)
1630 (stack_overflow_handler): New functions for handling C stack
1631 overflow exceptions.
1632 (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
1633 specially, and zero out except_addr if we do.
1634 (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
1636 * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
1637 the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
1638 the MinGW build, but the code guarded by that is for Posix hosts.
1639 * src/keyboard.c (command_loop) [WINDOWSNT]: Call
1640 w32_reset_stack_overflow_guard.
1641 * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
1642 (sigsetjmp): New macro.
1643 (w32_reset_stack_overflow_guard): Declare the prototype.
1644 * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
1646 2015-08-07 Phillip Lord <phillip.lord@newcastle.ac.uk>
1648 Improve error signalling for seq-subseq.
1650 * lisp/seq.el (seq-subseq): The existing behaviour is to error
1651 when indexes are too large, but to silently ignore numbers which
1652 are too negative for lists. String and vector handling errors in
1653 both cases. This has been regularlised. Error signalling behaviour
1654 has been explicitly added to the docstring.
1656 * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
1657 therefore also impacted by this change. The docstring has been
1658 updated to reflect this.
1660 * test/automated/seq-tests.el (test-seq-subseq): Tests have been
1661 added for these exceptional cases, as well as one non exceptional
1664 2015-08-07 Jürgen Hötzel <juergen@archlinux.org>
1666 Improve error checking in tramp-adb.el
1667 * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
1668 Improve error checking. "ls -l" on Android in Enforcing mode can
1669 print "lstat './FILENAME failed: Permission denied".
1671 2015-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1673 * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
1676 2015-08-07 Stephen Leake <stephen_leake@stephe-leake.org>
1678 lisp/window.el: fix typo, more `display-buffer-use-some-frame'
1679 * lisp/window.el: fix typo that broke build
1680 (display-buffer--action-function-custom-type): add
1681 `display-buffer-use-some-frame'
1682 (display-buffer): add `display-buffer-use-some-frame' to doc string
1684 Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
1685 * lisp/window.el (display-buffer-use-some-frame): Add support for
1686 'inhibit-same-window in alist.
1687 * doc/windows.texi (display-buffer-use-some-frame): Doc support for
1688 'inhibit-same-window in alist.
1690 2015-08-07 Eli Zaretskii <eliz@gnu.org>
1692 Avoid infinite loop in display of invisible text in strings
1693 * src/xdisp.c (handle_invisible_prop): If the next change of
1694 invisibility spec does not mean the beginning of a visible text,
1695 update the string position from which to start the search for the
1696 next invisibility change. This avoids an infinite loop when we
1697 have more than one invisibility spec that are made inactive by
1698 buffer-invisibility-spec. Simplify code. (Bug#21200)
1699 * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
1700 for the situation that caused bug #21200.
1702 2015-08-06 Artur Malabarba <bruce.connor.am@gmail.com>
1704 * lisp/emacs-lisp/package.el: Simplify describe-package-1
1705 (package-help-section-name-face): New face.
1706 (package--print-help-section): New function.
1707 (describe-package-1): Refactor section printing.
1708 (package-make-button): Use face instead of font-lock-face, which
1709 doesn't work on buttons.
1711 * lisp/emacs-lisp/package.el: Define custom faces
1712 (package-name-face, package-description-face)
1713 (package-status-built-in-face, package-status-external-face)
1714 (package-status-available-face, package-status-new-face)
1715 (package-status-held-face, package-status-disabled-face)
1716 (package-status-installed-face, package-status-dependency-face)
1717 (package-status-unsigned-face, package-status-incompat-face)
1718 (package-status-avail-obso-face): New faces.
1719 (package-menu--print-info-simple): Use them.
1721 2015-08-05 Paul Eggert <eggert@cs.ucla.edu>
1723 Fix some confusion with ‘format’
1724 * lisp/allout-widgets.el (allout-widgets-before-change-handler)
1725 (allout-graphics-modification-handler):
1726 Protect arbitrary string in a format context with "%s" format.
1728 * lisp/cedet/semantic/bovine/scm.el: Fix comment.
1729 * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
1730 * lisp/erc/erc-button.el (erc-button-beats-to-time):
1731 * lisp/gnus/message.el (message-send-form-letter):
1732 * lisp/org/ob-core.el (org-babel-check-evaluate)
1733 (org-babel-confirm-evaluate):
1734 * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
1735 * lisp/org/ox-latex.el (org-latex-compile):
1736 * lisp/org/ox-man.el (org-man-compile):
1737 * lisp/org/ox-odt.el (org-odt-template):
1738 * lisp/org/ox-texinfo.el (org-texinfo-compile):
1739 * lisp/progmodes/prolog.el (prolog-help-info)
1740 (prolog-view-predspec):
1741 * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
1742 * lisp/progmodes/verilog-mode.el (verilog-showscopes):
1743 * lisp/textmodes/rst.el (rst-replace-lines):
1744 Change (message (format ...)) to (message ...), and likewise
1745 for ‘error’. This lessens the probability of confusion when the
1746 output of ‘format’ contains ‘%’.
1748 2015-08-05 Artur Malabarba <bruce.connor.am@gmail.com>
1750 * lisp/replace.el (replace-character-fold): Default to nil
1752 * lisp/character-fold.el: Fix lax whitespace
1753 (character-fold-table): Don't make space match other whitespace chars.
1754 (character-fold-to-regexp): Simplify lax behaviour.
1756 2015-08-05 Dmitry Gutov <dgutov@yandex.ru>
1758 Preserve window point in xref-find-definitions-other-window
1759 Fix the problem reported by Ingo Logmar in
1760 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
1761 * lisp/progmodes/xref.el (xref--goto-char): Extract from
1762 xref--goto-location.
1763 (xref--pop-to-location): Use it. Replace xref--goto-location with
1764 a direct xref-location-marker call.
1765 (xref--show-location): Likewise.
1766 (xref--display-position): Use xref--goto-char.
1768 * lisp/progmodes/project.el: Add a paragraph to the front matter.
1770 2015-08-04 David Kastrup <dak@gnu.org>
1772 Do not overwrite preexisting contents of unread-command-events
1773 * lisp/vc/emerge.el (emerge-show-file-name):
1774 * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
1775 (vhdl-comment-insert, vhdl-hooked-abbrev):
1776 * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
1777 * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
1778 * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
1779 * lisp/progmodes/cperl-mode.el (cperl-putback-char):
1780 * lisp/obsolete/vip.el (vip-escape-to-emacs)
1781 (vip-prefix-arg-value, vip-prefix-arg-com):
1782 * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
1783 * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
1784 (quail-tibkey-update-translation):
1785 * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
1786 * lisp/leim/quail/lao.el (quail-lao-update-translation):
1787 * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
1788 (quail-japanese-self-insert-and-switch-to-alpha):
1789 * lisp/leim/quail/hangul.el (hangul2-input-method)
1790 (hangul3-input-method, hangul390-input-method):
1791 * lisp/language/hanja-util.el (hangul-to-hanja-char):
1792 * lisp/international/robin.el (robin-input-method):
1793 * lisp/international/quail.el (quail-start-translation)
1794 (quail-start-conversion):
1795 * lisp/gnus/gnus-art.el (gnus-article-describe-key)
1796 (gnus-article-describe-key-briefly):
1797 * lisp/eshell/em-hist.el (eshell-list-history):
1798 * lisp/term.el (term-dynamic-list-input-ring)
1799 (term-dynamic-list-completions):
1800 * lisp/subr.el (momentary-string-display):
1801 * lisp/simple.el (read-quoted-char):
1802 * lisp/pcomplete.el (pcomplete-show-completions):
1803 * lisp/kmacro.el (kmacro-repeat-on-last-key):
1804 * lisp/info.el (Info-summary):
1805 * lisp/ehelp.el (electric-help-command-loop):
1806 * lisp/ebuff-menu.el (electric-buffer-list)
1807 (Electric-buffer-menu-exit):
1808 * lisp/double.el (double-translate-key):
1809 * lisp/comint.el (comint-dynamic-list-input-ring)
1810 (comint-dynamic-list-completions): Do not overwrite preexisting
1811 contents of `unread-command-events' when putting new events into
1814 2015-08-04 Daniel Colascione <dancol@dancol.org>
1816 Improve ansi-color filtering of unrecognized escape sequences
1817 * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
1819 (ansi-color-filter-apply): Filter out unrecognized escape sequences
1820 (ansi-color-apply): Filter out unrecognized escape sequences
1822 2015-08-04 Artur Malabarba <bruce.connor.am@gmail.com>
1824 * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
1825 definitions to `easy-menu-define', improve a couple to account for
1826 async, and add a couple of new commands.
1828 2015-08-03 Jürgen Hötzel <juergen@archlinux.org>
1830 * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
1832 2015-08-03 Ingo Lohmar <i.lohmar@gmail.com>
1834 Add new 'calendar-weekend-days' option
1835 Make the days receiving the 'calendar-weekend-header' face freely
1836 customizable, as they differ by region/culture.
1837 * doc/emacs/calendar.texi (Move to Beginning or End): Document the
1839 * lisp/calendar/calendar.el (calendar-generate-month): New variable
1840 calendar-weekend-days to customize day header fontification.
1842 2015-08-03 Paul Eggert <eggert@cs.ucla.edu>
1844 Redo text-quoting-style variable
1845 Rename help-quote-translation to text-quoting-style,
1846 and use symbols rather than characters as values.
1847 This follows suggestions along these lines by Alan Mackenzie in:
1848 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
1849 and by Drew Adams in:
1850 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
1851 * doc/lispref/help.texi (Keys in Documentation)
1853 * lisp/cus-start.el (standard):
1854 * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
1855 Document and/or implement the new behavior instead of the old.
1856 (syms_of_doc): New symbols 'grave' and 'straight'.
1858 2015-08-03 Nikolaus Rath <Nikolaus@rath.org>
1860 nnimap.el: Use IMAP MOVE extension if available
1861 * lisp/gnus/nnimap.el (nnimap-request-move-article)
1862 (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
1863 Use MOVE extension if available.
1865 nnimap.el: Explicitly ask for server capabilities
1866 * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
1867 capabilities will be returned in the login-result.
1869 2015-08-02 Paul Eggert <eggert@cs.ucla.edu>
1871 Treat help strings like other doc strings
1872 * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
1873 * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
1874 substitute-command-keys.
1875 * src/keyboard.c (show_help_echo, parse_menu_item): Call
1876 substitute-command-keys on the help string before displaying it.
1878 Also mention "curly quotes"
1879 See Drew Adams's email in:
1880 http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
1881 * doc/lispref/help.texi (Keys in Documentation):
1882 Add index entry "curly quotes".
1883 * etc/NEWS: Use the phrase "curly quotes" too.
1885 ede-proj-target-makefile docstring tweaks
1886 * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
1887 Consistently use "all:" to describe the all: target,
1888 replacing three different and confusingly-quoted usages.
1890 2015-08-02 Eli Zaretskii <eliz@gnu.org>
1894 2015-08-02 Evgeny Fraimovitch <johnlen7@gmail.com> (tiny change)
1896 Don't abort emacsclientw when -a was specified
1897 * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
1898 out if we are in emacsclientw and -a was specified.
1900 2015-08-02 Eli Zaretskii <eliz@gnu.org>
1902 Fix handling of 1st keystroke on MS-Windows
1903 * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
1904 This is needed to correctly handle the session's first keystroke,
1905 if it has any modifiers. (Bug#19994)
1907 2015-08-02 Paul Eggert <eggert@cs.ucla.edu>
1909 Substitute some customization etc. doc strings
1910 These changes apply substitute-command-keys to some
1911 doc strings that were going through untranslated
1912 when creating customization or other widgets.
1913 * lisp/cus-edit.el (custom-group-value-create):
1914 * lisp/wid-edit.el (widget-default-create):
1915 (widget-push-button-value-create):
1916 Treat the widget tag as a doc string.
1917 * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
1918 Treat the :documentation value as a doc string.
1919 * lisp/wid-edit.el (widget-choose):
1920 Treat the choice names as doc strings.
1921 (widget-default-create): Treat the :doc value as a doc string.
1922 (widget-toggle-value-create): Treat the :on and :off values
1924 (widget-documentation-string-value-create):
1925 Substitute the doc string.
1927 2015-08-01 Dmitry Gutov <dgutov@yandex.ru>
1929 Add a second argument to project-ignores
1930 * lisp/progmodes/project.el (project-ignores): Add a second
1932 * lisp/progmodes/project.el (project-ignores): Only include the VC
1933 ignores if DIR is the VC root.
1934 * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
1936 2015-08-01 Eli Zaretskii <eliz@gnu.org>
1938 Prevent incorrect display when 'line-spacing' variable is set
1939 * src/xdisp.c (try_window_id): Give up this optimization if the
1940 buffer has its 'line-spacing' variable set non-nil.
1942 2015-08-01 Dmitry Gutov <dgutov@yandex.ru>
1944 Don't pass NOVISIT to find-file
1945 * lisp/progmodes/etags.el (next-file):
1946 Don't pass NOVISIT to find-file (bug#21175).
1948 Ignore buffer restriction for tags-loop-eval
1949 * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
1950 restriction (bug#21167).
1952 2015-08-01 Eli Zaretskii <eliz@gnu.org>
1954 Fix a thinko in 'ffap-gopher-at-point'
1955 * lisp/ffap.el (ffap-gopher-at-point): Fix last change. (Bug#21168)
1957 Honor 'line-spacing' for empty lines
1958 * src/xdisp.c (append_space_for_newline): Honor 'line-height'
1959 property and 'line-spacing' frame parameter or variable or
1960 property for empty lines, by doing the same processing as in
1961 x_produce_glyph for newline characters. (Bug#21165)
1963 2015-08-01 Paul Eggert <eggert@cs.ucla.edu>
1965 Simplify by assuming C99 integer division
1966 * src/floatfns.c (ceiling2, floor2, truncate2):
1967 Assume C99 (i.e., Fortran) semantics for integer division.
1968 This simplifies the code.
1970 2015-07-31 Paul Eggert <eggert@cs.ucla.edu>
1972 Don't overflow if computing approximate percentage
1973 * lisp/align.el (align-region):
1974 * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
1975 * lisp/cedet/semantic/wisent.el (wisent-parse-region):
1976 * lisp/cus-edit.el (custom-buffer-create-internal):
1977 * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
1978 (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
1979 (checkdoc-next-message-error):
1980 * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
1981 * lisp/epa.el (epa-progress-callback-function):
1982 * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
1983 * lisp/ffap.el (ffap-menu-rescan):
1984 * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
1985 * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
1986 * lisp/gnus/nneething.el (nneething-retrieve-headers):
1987 * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
1988 * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
1989 * lisp/gnus/nnml.el (nnml-retrieve-headers):
1990 * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
1991 * lisp/gnus/nntp.el (nntp-retrieve-headers)
1992 (nntp-retrieve-articles):
1993 * lisp/imenu.el (imenu--relative-position):
1994 * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
1995 (skkdic-convert-okuri-nasi):
1996 * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
1997 * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
1998 * lisp/org/org-list.el (org-update-checkbox-count):
1999 * lisp/org/org.el (org-table-map-tables)
2000 (org-update-parent-todo-statistics):
2001 * lisp/play/decipher.el (decipher-insert-frequency-counts)
2002 (decipher-analyze-buffer):
2003 * lisp/profiler.el (profiler-format-percent):
2004 * lisp/progmodes/cc-cmds.el (c-progress-update):
2005 * lisp/progmodes/cpp.el (cpp-highlight-buffer):
2006 * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
2007 (idlwave-list-load-path-shadows):
2008 * lisp/progmodes/opascal.el (opascal-step-progress):
2009 * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
2010 (vhdl-scan-directory-contents):
2011 * lisp/textmodes/bibtex.el (bibtex-progress-message):
2012 * lisp/textmodes/flyspell.el (flyspell-small-region)
2013 (flyspell-external-point-words):
2014 * lisp/textmodes/table.el (table-recognize):
2015 Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
2016 progress-report percentages and the like. This avoids problems
2017 if (* 100 NUMERATOR) would overflow.
2018 * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
2019 * lisp/gnus/registry.el (registry-reindex):
2020 Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
2021 * lisp/descr-text.el (describe-char):
2022 * lisp/org/org-colview.el (org-nofm-to-completion):
2023 * lisp/ps-print.el (ps-plot):
2024 * lisp/simple.el (what-cursor-position):
2025 Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
2026 more-complicated and less-accurate approximation.
2028 Fix some int overflows in profiler.c
2029 * src/profiler.c (make_log): Make args EMACS_INT, not int,
2030 to avoid unwanted behavior on 'int' overflow.
2031 (make_log, evict_lower_half, record_backtrace):
2032 Use ptrdiff_t, not int, for object indexes.
2034 Port to pedantic memcpy
2035 * src/keyboard.c (menu_bar_items, tool_bar_items):
2036 * src/xrdb.c (magic_db):
2037 Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
2041 2015-07-29 time_rz: port to pedantic memcpy
2042 * lib/time_rz.c: Copy from gnulib.
2044 2015-07-31 Artur Malabarba <bruce.connor.am@gmail.com>
2046 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Fix bug
2047 When updating the very last entry, tabulated-list-print would
2048 erase it and then try to look at the next one (which obviously
2051 2015-07-31 Eli Zaretskii <eliz@gnu.org>
2053 Allow to use the old key processing code on MS-Windows
2054 * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
2056 (w32_wnd_proc): Use it to invoke the old code that processed
2057 character keys, as fallback, when this variable is non-nil. Fix
2058 typos in comments. (Bug#19994)
2060 2015-07-31 Ilya Zakharevich <ilya@math.berkeley.edu>
2062 Improve handling of Unicode keyboard input on MS-Windows
2063 * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
2064 (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
2065 (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
2066 upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages. If that is
2067 successful, don't call TranslateMessage. (Bug#19994)
2069 2015-07-30 Dmitry Gutov <dgutov@yandex.ru>
2071 Fix default-directory in changeset diffs after vc-print-log
2072 * lisp/vc/log-view.el (log-view-diff-common): Move the
2073 revision-granularity check back into log-view-diff-changeset.
2074 (log-view-diff-changeset): Bind default-directory to the current
2077 Rename project-directories to project-roots
2078 * lisp/progmodes/project.el (project-search-path-function)
2079 (project-search-path): Update the docstring.
2080 (project-directories): Rename to `project-roots', update all
2081 callers and implementations accordingly.
2082 (project-root): Remove.
2083 * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
2084 as the default file mask.
2086 2015-07-30 Eli Zaretskii <eliz@gnu.org>
2088 Support long URLs in w32-shell-execute
2089 * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
2090 and filename_to_ansi to convert the DOCUMENT argument, as it could
2091 be a URL that is not limited to MAX_PATH characters. Instead, use
2092 MultiByteToWideChar directly, and allocate heap storage as
2093 required to accommodate the converted string. Likewise with
2094 non-Unicode operation. Ensure OPERATION is null-terminated, even
2095 if it is longer than 32K bytes. (Bug#21158)
2097 2015-07-30 Stephen Leake <stephen_leake@stephe-leake.org>
2099 vc-mtn-find-revision handle null rev.
2100 * lisp/vc/vc-mtn.el (vc-mtn-find-revision): handle null rev
2102 2015-07-29 Stephen Leake <stephen_leake@stephe-leake.org>
2104 Add docs for display-buffer action display-buffer-use-some-frame
2105 * lisp/window.el (display-buffer-use-some-frame): improve doc string
2106 * doc/lispref/windows.texi (Display Action Functions): add
2107 display-buffer-use-some-frame
2108 * etc/NEWS: mention display-buffer-use-some-frame
2110 Add display-buffer action display-buffer-use-some-frame
2111 * lisp/window.el (display-buffer-use-some-frame): new
2113 Handle vc-mtn error more gently
2114 * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): return "" when branch is nil
2116 2015-07-29 Michael Albinus <michael.albinus@gmx.de>
2118 Fix Tramp problems with multihops, and nc.
2119 * lisp/net/tramp-cache.el (tramp-get-file-property)
2120 (tramp-set-file-property, tramp-flush-file-property)
2121 (tramp-get-connection-property, tramp-set-connection-property)
2122 (tramp-flush-connection-property): Remove hop from vector.
2123 * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
2124 * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
2125 (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
2127 (tramp-sh-handle-start-file-process): Do not show hops in prompt.
2128 * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
2129 (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
2131 * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
2134 2015-07-29 Eli Zaretskii <eliz@gnu.org>
2136 Resurrect highlighting of repeated words by Flyspell Mode
2137 * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
2138 characters between point and the doublon candidate, so that
2139 flyspell-word-search-backward finds it. (Bug#21157)
2141 Fix redisplay of large images on expose events
2142 * src/xdisp.c (expose_window, expose_area): Avoid comparisons
2143 between signed negative values and unsigned values. This
2144 prevented redisplay on expose events when the window showed a very
2147 2015-07-29 Paul Eggert <eggert@cs.ucla.edu>
2149 Remove unnecessary stack overflow dependency
2150 * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
2151 Don't worry about $ac_cv_header_sys_resource_h and
2152 $ac_cv_func_getrlimit, as they're no longer needed for this.
2153 Problem reported by Eli Zaretskii in:
2154 http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
2156 2015-07-28 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
2158 Pacify compilation -Wincompatible-pointer-types warnings
2159 * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
2161 (CompareStringW_Proc): New typedef.
2162 (w32_compare_strings): Use it, to pacify compiler warnings under
2163 "-Wincompatible-pointer-types".
2164 * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
2165 (GetDiskFreeSpaceExA_Proc): New typedefs.
2166 (Ffile_system_info): Use them, to pacify compiler warnings under
2167 "-Wincompatible-pointer-types".
2169 2015-07-28 Paul Eggert <eggert@cs.ucla.edu>
2171 Fix subscript error in calculate_direct_scrolling
2172 Use slightly-longer cost vectors. Without this change,
2173 calculate_direct_scrolling can have a subscript violation when
2174 FRAME_LINES (frame) <= delta.
2175 * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
2176 (line_ins_del, do_line_insertion_deletion_costs):
2177 Allocate and use slightly-larger cost vectors, ones based on
2178 FRAME_TOTAL_LINES instead of FRAME_LINES.
2180 Fix uninitalized value in encode_coding_object
2181 * src/coding.c (encode_coding_object): Also initialize
2182 coding->src_pos and coding->src_pos_byte when NILP (src_object).
2183 This avoids later use of uninitialized storage.
2185 2015-07-27 Xue Fuqiao <xfq.free@gmail.com>
2187 * doc/lispref/variables.texi (Variable Aliases): Typo fix. (Bug#21141)
2189 2015-07-27 Paul Eggert <eggert@cs.ucla.edu>
2193 2015-07-27 time_rz: port better to MinGW
2194 2015-07-27 time: port __need_time_t to MinGW
2195 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
2196 * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
2197 * lib/time-internal.h: New file, from gnulib.
2199 2015-07-27 Eli Zaretskii <eliz@gnu.org>
2201 Handle NULL pointers in w32heap.c allocation routines
2202 * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
2204 (realloc_after_dump, realloc_before_dump, free_before_dump):
2205 Handle NULL pointers gracefully, as Emacs now seems to expect
2208 Fix Cairo build without PNG
2209 * src/image.c: Define PNG function when USE_CAIRO is defined, even
2210 if HAVE_PNG is not. (Bug#21133)
2212 MS-Windows follow-up for recent TZ-related changes
2213 * nt/mingw-cfg.site (ac_cv_header_pthread_h)
2214 (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
2215 picking up 'struct timespec' from pthread.h, if it is installed on
2216 the user's system. We want either the definitions from MinGW
2217 system headers, if available, or the Gnulib replacements if not.
2218 * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
2220 * lib/time.in.h: Don't let __need_* symbols affect what happens on
2221 MinGW. These symbols are defined by MinGW system headers, but we
2222 don't want that to affect whether Gnulib portions of the header
2225 2015-07-26 Paul Eggert <eggert@cs.ucla.edu>
2227 * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
2229 New optional ZONE arg for format-time-string etc.
2230 This simplifies time conversions in other time zones.
2231 It also prevents display-time-world tampering with TZ (Bug#21020).
2232 * admin/admin.el (add-release-logs):
2233 Use improved add-log-time-format API.
2234 * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
2235 (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
2236 * configure.ac (tzalloc): Remove test for this, since
2237 Emacs no longer uses HAVE_TZALLOC directly.
2238 * doc/lispref/os.texi (Time of Day, Time Conversion)
2240 * etc/NEWS: Document the new behavior.
2241 Merge from gnulib, incorporating:
2242 2015-07-25 strftime: fix newly-introduced bug on Solaris
2243 2015-07-23 fprintftime, strftime: use timezone_t args
2244 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
2245 * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
2248 * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
2249 New files from gnulib.
2250 * lisp/time-stamp.el (time-stamp-string):
2251 * lisp/time.el (display-time-world-list)
2252 (display-time-world-display):
2253 Use new API, with time zone arg.
2254 * lisp/time.el (display-time-world-display):
2255 Fix race when current-time advances while we're running.
2256 * lisp/vc/add-log.el (add-log-iso8601-time-zone)
2257 (add-log-iso8601-time-string): Accept optional time zone arg.
2258 * lisp/vc/add-log.el (add-change-log-entry):
2259 * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
2260 * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
2261 Add rules for the time module, since they're now needed
2263 * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
2264 (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
2265 * src/editfns.c: Include errno.h.
2266 (set_time_zone_rule): Omit unnecessary forward decl.
2267 (initial_tz): Remove, replacing with ...
2268 (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
2269 (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
2270 (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
2271 (tzlookup): New static functions.
2272 (init_editfns): New arg DUMPING. All uses changed.
2273 (init_editfns): Omit most initialization if dumping, not if
2274 !initialized. Initialize wall_clock_tz and local_tz.
2275 (emacs_nmemftime, format_time_string): Time zone argument can now
2276 be any time zone, not just a boolean for UTC or local time. All
2278 (Fformat_time_string, Fencode_time, Fcurrent_time_string)
2279 (Fcurrent_time_zone): New optional arg ZONE.
2280 (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
2281 the same form as with the other new additions.
2282 (decode_time_zone): Remove; no longer needed.
2283 (tzvalbuf): Now file-scope.
2284 (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
2285 (syms_of_editfns): Define Qwall.
2286 * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
2287 * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
2289 Remove; now supplied by gnulib.
2290 * src/emacs.c (main):
2291 * src/lisp.h (init_editfns): Adjust to init_editfns API change.
2293 2015-07-26 Shigeru Fukaya <shigeru.fukaya@gmail.com>
2295 Fix infinite loop in delete-consecutive-dups
2296 * lisp/subr.el (delete-consecutive-dups): Work even if the last
2297 element is nil (Bug#20588). Avoid rescan of a circular list in
2298 deletion of last element.
2300 2015-07-26 Martin Rudalics <rudalics@gmx.at>
2302 Have `x-frame-geometry' return nil for terminal and initial frames (Bug#21132)
2303 * src/nsfns.m (Fx_frame_geometry):
2304 * src/xfns.c (Fx_frame_geometry): Return nil for initial and
2306 * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
2307 (Fx_frame_geometry): Return nil for terminal frames
2309 2015-07-26 HOSOYA Kei <hosoyakei.free@gmail.com> (tiny change)
2311 * etc/tutorials/TUTORIAL.ja: Improve translation.
2313 2015-07-25 Eli Zaretskii <eliz@gnu.org>
2315 Avoid crashes when w32 GUI functions are called in -batch
2316 * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
2317 (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
2318 FRAME_W32_WINDOW for initial frame. (Bug#21132)
2320 Fix flyspell-check-previous-highlighted-word
2321 * lisp/textmodes/flyspell.el
2322 (flyspell-check-previous-highlighted-word): Really accept a
2323 numeric argument, as the doc string describes. Fix an off-by-one
2324 error in looking up overlays, so invocation with point immediately
2325 after a word would check that word. Clarify the doc string as
2326 Suggested by N. Jackson <nljlistbox2@gmail.com>. (Bug#21129)
2328 2015-07-24 Michael Albinus <michael.albinus@gmx.de>
2330 Minor cleanup in tramp-tests.el
2331 * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
2332 Implement using the documented interface
2333 `tramp-connection-properties', rather than with internal functions.
2335 2015-07-24 Harald Hanche-Olsen <hanche@math.ntnu.no> (tiny change)
2337 Pass lambdas to `skeleton-read'
2338 * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
2339 * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
2340 lambdas to `skeleton-read' (bug#20386).
2342 2015-07-24 Eli Zaretskii <eliz@gnu.org>
2344 * INSTALL (DETAILED BUILDING AND INSTALLATION): Mention --without-imagemagick.
2346 Don't require GUI frames and mouse for Flyspell menus
2347 * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
2348 (flyspell-emacs-popup): Require neither a GUI frame nor mouse
2349 support, since pop-up menus work with text terminals and can be
2350 controlled via the keyboard.
2352 Improve documentation of Flyspell commands
2353 * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
2354 can be invoked via the keyboard. Mention those commands by name
2355 and add them to the fn index. (Bug#21125)
2357 2015-07-23 Michael Albinus <michael.albinus@gmx.de>
2359 Fix some Tramp problems with HP-UX
2360 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
2361 Add "tab0" to stty call.
2362 * test/automated/tramp-tests.el (tramp-persistency-file-name):
2364 (tramp--test-hpux-p): New defun.
2365 (tramp--test-utf8): Use it.
2367 2015-07-22 Glenn Morris <rgm@gnu.org>
2369 * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
2371 2015-07-22 Eli Zaretskii <eliz@gnu.org>
2373 Fix point positioning in ffap-next-guess
2374 * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
2375 as our callers expect. This was clobbered as part of fixing
2376 bug#5673. (Bug#21107)
2377 (ffap-gopher-at-point): Set ffap-string-at-point-region.
2379 2015-07-22 Martin Rudalics <rudalics@gmx.at>
2381 Fix customization type of `even-window-sizes'.
2382 * lisp/window.el (even-window-sizes): Fix customization type.
2384 Optionally even widths of `display-buffer' windows. (Bug#21100)
2385 * lisp/window.el (quit-restore-window): Restore width if
2387 (display-buffer-record-window): Record width when window is
2388 reused and horizontally combined.
2389 (even-window-sizes): New option to allow evening window widths.
2390 (even-window-heights): Defalias to `even-window-sizes'.
2391 (window--even-window-heights): Rename to
2392 `window--even-window-sizes'. Handle side-by-side windows.
2393 (display-buffer-use-some-window): Call `window--even-window-sizes'
2394 instead of `window--even-window-heights'.
2395 * lisp/help.el (resize-temp-buffer-window): Fix indentation.
2396 * doc/lispref/windows.texi (Choosing Window Options): Describe
2397 `even-window-sizes'.
2398 (Coordinates and Windows): Fix typo.
2400 2015-07-22 Stephen Leake <stephen_leake@stephe-leake.org>
2402 add file name to autoload error messages.
2403 * lisp/emacs-lisp/autoload.el (autoload-save-buffers): add condition-case
2404 to add file name to error message.
2406 2015-07-22 Michael Albinus <michael.albinus@gmx.de>
2408 Use 0.0.0.1 as test host in Tramp
2409 * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
2410 Use 0.0.0.1 as test host.
2412 2015-07-21 Stefan Monnier <monnier@iro.umontreal.ca>
2414 (advice--called-interactively-skip): Fix inf-loop (bug#21083)
2415 * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
2416 Fix inf-loop (bug#21083).
2418 2015-07-21 Glenn Morris <rgm@gnu.org>
2420 * test/automated/package-test.el (package-test-signed):
2421 Update for recent changes.
2423 * test/automated/elisp-mode-tests.el
2424 (elisp-xref-finds-both-function-and-variable)
2425 (elisp-xref-finds-only-function-for-minor-mode):
2426 Update for recent xref name changes.
2428 2015-07-21 Dmitry Gutov <dgutov@yandex.ru>
2430 Make eldoc timer non-repeatable
2431 * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
2432 non-repeatable. Since it's on post-command hook, that just wasted
2435 2015-07-21 Michael Albinus <michael.albinus@gmx.de>
2437 Mention `tramp-connection-properties' in NEWS
2439 Sync with Tramp repository
2440 * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
2441 required prior changing its configuration.
2442 (Connection caching, Predefined connection information)
2443 (Remote shell setup): Fix typos.
2444 (Predefined connection information): Describe, how to overwrite
2445 parameters of `tramp-methods'.
2446 (Remote programs, Remote processes, Traces and Profiles):
2448 (Remote programs): Remove superfluous comment.
2449 * doc/misc/trampver.texi: Update release number.
2450 * lisp/net/tramp-cache.el (tramp-connection-properties): Adapt docstring.
2451 * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
2452 (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
2453 (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
2454 "gvfs-mkdir -p ..." does not work robust.
2455 (tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call.
2456 * lisp/net/tramp-sh.el (tramp-methods):
2457 Add `tramp-remote-shell-login' parameter where it fits.
2458 (tramp-get-remote-path): Use it.
2459 (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
2460 (all): Adapt `tramp-get-method-parameter' calls.
2461 * lisp/net/tramp.el (tramp-methods): Adapt docstring.
2462 (tramp-get-method-parameter): Replace argument METHOD by VEC.
2463 Check also for hits in `tramp-connection-properties'. Adapt docstring.
2464 (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
2465 (all): Adapt `tramp-get-method-parameter' calls.
2466 * lisp/net/trampver.el Update release number.
2467 * test/automated/tramp-tests.el (tramp--instrument-test-case):
2468 Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
2469 (tramp-test13-make-directory, tramp--test-adb-p)
2470 (tramp--test-smb-or-windows-nt-p): Simplify.
2471 (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
2472 (tramp--test-special-characters): Fix docstring. Add gvfs and ftp tests.
2473 (tramp--test-utf8): Fix docstring.
2475 2015-07-20 Dmitry Gutov <dgutov@yandex.ru>
2477 Add new xref-query-replace command
2478 * lisp/progmodes/xref.el (xref--match-buffer-bounds): New
2479 function, extracted from xref-pulse-momentarily.
2480 (xref-query-replace): New command.
2481 (xref--query-replace-1): New helper function.
2482 (xref--xref-buffer-mode-map): Add `r' binding.
2484 2015-07-20 Paul Eggert <eggert@cs.ucla.edu>
2486 Simplify icalendar decoding of Z dates
2487 * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
2488 Simplify calculation of time strings with trailing "Z".
2490 2015-07-19 Dmitry Gutov <dgutov@yandex.ru>
2492 Do not corrupt grep-find-ignored-files
2493 * lisp/progmodes/project.el (project-ignores): Change the order of
2494 the arguments to nconc, in order not to corrupt grep-find-ignored-files.
2496 Add xref-match-item, and use it
2497 * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
2498 (xref-file-location): Add reader for the column slot.
2499 (xref-match-item): New class.
2500 (xref-match-bounds): A method implementation for it.
2501 (xref-make-match): New constructor function.
2502 (xref--current-item): New private variable.
2503 (xref-pulse-momentarily): Use it.
2504 (xref--pop-to-location): Change the first argument to an xref
2505 item, instead of location, bind xref--current-item.
2507 (xref-next-line, xref-prev-line, xref--next-error-function)
2508 (xref--mouse-2): Look for the property `xref-item',
2509 instead of `xref-location'.
2510 (xref--item-at-point): Likewise. This function replaces
2511 `xref-location-at-point'. Update all callers.
2512 (xref--insert-xrefs): Add the `xref-item' text property, instead
2514 (xref--collect-match): Use xref-make-match.
2516 Rename xref--xref to xref-item
2517 * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
2518 Update all references.
2520 Rename xref description slot to summary
2521 * lisp/progmodes/xref.el (xref--xref): Rename the `description'
2524 vc-hg: Perform the print-log call asynchronously
2525 * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
2526 asynchronously (bug#21067).
2528 Add xref-after-jump-hook and xref-after-return-hook
2529 * lisp/progmodes/xref.el (xref-after-jump-hook)
2530 (xref-after-return-hook): New hooks.
2531 (xref-pulse-on-jump): Remove, in favor of the above.
2532 (xref-pulse-momentarily): Rename from xref--maybe-pulse.
2533 (xref--pop-to-location, xref--display-position)
2534 (xref-pop-marker-stack): Use the new hooks, as requested in
2535 http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
2537 2015-07-19 Bozhidar Batsov <bozhidar@batsov.com>
2539 Correct js-mode's lighter
2540 * lisp/progmodes/js.el (js-mode): Correct the lighter.
2542 2015-07-19 Leo Liu <sdl.web@gmail.com>
2544 Fix a bug in cfengine3-mode
2545 * progmodes/cfengine.el (cfengine3-mode): Handle nil
2546 eldoc-documentation-function.
2548 2015-07-18 Julien Danjou <julien@danjou.info>
2550 sieve-mode: support "body" test command
2551 * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
2552 Add missing "body" test command.
2554 2015-07-18 Eli Zaretskii <eliz@gnu.org>
2556 Fix info-apropos when the default encoding is Latin-N
2557 * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
2558 'undecided', so that it is set to the encoding of the Info file we
2559 are about to insert. Otherwise, 'info-apropos' will fail to find
2560 some index nodes in some UTF-8 encoded files, if the buffer's
2561 previous encoding is Latin-N or some such.
2563 2015-07-18 Ivan Andrus <darthandrus@gmail.com>
2565 * epg.el (epg--start): Check that gpgconf can be found before calling it.
2567 Expose more file types to OS X that Emacs understands.
2568 * Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
2569 json, and org files. Export UTIs for el, elc, and org files.
2571 2015-07-18 Eli Zaretskii <eliz@gnu.org>
2573 Fix visual-order cursor movement when lines are truncated
2574 * src/xdisp.c (Fmove_point_visually): When lines are truncated,
2575 simulate display in a window of infinite width, to allow move_it_*
2576 functions reach positions outside of normal window dimensions.
2577 Remove code that tried to handle a subset of these situations by
2578 manual iteration of buffer text. (Bug#17777)
2580 Fix following Info cross-references to anchors
2581 * lisp/info.el (Info-read-subfile): Add to the returned value the
2582 length of subfile preamble, after converting it to file's byte
2583 offset, as expected by the caller. Use bufferpos-to-filepos.
2584 (Info-find-node-2): If searching for a node with a
2585 1000-character slop fails, try again with a 10000-character slop,
2586 to account for known bugs in Texinfo 5.0 and 5.1. (Bug#21055)
2587 * lisp/international/mule-util.el (bufferpos-to-filepos): New
2589 * etc/NEWS: Mention bufferpos-to-filepos.
2591 Fix scrolling backwards on TTY frames under scroll-conservatively
2592 * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
2593 in moving backwards on TTY frames. (Bug#21080)
2595 2015-07-17 Dmitry Gutov <dgutov@yandex.ru>
2597 Consider a jsdoc tag to be a beginning of a paragraph as well
2598 * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
2599 consider a jsdoc tag to be a beginning of a paragraph as well.
2601 2015-07-17 Artur Malabarba <bruce.connor.am@gmail.com>
2603 * lisp/emacs-lisp/package.el: Fix warnings
2605 * lisp/emacs-lisp/package.el (package-buffer-info):
2606 Add author and maintainers to `package-buffer-info'.
2608 * lisp/emacs-lisp/package.el: Many small changes
2609 Replace all instances of 'face with 'font-lock-face.
2610 (describe-package-1): Improve some strings and move the summary up the
2612 (package-install-file): Update docstring.
2613 (package-menu-hide-package): Bind to `H'.
2615 * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
2618 2015-07-17 Paul Eggert <eggert@cs.ucla.edu>
2620 Fix hang with large yanks This should fix the bug fixed by Mike
2622 https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
2623 A problem in this area has been reported by several users; see
2624 Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
2625 This fix differs from Mike Crowe's patch in that it should avoid a
2626 race condition that could lose SIGIO signals. ignore_sigio dates
2627 back to the 1980s when some platforms couldn't block signals, and
2628 could only ignore them, which led to races when signals arrived
2629 while being ignored. We shouldn't have to worry about those old
2631 * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
2632 * src/emacs.c (shut_down_emacs):
2633 Don't call ignore_sigio; unrequest_sigio should suffice.
2634 * src/keyboard.c (kbd_buffer_store_buffered_event):
2635 Use unrequest_sigio, not ignore_sigio.
2636 (kbd_buffer_get_event):
2637 Call request_sigio when getting the ball rolling again.
2639 2015-07-17 Artur Malabarba <bruce.connor.am@gmail.com>
2641 * lisp/obsolete/longlines.el (longlines-search-function):
2642 Fallback on `isearch-search-fun-default'.
2644 2015-07-17 Tassilo Horn <tsdh@gnu.org>
2647 * rcirc.el (rcirc-completion-at-point): Support completion of
2648 mentions/messages with @nick instead of just nick.
2650 2015-07-16 Michael Albinus <michael.albinus@gmx.de>
2653 * lisp/autorevert.el (auto-revert-handler): Do not check for
2654 `buffer-modified-p'.
2655 * lisp/files.el (buffer-stale--default-function): Check for
2656 `buffer-modified-p'.
2657 * test/automated/auto-revert-tests.el
2658 (auto-revert-test02-auto-revert-mode-dired): Adapt test.
2660 2015-07-16 Ari Roponen <ari.roponen@gmail.com>
2662 Fix delete-dups bug on long lists
2663 * lisp/subr.el (delete-dups):
2664 Don't mistakenly keep some dups when applied to long lists.
2666 2015-07-16 Paul Eggert <eggert@cs.ucla.edu>
2668 Better heuristic for C stack overflow
2669 Improve the heuristic for distinguishing stack overflows from
2670 other SIGSEGV causes (Bug#21004). Corinna Vinschen explained that
2671 the getrlimit method wasn't portable to Cygwin; see:
2672 https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
2673 Corinna suggested pthread_getattr_np but this also has problems.
2674 Instead, replace the low-level system stuff with a simple
2675 heuristic based on known good stack addresses.
2676 * src/eval.c, src/lisp.h (near_C_stack_top): New function.
2677 * src/sysdep.c: Don't include <sys/resource.h>.
2678 (stack_direction): Remove. All uses removed.
2679 (stack_overflow): New function.
2680 (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
2681 Make SEGV fatal in non-main threads.
2683 2015-07-16 Daiki Ueno <ueno@gnu.org>
2685 epg: Automatically start pinentry server
2686 * epg-config.el (epg-gpgconf-program): New variable.
2687 * epg.el (epg--start): Call `pinentry-start' if
2688 allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
2690 2015-07-15 Katsumi Yamaoka <yamaoka@jpl.org>
2692 * lisp/gnus/nnimap.el: Fix my last bogus change
2693 Reinstall Stefan Monnier's change that was made in
2694 <83d824bc4041332f338ad7e5e830f443535aa300>.
2696 2015-07-15 Paul Eggert <eggert@cs.ucla.edu>
2700 2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
2701 2015-07-05 acl-permissions: Fix on FreeBSD
2702 2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
2703 * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
2704 * lib/set-permissions.c: Copy from gnulib.
2706 Port to stricter C99
2707 * src/keyboard.h (kbd_buffer_store_event_hold):
2708 Don't return a void expression.
2710 2015-07-15 Xue Fuqiao <xfq.free@gmail.com>
2712 * doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
2714 2015-07-14 Michael Albinus <michael.albinus@gmx.de>
2716 New autorevert tests.
2717 * test/automated/auto-revert-tests.el: New file.
2719 2015-07-14 Paul Eggert <eggert@cs.ucla.edu>
2721 Clear gcprolist etc. after stack overflow
2722 After stack overflow, command_loop calls init_eval, and this needs to
2723 clear gcprolist and byte_stack_list (Bug#20996).
2724 * src/alloc.c (init_alloc):
2725 Move gcprolist and byte_stack_list initialization from here ...
2726 * src/eval.c (init_eval): ... to here.
2728 2015-07-13 Xue Fuqiao <xfq.free@gmail.com>
2730 * doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
2732 2015-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2734 Avoid deprecated enums in mac-ct font backend driver
2735 * src/macfont.m (mac_font_copy_default_descriptors_for_language)
2736 (mac_ctfont_get_advance_width_for_glyph)
2737 (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
2739 Cache font family in mac-ct font backend driver
2740 * src/macfont.m (macfont_family_cache): New variable.
2741 (syms_of_macfont): Initialize it.
2742 (macfont_available_families_cache): New variable.
2743 (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
2744 (macfont_set_family_cache, macfont_invalidate_available_families_cache)
2745 (macfont_handle_font_change_notification)
2746 (macfont_init_font_change_handler)
2747 (macfont_copy_available_families_cache): New functions.
2748 (macfont_create_family_with_symbol): Use font family caches.
2749 (macfont_list, macfont_list_family): Use
2750 macfont_copy_available_families_cache instead of
2751 mac_font_create_available_families.
2753 2015-07-12 Dmitry Gutov <dgutov@yandex.ru>
2755 Show the default value in the prompt
2756 * lisp/progmodes/xref.el: Add `M-?' binding for
2757 xref-find-references. Declare functions `grep-read-files' and
2758 `grep-expand-template'.
2759 (xref--read-identifier): Show the default value in the prompt.
2761 When called with prefix argument, ask for file patterns to search as well
2762 * lisp/progmodes/xref.el (xref-find-regexp): When called with
2763 prefix argument, ask for file patterns to search as well. When
2764 prompting for the directory, require an existing one.
2765 (xref-collect-matches): Add a new argument, FILES. Use it in the
2768 Add `project-ignores'
2769 * lisp/progmodes/project.el (project-ignores): New generic
2770 function, and an implementation for the VC project type.
2771 * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
2772 variant of rgrep-default-command that handles a generic list of
2774 (xref-collect-matches): Use it, and pass through to it the value
2775 of the newly added argument.
2776 (xref-find-regexp): Handle ignored paths within the project.
2777 Remove outdated comment.
2778 * lisp/vc/vc.el (vc-default-ignore-completion-table):
2779 Skip the comments and the empty lines.
2781 2015-07-12 Xue Fuqiao <xfq.free@gmail.com>
2783 * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
2785 2015-07-11 Eric Abrahamsen <eric@ericabrahamsen.net>
2787 gnus-registry.el: Correct function argument order
2788 * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
2789 Reverse the order of function arguments.
2791 2015-07-11 Dmitry Gutov <dgutov@yandex.ru>
2793 Bind grep-highlight-matches to nil
2794 * lisp/progmodes/xref.el (xref-collect-matches):
2795 Bind grep-highlight-matches to nil (bug#20728).
2797 2015-07-11 Nikolaus Rath <Nikolaus@rath.org>
2799 nnimap.el: Fix IMAP message size parsing
2800 * lisp/gnus/nnimap.el (nnimap-transform-headers):
2801 Don't assume that UID comes before RFC822.SIZE.
2803 2015-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
2805 * lisp/gnus/nnimap.el: Clean up "unused var" warnings
2806 (auth-source-creation-prompts): Declare.
2807 (nnimap-retrieve-headers, nnimap-status-message)
2808 (nnimap-request-create-group, nnimap-request-delete-group)
2809 (nnimap-close-group, nnimap-request-move-article)
2810 (nnimap-request-accept-article, nnimap-request-newgroups)
2811 (nnimap-request-post, nnimap-dummy-active-number)
2812 (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
2813 (nnimap-parse-flags): Remove unused var `p'.
2814 (nnimap-retrieve-group-data-early): Remove unused var `groups'.
2815 (nnimap-flags-to-marks): Remove unused var `totalp'.
2817 2015-07-10 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
2819 * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
2821 2015-07-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2823 * src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
2825 2015-07-09 Dmitry Gutov <dgutov@yandex.ru>
2827 Don't check the exit status, it can be misleading
2828 * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
2829 exit status, it can be misleading.
2831 Introduce a Project API
2832 * lisp/progmodes/project.el: New file.
2833 * lisp/cedet/ede.el: (project-try-ede): New function.
2834 (project-root): New implementation.
2835 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
2836 Set project-search-path-function.
2837 (elisp--xref-find-references): Delegate some logic to
2838 project-search-path.
2839 (elisp-search-path): New function.
2840 (elisp-xref-find): Don't implement `matches' anymore.
2841 * lisp/progmodes/etags.el: Don't implement `matches'.
2842 Delegate some logic to project-search-path.
2843 (etags-search-path): New function.
2844 * lisp/progmodes/xref.el (xref-find-function):
2845 Remove `matches' from the API.
2846 (xref-find-regexp): Move whatever common logic was in elisp and
2847 etags implementations, and search the directories returned by
2848 project-directories and project-search-path.
2850 2015-07-09 Nicolas Petton <nicolas@petton.fr>
2852 * test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
2854 Add support for gv.el in map.el
2855 * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
2856 * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
2857 * test/automated/map-tests.el: Update tests to work with the new
2858 implementations of map-elt and map-put.
2860 2015-07-09 Glenn Morris <rgm@gnu.org>
2862 * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
2864 2015-07-09 Dmitry Gutov <dgutov@yandex.ru>
2866 Syntax-propertize until the end of the line first
2867 * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
2868 until the end of the line first.
2870 2015-07-09 Xue Fuqiao <xfq.free@gmail.com>
2872 * doc/emacs/files.texi (File Archives): Add a cross reference.
2874 2015-07-08 Nikolaus Rath <Nikolaus@rath.org>
2876 nnimap.el: Handle plain value for nnimap-stream
2877 * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
2878 capabilities, so that a 'plain value for the `nnimap-stream' server
2879 variable is handled correctly.
2880 * doc/misc/gnus.texi (Customizing the IMAP Connection):
2881 Document the 'plain option.
2883 2015-07-08 Leo Liu <sdl.web@gmail.com>
2885 Fix bug in thing-at-point--bounds-of-well-formed-url
2886 * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
2887 sure boundary contains current point.
2889 2015-07-08 Dmitry Gutov <dgutov@yandex.ru>
2891 * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
2893 Declare whitespace-line-column a safe file-local
2894 * lisp/whitespace.el (whitespace-line-column): Declare to be a
2895 safe file-local when the value is an integer.
2897 2015-07-08 Eric Abrahamsen <eric@ericabrahamsen.net>
2899 gnus-group.el: Check if group names are already strings
2900 * lisp/gnus/gnus-group.el (gnus-group-group-name):
2901 The group name may already be a string.
2902 Specifically, in the group list reached from the *Server* buffer,
2903 the 'gnus-group text property returns a string. Everywhere else
2904 it returns a symbol.
2906 nnimap.el: Remove unused let variables
2907 * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
2909 2015-07-08 Eli Zaretskii <eliz@gnu.org>
2911 Support "maximized" property of runemacs's shortcut
2912 * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
2913 the '--maximized' switch to Emacs.
2915 Support "minimized" property of runemacs's shortcut
2916 * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
2917 pass the '--iconic' switch to Emacs. (Bug#20991)
2919 2015-07-08 Xue Fuqiao <xfq.free@gmail.com>
2922 * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
2924 * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
2925 Add a cross reference.
2927 2015-07-08 Nicolas Richard <youngfrog@members.fsf.org>
2929 * lisp/obsolete/landmark.el: Add Obsolete-since header
2931 2015-07-07 Glenn Morris <rgm@gnu.org>
2933 * test/automated/ert-tests.el (ert-test-deftest):
2934 Update for recent changes.
2936 2015-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
2938 (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
2939 * lisp/emacs-lisp/gv.el (gv-setter): New function.
2940 (gv-invalid-place): New error.
2942 (gv-synthetic-place, gv-delay-error): New places.
2943 * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
2944 (cl-defgeneric, cl-defmethod): Use gv-setter.
2946 2015-07-07 Fabrice Popineau <fabrice.popineau@gmail.com>
2948 Make vc-tests work with MSYS svn program
2949 * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
2950 svn is an MSYS program.
2952 2015-07-07 Ken Brown <kbrown@cornell.edu>
2954 Improve recent change to emacsclient on Cygwin
2955 * lisp/server.el (server-process-filter): Remove redundant check
2956 that 'cygwin-convert-file-name-from-windows' is defined as a
2957 function on Cygwin. Don't call that function unless its argument
2958 starts with a drive letter.
2960 2015-07-07 Artur Malabarba <bruce.connor.am@gmail.com>
2962 * lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
2963 Fix void variable due to `found-something' being in the wrong `let'.
2965 2015-07-07 Nicolas Richard <theonewiththeevillook@yahoo.fr>
2967 * lisp/play/landmark.el: Move to lisp/obsolete/
2969 2015-07-07 Martin Rudalics <rudalics@gmx.at>
2971 Have `x-show-tip' handle `right' and `bottom' frame parameters.
2972 * src/nsfns.m (compute_tip_xy, Fx_show_tip)
2973 * src/w32fns.c (compute_tip_xy, Fx_show_tip)
2974 * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
2975 tooltips also via `right' and `bottom' frame parameters.
2977 2015-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
2979 Add online-help support to describe types
2980 * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
2981 (describe-symbol): Improve the selection of default.
2982 * lisp/help-mode.el: Require cl-lib.
2983 (describe-symbol-backends): Move from help-fns.el.
2984 (help-make-xrefs): Use it.
2985 * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
2987 (cl--typedef-regexp): New const.
2988 (find-function-regexp-alist): Add entry for types.
2989 (cl-help-type, cl-type-definition): New buttons.
2990 (cl-find-class): New function.
2991 (cl-describe-type): New command.
2992 (cl--describe-class, cl--describe-class-slot)
2993 (cl--describe-class-slots): New functions, moved from eieio-opt.el.
2994 * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
2995 (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
2996 New functions. Moved from eieio-opt.el.
2997 (cl--generic-class-parents): New function, extracted from
2998 cl--generic-struct-specializers.
2999 (cl--generic-struct-specializers): Use it.
3000 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
3001 Improve constructor's docstrings.
3002 (cl-struct-unknown-slot): New error.
3003 (cl-struct-slot-offset): Use it.
3004 * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
3005 definition in current-load-list.
3006 * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
3007 (eieio--add-new-slot): Set it.
3008 (eieio-defclass-internal): Use new name for current-load-list.
3009 (eieio-oref): Add compiler-macro to warn about unknown slots.
3010 * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
3011 as compile-time as well. Improve constructor docstrings.
3012 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
3013 (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
3014 (eieio-class-def): Remove button.
3015 (eieio-help-constructor): Use new name for load-history element.
3016 (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
3017 (eieio-method-documentation): Move to cl-generic.el.
3018 (eieio-display-method-list): Use new names.
3019 * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
3020 Add "define-linline".
3021 (lisp-fdefs): Remove "defsubst".
3022 (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
3023 * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
3024 (macroexp--warn-and-return): Use it to avoid inf-loops.
3025 Add `compile-only' argument.
3027 2015-07-06 Fabián Ezequiel Gallina <fgallina@gnu.org>
3029 python.el: Fix local/remote shell environment setup
3030 * lisp/progmodes/python.el (python-shell-with-environment): Fix
3031 remote/local environment setup.
3032 * test/automated/python-tests.el (python-shell-with-environment-1)
3033 (python-shell-with-environment-2): New tests.
3035 2015-07-06 Glenn Morris <rgm@gnu.org>
3037 * lisp/simple.el (set-variable): Tweak recent doc fix.
3039 2015-07-06 Ken Brown <kbrown@cornell.edu>
3041 * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
3043 2015-07-06 Glenn Morris <rgm@gnu.org>
3045 * lisp/simple.el (set-variable): Use user-error for type mismatch.
3047 2015-07-06 Ken Brown <kbrown@cornell.edu>
3049 * src/emacs.c (main): Don't increase the stack size on Cygwin
3051 2015-07-06 Stefan Monnier <monnier@iro.umontreal.ca>
3053 (describe-symbol): Rewrite describe-function-or-variable
3054 * lisp/help-fns.el (describe-symbol-backends): New var.
3055 (help-xref-stack-item): Declare.
3056 (describe-symbol): Rename from describe-function-or-variable.
3057 Rewrite using describe-symbol-backends instead of help-xref-interned.
3058 * lisp/help.el (help-map): Use it.
3059 * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
3060 (help-xref-interned): Make it into an obsolete alias.
3062 (eieio-persistent-save): Don't ignore `file' arg (bug#20972)
3063 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
3064 `file' arg. Always use utf-8-emacs. Use with-temp-buffer and cl-letf.
3066 2015-07-06 Wolfgang Jenkner <wjenkner@inode.at>
3068 Fix parsing glitches in dired-mark-sexp (bug#13575)
3069 * lisp/dired-x.el (dired-x--string-to-number): New function.
3070 (dired-mark-sexp): Use it. Tweak dired-re-inode-size. Fix usage
3071 of directory-listing-before-filename-regexp. Consider
3072 forward-word harmful and replace it. Add more verbiage in
3073 comments and doc string.
3075 2015-07-06 Fabián Ezequiel Gallina <fgallina@gnu.org>
3077 python.el: Respect process environment for remote shells
3078 * lisp/progmodes/python.el
3079 (python-shell-calculate-process-environment): Calculate
3080 process-environment or tramp-remote-process-environment depending
3081 whether current file is remote.
3082 (python-shell-calculate-exec-path): Calculate exec-path or
3083 tramp-remote-path depending whether current file is remote.
3084 (python-shell-with-environment): New macro.
3085 (python-shell-prompt-detect, python-shell-calculate-command)
3086 (python-shell-make-comint, python-check): Use it.
3088 python.el: Avoid making let-bound defvars buffer local (Bug#18244)
3089 * lisp/progmodes/python.el (python-shell--interpreter)
3090 (python-shell--interpreter-args): New vars.
3091 (inferior-python-mode, python-shell-make-comint): Use them.
3093 python.el: Fixes for IPython 3.x (Bug#20580)
3094 * lisp/progmodes/python.el:
3095 (python-shell-completion-native-setup): Fix IPython 3.x setup.
3096 (python-shell-completion-native-get-completions): Fix timeout
3099 python.el: Fix mark-defun behavior (Bug#19665)
3100 * lisp/progmodes/python.el: (python-mark-defun): New function.
3101 * test/automated/python-tests.el (python-mark-defun-1)
3102 (python-mark-defun-2, python-mark-defun-3): New tests.
3104 2015-07-05 Glenn Morris <rgm@gnu.org>
3106 * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
3107 such as "extends(parent), private". (Bug#20969)
3108 * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
3111 2015-07-05 Paul Eggert <eggert@cs.ucla.edu>
3113 Avoid duplicate calls to current_timespec
3114 * src/process.c (wait_reading_process_output):
3115 Cache current_timespec results as long as we're not waiting.
3117 2015-07-05 Ian Kelling <ian@iankelling.org>
3119 Avoid returning early reading process output due to SIGIO
3120 * src/process.c (wait_reading_process_output): Extend the behavior of
3121 not breaking due to not finding output when a timer has lowered the
3122 timeout to include when SIGIO lowers the timeout.
3124 Don't return as fast reading any process output
3125 * src/process.c (wait_reading_process_output):
3126 The patch for Bug#17647 returns too fast sometimes when reading
3127 from any processes. Revert part of it, and limit the timeout more
3128 sensibly (Bug#20978).
3130 Refactor timeouts in wait_reading_process_output
3131 * src/process.c (wait_reading_process_output):
3132 Simplify timeouts with an enum. Remove a redundant condition.
3135 Remove ADAPTIVE_READ_BUFFERING ifdef
3136 * src/process.c (make-process, make-pipe-process, deactivate_process)
3137 (wait_reading_process_output, read_process_output, send_process)
3138 (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
3139 added in case there was an operating system in which it was not
3140 useful. That was 11 years ago and it hasn't happened. Make
3141 development easier by not considering the effect of changes on a
3142 theoretical OS where this is disabled (Bug#20978).
3144 2015-07-05 Glenn Morris <rgm@gnu.org>
3146 * lisp/simple.el (set-variable): Doc fix.
3148 * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
3150 2015-07-05 Ian Kelling <ian@iankelling.org>
3152 accept-process-output fix
3153 This is a followon to the fix for Bug#17647 (Bug#20976).
3154 * src/process.c (status_notify): Fix too high return in some cases.
3156 2015-07-05 Artur Malabarba <bruce.connor.am@gmail.com>
3158 * lisp/character-fold.el (character-fold-table):
3159 Only fold decompositions if at least one character is non-spacing.
3162 2015-07-05 Paul Eggert <eggert@cs.ucla.edu>
3166 2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
3167 2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
3168 2015-07-02 update-copyright: fix test failure with perl >= 5.22
3169 2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
3170 2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
3171 * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
3172 * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
3174 2015-07-05 Christoph Wedler <christoph.wedler@sap.com>
3176 Respect `prog-indentation-context' in python.el
3177 * lisp/progmodes/python.el (python-indent-guess-indent-offset)
3178 (python-indent-context, python-indent--calculate-indentation)
3179 (python-info-current-defun)
3180 (python-info-dedenter-opening-block-message)
3181 (python-info-line-ends-backslash-p)
3182 (python-info-beginning-of-backslash)
3183 (python-info-continuation-line-p): Use `prog-widen'.
3184 (python-indent--calculate-indentation)
3185 (python-indent--calculate-levels)
3186 (python-indent-calculate-indentation): Use `prog-first-column'.
3187 (python-indent--calculate-levels): Simplify.
3188 Ignore also initial empty lines for syntax calculation.
3189 * lisp/progmodes/python.el (python-indent-context): Return
3190 :no-indent for first non-empty line, not just in line 1.
3191 * test/automated/python-tests.el (python-indent-base-case)
3192 (python-indent-inside-paren-1, python-indent-inside-paren-2)
3193 (python-indent-inside-paren-3, python-indent-inside-paren-4)
3194 (python-indent-inside-paren-5, python-indent-inside-paren-6)
3195 (python-indent-after-backslash-1)
3196 (python-indent-after-backslash-2)
3197 (python-indent-after-backslash-3)
3198 (python-indent-after-backslash-4, python-indent-inside-string-1):
3199 Expect :no-indent for first non-empty line.
3201 2015-07-04 Daniel Colascione <dancol@dancol.org>
3203 Factor isearch word description into new function
3204 * lisp/isearch.el (isearch--describe-word-mode): New function.
3205 (isearch-message-prefix, isearch-query-replace): Use it.
3207 2015-07-04 Eli Zaretskii <eliz@gnu.org>
3209 Fix mouse pointer on w32 when a menu is active
3210 * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
3211 shape while a menu is in use. This started happening since we now
3212 send WM_EMACS_SHOWCURSOR messages when the mouse moves.
3214 2015-07-04 Martin Rudalics <rudalics@gmx.at>
3216 Fix processing of alpha parameter for Windows tip frames (Bug#17344)
3217 * src/w32fns.c (x_create_tip_frame): Fix processing alpha
3218 parameter. (Bug#17344)
3220 Have `compilation-set-window' use right window for getting fringes (Bug#20829)
3221 * lisp/progmodes/compile.el (compilation-set-window): Take
3222 `window-fringes' from argument window. (Bug#20829)
3224 2015-07-03 Glenn Morris <rgm@gnu.org>
3226 Update eieio tests for recent eieio-core change.
3227 * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
3228 * test/automated/eieio-tests.el
3229 (eieio-test-32-slot-attribute-override-2):
3230 Replace the deleted eieio--class-v with cl--find-class.
3232 2015-07-03 Martin Rudalics <rudalics@gmx.at>
3234 Fix some issues with `window-divider-mode'
3235 * lisp/frame.el (window-divider-default-places): New option.
3236 (window-divider-mode): Remove option.
3237 (window-divider-mode): Make it a "regular" minor mode.
3238 (window-divider-width-valid-p): Drop frame- prefix.
3239 (window-divider-mode-apply): New argument ENABLE. Drop frame-
3240 prefix. Handle `window-divider-default-places'.
3241 (frame--window-divider-mode-set-and-apply): Remove.
3242 (window-divider-default-bottom-width)
3243 (window-divider-default-right-width): Drop :group entries.
3244 * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
3245 (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
3246 (menu-bar-no-window-divider): Set `window-divider-default-places'
3247 and call `window-divider-mode'.
3248 * doc/emacs/frames.texi (Window Dividers): Document
3249 `window-divider-default-places'.
3251 2015-07-02 Xue Fuqiao <xfq.free@gmail.com>
3253 Add cross references in documentation
3254 * doc/emacs/display.texi (Displaying Boundaries):
3255 * doc/emacs/search.texi (Word Search): Add cross references.
3257 2015-07-02 Paul Eggert <eggert@cs.ucla.edu>
3259 -batch should not affect ‘’ -> `' display
3260 * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
3263 2015-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
3265 * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
3266 * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el,
3267 lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
3268 Use cl--find-class instead.
3270 * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
3272 2015-07-02 Martin Rudalics <rudalics@gmx.at>
3274 Some further fixes in Change Window node. (Bug#20183)
3275 * doc/emacs/windows.texi (Change Window): Replace "rearranging"
3276 by "resizing" in section title. Add some concept indices.
3277 Suggested by N. Jackson (Bug#20183).
3279 Reference window dividers in Change Window section.
3280 * doc/emacs/windows.texi (Change Window): Reference window
3283 Document new `window-divider-mode'.
3284 * lisp/frame.el (window-divider-mode): Fix doc-string.
3285 * doc/emacs/frames.texi (Window Dividers): New section.
3287 Improve accessibility of window dividers. (Bug#20183)
3288 * lisp/faces.el (window-divider)
3289 (window-divider-first-pixel, window-divider-last-pixel): Change
3290 membership from `frames' to `window-divider' customization group.
3291 * lisp/frame.el (window-divider): New customization group.
3292 (window-divider-mode): New minor mode.
3293 (window-divider-default-bottom-width)
3294 (window-divider-default-right-width): New options.
3295 (frame--window-divider-previous-mode): New variable.
3296 (frame-window-divider-width-valid-p)
3297 (frame--window-divider-mode-apply)
3298 (frame--window-divider-mode-set-and-apply): New functions.
3299 * lisp/menu-bar.el (menu-bar-options-save): Save
3300 window-divider-mode settings.
3301 (menu-bar-window-divider-customize)
3302 (menu-bar-bottom-and-right-window-divider)
3303 (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
3304 (menu-bar-no-window-divider): New functions.
3305 (menu-bar-showhide-window-divider-menu): New variable.
3306 (menu-bar-showhide-menu): Show/hide window divider menu.
3307 * lisp/mouse.el (mouse-split-window-vertically)
3308 (mouse-split-window-horizontally): Replace `error' by
3309 `user-error'. Bind `window-combination-resize' to nil.
3310 (top-level): Add/reorder mouse key bindings on mode- and
3313 2015-07-02 Paul Eggert <eggert@cs.ucla.edu>
3315 Don't display ‘’ as `' under X in en_GB
3316 The curved quote setup code invokes (char-displayable-p ?‘),
3317 but this isn’t reliable until after the X frame replaces the
3318 terminal frame (Bug#20926).
3319 * lisp/international/mule-cmds.el (set-locale-environment):
3320 Move curved quote setup code from here ...
3321 * lisp/startup.el (command-line): ... to here, after creating
3324 2015-07-01 Nicolas Richard <youngfrog@members.fsf.org>
3326 * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring
3328 Add argument to reverse the meaning of ido-restrict-to-matches
3329 * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
3330 to reverse the meaning (Bug#15631).
3332 2015-07-01 Eli Zaretskii <eliz@gnu.org>
3334 Be more tolerant to fonts named "Foobar-12"
3335 * src/frame.c (x_set_font): If font_spec_from_name returns nil,
3336 don't barf; instead, request a new fontset to be generated. This
3337 avoids unnecessarily rejecting fonts named against XLFD rules. See
3338 http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
3339 for the description of the original problem.
3340 * lisp/faces.el (set-face-attribute): Don't be fooled too easily
3341 by a hyphen in a font's name.
3343 Fix value of posn-at-pont in R2L lines
3344 * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
3345 coordinate of -1, for a newline in a right-to-left line that
3346 overflowed into the left fringe.
3348 2015-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
3350 (cl--copy-slot-descriptor): Copy the `props' alist as well
3351 * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
3352 Rename from cl--copy-slot-descriptor.
3353 (cl--copy-slot-descriptor): New function. Copy the alist (bug#20914).
3355 2015-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
3357 * lisp/term/xterm.el (xterm--query): Avoid generating garbage
3358 (xterm-query-timeout): New var.
3359 (xterm--query): Use it. Fallback on async method if we timeout before
3360 getting the first byte of the reply (bug#12354).
3362 2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
3366 2015-06-30 Xue Fuqiao <xfq.free@gmail.com>
3368 * doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
3370 2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
3372 In strings, prefer plain ` and ' to \` and \'
3373 * lisp/allout.el (allout-insert-listified):
3374 * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
3375 * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
3376 (ls-lisp-string-lessp):
3377 * lisp/menu-bar.el (menu-bar-open):
3378 * lisp/obsolete/otodo-mode.el (todo-top-priorities):
3379 * lisp/progmodes/compile.el (compile):
3380 * lisp/progmodes/etags.el (tags-loop-scan):
3381 * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
3382 * lisp/subr.el (posn-actual-col-row):
3383 * lisp/term/pc-win.el (x-list-fonts):
3384 * lisp/textmodes/texinfmt.el (texinfmt-version):
3385 * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
3386 * lisp/time.el (display-time-world-list):
3387 * lisp/tmm.el (tmm-menubar):
3388 * src/buffer.c (syms_of_buffer):
3389 * src/fileio.c (syms_of_fileio):
3390 Omit unnecessary and confusing backslash before quote.
3391 * lisp/erc/erc.el (erc-cmd-LASTLOG):
3392 * lisp/progmodes/flymake.el (flymake-fix-file-name):
3393 * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
3394 Fix string that was intended to escape a backslash and not a quote.
3396 2015-06-30 Glenn Morris <rgm@gnu.org>
3398 * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
3400 * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
3401 Replace hard-coded lists with wildcard + filter-out.
3403 * configure.ac (system-configuration-features): Add X11, NS.
3405 Improve reproducibility of generated loaddefs file.
3406 * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
3407 Make the return value the modtime of the input file (if no autoloads).
3408 (update-directory-autoloads): In the "no autoloads" section,
3409 use "most recent modtime" rather than "current time".
3411 2015-06-30 Artur Malabarba <bruce.connor.am@gmail.com>
3413 * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic
3416 2015-06-30 Nicolas Petton <nicolas@petton.fr>
3418 * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
3420 Add seq-min and seq-max
3421 Bump version number.
3422 * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
3423 * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
3425 2015-06-30 Eli Zaretskii <eliz@gnu.org>
3427 Make sure sleep-for always delays for as long as it's told
3428 * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
3429 a loop, to ensure we always wait exactly the required amount of
3432 2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
3434 Fix pointer signedness glitch
3435 * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
3437 2015-06-30 Eli Zaretskii <eliz@gnu.org>
3439 Don't block changes in mouse pointer inside 'track-mouse'
3441 * doc/lispref/frames.texi (Mouse Tracking): Document the special
3442 effect of setting 'track-mouse' to 'dragging'.
3443 * lisp/textmodes/artist.el (artist-mouse-draw-continously):
3444 * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
3445 * lisp/mouse-drag.el (mouse-drag-throw):
3446 * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
3447 to avoid changes in the shape of the mouse pointer.
3448 * src/xdisp.c (define_frame_cursor1): Don't change the mouse
3449 pointer shape when do_mouse_tracking has the value of 'dragging',
3450 not just any non-nil value. (Bug#20934)
3451 (syms_of_xdisp): DEFSYM 'dragging'.
3453 2015-06-30 Artur Malabarba <bruce.connor.am@gmail.com>
3455 * lisp/isearch.el (isearch-toggle-word): Fix toggle
3457 * lisp/emacs-lisp/package.el (package-compute-transaction):
3458 Don't assume version sorting.
3460 * lisp/emacs-lisp/package.el (package--save-selected-packages):
3461 Don't save before init time, to avoid overwriting configurations.
3464 2015-06-30 Xue Fuqiao <xfq.free@gmail.com>
3466 Add cross references.
3467 * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
3470 2015-06-29 Ted Zlatanov <tzz@lifelogs.com>
3472 cfengine.el: update for the upcoming CFEngine 3.7 release
3473 Update for the upcoming CFEngine 3.7 release: support macros and
3474 quoted context strings; reformat JSON; indent promise attributes 2
3475 units by default; give function parameter descriptions in the eldoc
3477 * cfengine.el: Update version and docs and fix name. Autoload
3478 `json-pretty-print'. Support new features in 3.7.
3479 (cfengine-parameters-indent): Set default promise attribute indent to
3480 2 more than the promise itself.
3481 (cfengine3-macro-regex): New variable to match the new macro syntax.
3482 (cfengine3-font-lock-keywords): Use it to highlight macros.
3483 (cfengine3-indent-line): Use it to indent macros to column 0.
3484 (cfengine3-class-selector-regex): Update for the new quoted strings
3486 (cfengine3-reformat-json-string): New function to reformat a JSON
3487 string using `json-pretty-print'.
3488 (cfengine3-format-function-docstring): Use function parameter
3489 description if it's provided by the cf-promises syntax dump.
3491 2015-06-29 Michael R. Mauger <michael@mauger.com>
3493 Cygwin emacsclient handles w32 file names
3495 2015-06-29 Katsumi Yamaoka <yamaoka@jpl.org>
3497 * lisp/isearch.el (isearch-exit): Don't call isearch-done twice (bug#20925).
3499 2015-06-29 Eli Zaretskii <eliz@gnu.org>
3501 * doc/lispref/text.texi (Sticky Properties): Improve wording.
3504 Allow font names that end in "-NN", where NN is a number
3505 * src/font.c (font_load_for_lface): If the font-spec didn't match
3506 any available fonts, try again without interpreting trailing "-NN"
3507 as the font size. For the description of the original problem, see
3508 http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
3510 .gdbinit followup to changes in !USE_LSB_TAG
3511 * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
3512 !USE_LSB_TAG, as Emacs no longer does.
3514 2015-06-29 Wolfgang Jenkner <wjenkner@inode.at>
3516 * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
3517 Otherwise `s p' of f and F will stomp on each other's value. (Bug#20916)
3519 2015-06-29 Artur Malabarba <bruce.connor.am@gmail.com>
3521 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
3522 Don't block remember-pos if buffer isn't displayed. (Bug#20921)
3524 2015-06-29 Nicolas Richard <theonewiththeevillook@yahoo.fr>
3526 * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point as additional guess
3528 * lisp/emacs-lisp/package.el (describe-package): Convert the guess to a string
3530 2015-06-28 Paul Eggert <eggert@cs.ucla.edu>
3532 apropos-library quoting fix
3533 * lisp/apropos.el (apropos-library): Quote library consistently
3534 with the rest of the quoting used by apropos.
3536 Clarify interpreter-mode-alist doc
3537 * lisp/files.el (interpreter-mode-alist):
3538 Reword to avoid confusing quoting that wasn't working anyway.
3540 2015-06-28 Michael Albinus <michael.albinus@gmx.de>
3542 Sync with Tramp 2.2.12
3543 * doc/misc/trampver.texi:
3544 * lisp/net/trampver.el: Update release number.
3545 * test/automated/tramp-tests.el (tramp-test13-make-directory):
3548 2015-06-28 Artur Malabarba <bruce.connor.am@gmail.com>
3550 * lisp/isearch.el (isearch-mode): Don't char-fold regexps
3553 2015-06-27 Dmitry Gutov <dgutov@yandex.ru>
3555 Bind grep-highlight-matches around the rgrep call
3556 * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
3557 around the rgrep call (bug#20728).
3559 Put "--color" before the other options in grep-command
3560 * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
3561 before the other options in grep-command (bug#20912).
3563 Add --color Grep option to the command dynamically
3564 * lisp/progmodes/grep.el (grep-template, grep-find-template):
3565 Update the description for <C>. (Bug#20728)
3566 (grep-compute-defaults): Don't add the --color option to
3567 grep-options. Only add it to grep-command.
3568 (grep-expand-keywords): Expand the env value opts into <C>.
3569 (grep-expand-template): Replace cf in the env with the opts list,
3570 that can include -i and --color.
3571 * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
3572 "--color=always" from the template, because we don't have to.
3574 2015-06-27 Paul Eggert <eggert@cs.ucla.edu>
3576 cl-extra fixes for most-negative-fixnum
3577 * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
3578 Don't mishandle an argument equal to most-negative-fixnum,
3579 whose absolute value equals itself.
3580 (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
3582 Initialize cl--gensym-counter to 0
3583 Previously it was initialized to a random value, which made it
3584 harder to reproduce earlier Emacs runs. The need for a random
3585 value went away when Emacs introduced and used the #: syntax for
3586 uninterned symbols (Bug#20862).
3587 * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
3588 Document that cl--gensym-counter now starts with 0.
3589 * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
3590 (cl--random-time): Move to near only remaining use.
3591 * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
3593 Improve docstring for macroexp-let2
3594 * lisp/emacs-lisp/macroexp.el (macroexp-let2):
3595 Improve as per suggestion by RMS in:
3596 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
3597 Also, rename args to match new doc string.
3599 2015-06-27 Eli Zaretskii <eliz@gnu.org>
3601 Fix VC test suite on MS-Windows
3602 * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
3603 always starts with 3 slashes after the colon.
3604 * test/automated/vc-tests.el (vc-test--create-repo-function): Use
3605 'w32-application-type' to invoke CVS on MS-Windows with properly
3606 formatted CVSROOT directory name.
3608 Add a new function w32-application-type
3609 * src/w32proc.c (Fw32_application_type): New function.
3611 Avoid error in TLS connections due to incorrect format
3612 * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
3613 the call to 'error', instead of the unsupported %u. Reported by
3614 lo2net <fangtao0901@gmail.com>. (Bug#20908)
3616 2015-06-26 Artur Malabarba <bruce.connor.am@gmail.com>
3618 * lisp/replace.el (replace-search): Fix regexp case (bug#20901)
3620 2015-06-26 Leo Liu <sdl.web@gmail.com>
3622 Fix indentation for with-output-to-string
3623 * lisp/emacs-lisp/cl-indent.el: Fix indentation for
3624 `with-output-to-string' in elisp.
3625 Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string"
3626 This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
3628 2015-06-26 Eli Zaretskii <eliz@gnu.org>
3630 Minor corrections in ELisp manual
3631 * doc/lispref/nonascii.texi (Character Properties): Correct
3632 inaccuracies in description of values of the Unicode properties.
3634 Fix invisible mouse pointers on Windows.
3635 * src/w32fns.c: Include windowsx.h.
3636 (w32_wnd_proc): If the mouse moved and the mouse pointer is
3637 invisible, make it visible again even when the main (Lisp)
3639 * src/w32term.c (w32_toggle_invisible_pointer): Rather then
3640 garbaging the frame have the input thread call SetCursor.
3642 2015-06-26 Martin Rudalics <rudalics@gmx.at>
3644 Provide invisible mouse pointers on Windows. (Bug#6105) (Bug#12922)
3645 * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
3646 for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
3647 * src/w32term.c (w32_hide_hourglass): Handle
3648 f->pointer_invisible.
3649 (w32_toggle_invisible_pointer): New function.
3650 (w32_create_terminal): Add w32_toggle_invisible_pointer as
3651 toggle_invisible_pointer_hook for this terminal.
3653 2015-06-25 Xue Fuqiao <xfq.free@gmail.com>
3655 Doc fix for deletion commands
3656 'delete-char' does not respect the value of 'delete-active-region'.
3657 * doc/emacs/killing.texi (Deletion):
3658 Fix documentation for some single-char deletion commands.
3660 * doc/emacs/help.texi (Apropos):
3661 Improve documentation of 'apropos-do-all'.
3663 * doc/emacs/help.texi (Help Summary):
3664 Improve documentation of 'describe-mode'.
3666 2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
3668 Fix submake dependency bug with .h files
3669 * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
3670 Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
3671 before the submake in $(libsrc) would spin off a subsubmake
3672 for $(lib) in parallel with our submake for $(lib) (Bug#20894).
3674 2015-06-25 Artur Malabarba <bruce.connor.am@gmail.com>
3676 * lisp/character-fold.el (character-fold-table): Reuse `table'
3678 2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
3680 Translate undisplayable ‘ to `
3681 * doc/lispref/help.texi (Keys in Documentation):
3682 * lisp/international/mule-cmds.el (set-locale-environment):
3683 * lisp/term/w32console.el (terminal-init-w32console):
3684 * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
3685 If ‘ is not displayable, transliterate it to `, not to '. See:
3686 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
3688 Fix C99 incompatibilities in Cairo code
3689 * src/image.c (xpm_load) [USE_CAIRO]:
3690 * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
3691 Fix pointer signedness problem.
3693 2015-06-25 Oleh Krehel <ohwoeowho@gmail.com>
3695 lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
3696 * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
3697 `with-output-to-string' should have the same indent as `progn'.
3698 This is in line with the declaration of `with-output-to-string'.
3700 2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
3702 Get ‘./configure; make -C src emacs’ to work
3703 Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
3704 * lib-src/Makefile.in (../lib/libgnu.a):
3705 * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
3707 2015-06-24 Paul Eggert <eggert@cs.ucla.edu>
3709 Fix GC bugs --with-wide-int and Qnil == 0
3710 Use the same alignment for the !USE_LSB_TAG case as for the
3711 more-typical USE_LSB_TAG case. The attempt to support arbitrary
3712 alignments with !USE_LSB_TAG had subtle bugs in garbage collection
3713 once we changed the representation of symbols so that Qnil == 0.
3714 Problem reported by Eli Zaretskii (Bug#20862).
3715 * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
3716 * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
3717 (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
3718 Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
3719 * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
3720 This optimization in the !USE_LSB_TAG case is no longer valid when
3721 symbols are represented via offsets. Change the only use to
3722 assume that pointers might hide in objects.
3723 * src/lisp.h (alignas) [!USE_LSB_TAG]:
3724 Require support in this case, too.
3725 (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
3726 This is OK, because the !USE_LSB_TAG case now applies only when
3727 Lisp_Object is wider than void *, so there's no longer any need
3728 to shift the offset. Not shifting the offset means that
3729 symbol representations have the same alignment as pointers,
3730 which the GC assumes.
3732 2015-06-24 Xue Fuqiao <xfq.free@gmail.com>
3734 * doc/lispintro/emacs-lisp-intro.texi (Data types):
3735 Improve documentation of 'substring'.
3737 2015-06-24 Artur Malabarba <bruce.connor.am@gmail.com>
3739 * lisp/character-fold.el (character-fold-table): Fix table generation
3741 2015-06-24 Glenn Morris <rgm@gnu.org>
3743 * nextstep/Makefile.in (all): Make it the first target.
3744 (../src/emacs${EXEEXT}): Add rule for making it.
3746 2015-06-24 Artur Malabarba <bruce.connor.am@gmail.com>
3748 * etc/NEWS: Fix mention to old function name
3750 * lisp/character-fold.el: New file (Bug#20887)
3751 (character-fold-to-regexp): New function.
3752 * lisp/replace.el (replace-search): Check value of
3753 `character-fold-search'.
3754 * lisp/isearch.el: Move character-folding code to
3756 (isearch-toggle-character-fold): New command.
3757 (isearch-mode-map): Bind it to "\M-sf".
3758 (isearch-mode): Check value of `character-fold-search'.
3760 2015-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
3762 * lisp/subr.el (remove-from-invisibility-spec): Handle the t case
3763 * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
3764 is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
3766 * lisp/progmodes/xref.el: Avoid init-args in oref.
3767 * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
3768 (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
3770 2015-06-24 Glenn Morris <rgm@gnu.org>
3772 * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
3774 2015-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
3776 * lisp/gnus/nnmaildir.el: Silence lexical warnings
3777 * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
3779 (nnmaildir--update-nov): Remove unused var `numdir'.
3780 (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
3781 (nnmaildir-request-group, nnmaildir-request-create-group)
3782 (nnmaildir-request-post, nnmaildir-request-move-article)
3783 (nnmaildir-request-accept-article, nnmaildir-active-number): Mark unused args.
3784 (nnmaildir-get-new-mail, nnmaildir-group-alist)
3785 (nnmaildir-active-file): Declare.
3786 (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
3787 (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
3788 `mark', `end', `new-mark', and `mark-sym'.
3789 (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
3791 (nnmaildir-request-expire-articles):
3792 Remove unused vars `article', `stop' and `nlist2'.
3793 (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
3794 `end'. Use nnmaildir--article when dyn-binding is needed.
3795 Give the value directly in the `let' for `del-mark', `del-action',
3796 `add-action', and `set-action'. Don't use `add-to-list' on a local var.
3797 (nnmaildir-close-server): Declare those local vars that need to be
3800 2015-06-24 Paul Eggert <eggert@cs.ucla.edu>
3802 * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
3804 Port selection info fix to clang
3805 * src/keyboard.h (kbd_buffer_store_event_hold):
3806 Don't assume C11 semantics for alignof (Bug#20756).
3808 Fix bug that munged selection info
3809 On some optimizing C compilers, copying a structure did not
3810 copy the padding bytes between elements, and the type punning
3811 between struct input_data and struct selection_input_data did
3812 not work. Change the C code to use a proper union type instead.
3813 Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
3814 * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
3815 (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
3816 (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
3818 Use union buffered_input_event, not struct input_event.
3819 (clear_event, deliver_input_available_signal, process_special_events):
3820 Remove unnecessary forward decls.
3821 (kbd_buffer_store_buffered_event): New function, mostly just the
3822 old kbd_buffer_store_event_hold, except its argument is of type
3823 union buffered_input_event, not struct input_event.
3824 (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
3825 not needed otherwise. Argument is now of type
3826 struct selection_input_event *, not struct input_event *.
3827 All callers changed.
3828 (clear_event): Arg is now of type union buffered_input_event *,
3829 not struct input_event *. All callers changed.
3830 * src/keyboard.h [HAVE_X11]: Include "xterm.h".
3831 (union buffered_input_event): New type.
3832 (kbd_buffer_store_event_hold): Now an inline function,
3834 * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
3835 (struct input_event): Use it.
3836 * src/xselect.c (struct selection_event_queue):
3837 Make elements be of type struct selection_input_event,
3838 not struct input_event.
3839 (selection_input_event_equal): New static function.
3840 (x_queue_event): Use it.
3841 (x_queue_event, x_decline_selection_request)
3842 (x_selection_current_request, x_reply_selection_request)
3843 (x_handle_selection_request, x_handle_selection_clear)
3844 (x_handle_selection_event): Use struct selection_input_event,
3845 not struct input_event. All callers changed.
3846 (x_convert_selection): Omit unused first arg. All callers changed.
3847 (Fx_disown_selection_internal): Omit unnecessary union.
3848 * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
3849 rather than rolling our own equivalent. Prefer sie.kind when
3850 setting up that kind of structure.
3851 Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
3852 * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
3853 (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
3854 (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
3855 (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
3856 (SELECTION_EVENT_TIME, x_handle_selection_event):
3857 Arg is now of type struct selection_input_event *)
3858 not struct input_event *. All callers changed.
3860 2015-06-23 Glenn Morris <rgm@gnu.org>
3862 * Makefile.in (install-arch-dep): Simplify with Make conditionals.
3864 2015-06-23 Artur Malabarba <bruce.connor.am@gmail.com>
3866 * lisp/isearch.el: Fold many unicode characters to ASCII
3867 (isearch-character-fold-search, isearch--character-fold-extras)
3868 (isearch--character-fold-table): New variable.
3869 (isearch--character-folded-regexp): New function.
3870 (isearch-search-fun-default): Use them.
3871 * lisp/replace.el (replace-character-fold): New variable.
3872 (replace-search): Use it.
3873 * etc/NEWS: Document it.
3875 2015-06-23 Glenn Morris <rgm@gnu.org>
3877 Check for an input event before showing a dialog box. (Bug#20813)
3878 * lisp/subr.el (y-or-n-p):
3879 * src/fns.c (Fyes_or_no_p): Check last-input-event as well
3880 as last-nonmenu-event.
3882 2015-06-23 Jürgen Hartmann <juergen_hartman_@hotmail.com> (tiny change)
3884 Respect ‘switch-to-visible-buffer’ more rigidly. (Bug#20861)
3885 * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
3886 (switch-to-prev-buffer, switch-to-next-buffer): Respect
3887 switch-to-visible-buffer independent of the windows history.
3889 2015-06-23 Paul Eggert <eggert@cs.ucla.edu>
3891 * src/keyboard.c (last_timer_event): Remove unused var.
3893 2015-06-23 Artur Malabarba <bruce.connor.am@gmail.com>
3895 * test/automated/package-test.el (package-test-update-listing):
3898 2015-06-23 Glenn Morris <rgm@gnu.org>
3900 Revert 2014-06-25 nextstep/Makefile change.
3901 * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
3902 (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
3903 not as an order-only prerequisite.
3905 * configure.ac (--with-ns): Enable by default on OS X.
3907 2015-06-23 Leo Liu <sdl.web@gmail.com>
3909 Fix shell-for/backward-command to exclude spaces
3910 * lisp/shell.el (shell-forward-command, shell-backward-command):
3911 Handle the 'move case from re-search-forward/backward.
3914 2015-06-22 Juri Linkov <juri@linkov.net>
3916 * lisp/replace.el (query-replace-read-from): Add separator to
3917 the local binding of text-property-default-nonsticky. (Bug#20690)
3919 * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
3922 2015-06-22 Ken Brown <kbrown@cornell.edu>
3924 Enable CPU profiling on Cygwin
3925 * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
3926 change that undefined this.
3927 (SIGEV_SIGNAL): Ensure that this is defined as a macro.
3928 * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
3931 Improve diagnostics of profiler-cpu-start
3932 * src/profiler.c (setup_cpu_timer): Change return type to 'int';
3933 return -1 if the sampling interval is invalid.
3934 (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
3937 2015-06-22 Artur Malabarba <bruce.connor.am@gmail.com>
3939 * lisp/emacs-lisp/package.el: Exclude packages by name
3940 (package-hidden-regexps): New variable.
3941 (package-menu--refresh): Use it.
3942 (package-menu-hide-package): New command.
3944 * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding
3946 2015-06-22 Eli Zaretskii <eliz@gnu.org>
3948 Fix debug-timer-check on systems without HAVE_TIMERFD
3949 * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
3950 the expired timers, since wait_reading_process_output doesn't.
3951 (debug_timer_callback): Enlarge the tolerance to 20 msec.
3953 Fix RCS crashes in vc-test
3954 * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
3955 ports of 'ci' on MS-Windows by always passing the -t- switch.
3957 2015-06-22 Glenn Morris <rgm@gnu.org>
3959 * doc/emacs/package.texi (Packages):
3960 * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
3962 * doc/misc/efaq-w32.texi (Downloading): Copyedits. (Bug#20851)
3964 2015-06-22 Paul Eggert <eggert@cs.ucla.edu>
3966 Port tests to help-quote-translation
3967 * test/automated/ert-x-tests.el (ert-test-describe-test):
3968 * test/automated/package-test.el (package-test-describe-package)
3969 (package-test-signed): Allow straight quotes, too.
3971 2015-06-22 Dmitry Gutov <dgutov@yandex.ru>
3973 Make find-function-on-key use the current window
3974 * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
3975 Extract from `find-function-on-key', add a second argument.
3976 (find-function-on-key): Use it (bug#19679).
3977 (find-function-on-key-other-window)
3978 (find-function-on-key-other-frame): New commands.
3980 2015-06-21 Nicolas Petton <nicolas@petton.fr>
3982 Revert "Define `map-elt' as a generalized variable"
3983 This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
3985 2015-06-21 Ken Brown <kbrown@cornell.edu>
3987 Drop support for CPU profiling on Cygwin
3988 * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
3991 2015-06-21 Paul Eggert <eggert@cs.ucla.edu>
3993 Fix some “nested” quoting confusion in doc strings
3994 * lisp/emacs-lisp/advice.el (ad-map-arglists):
3995 * lisp/kermit.el (kermit-clean-on):
3996 * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
3997 * src/keyboard.c (Frecursive_edit):
3998 Use curved quotes when quoting text containing apostrophe,
3999 so that the apostrophe isn't curved in the output.
4001 2015-06-21 Nicolas Petton <nicolas@petton.fr>
4003 Define `map-elt' as a generalized variable
4004 * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
4005 * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
4006 * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
4007 `setf' with `map-elt'.
4008 * test/automated/map-tests.el: Comment out `test-map-put-literal'.
4010 2015-06-21 Michael Albinus <michael.albinus@gmx.de>
4012 Improve error handling in tramp-adb.el
4013 * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
4014 Improve error handling.
4016 2015-06-21 Nicolas Petton <nicolas@petton.fr>
4018 Reuse `alist-get' in map.el
4019 * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
4022 2015-06-21 Eli Zaretskii <eliz@gnu.org>
4024 Fix bytecomp-tests--warnings when $TMPDIR has a long name
4025 * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
4026 Allow the warning to begin on the 3rd, not only 2nd line, which
4027 happens if temporary-file-directory has a very long name.
4029 Expect 2 icalendar tests to fail on MS-Windows
4030 * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
4031 (icalendar-real-world): Make them expected failures on MS-Windows.
4033 2015-06-20 Paul Eggert <eggert@cs.ucla.edu>
4035 Improve port of settings UI to older displays
4036 * lisp/cus-start.el (standard): Don't assume curved quotes are
4037 easily distinguishable when users are tinkering with a setting
4038 that affects how curved quotes are generated.
4040 Fix quoting in electric-quote-mode doc string
4041 * lisp/electric.el (electric-quote-mode): Fix quoting.
4042 This is a fallout from the recent change introducing
4043 ‘help-quote-translation’.
4047 * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
4049 * src/doc.c (syms_of_doc): Remove unused symbols.
4051 2015-06-20 Martin Rudalics <rudalics@gmx.at>
4053 In ‘window-state-put’ undedicate target window. (Bug#20848)
4054 * lisp/window.el (window-state-put): Undedicate target window
4055 before putting STATE into it. (Bug#20848)
4057 2015-06-19 Paul Eggert <eggert@cs.ucla.edu>
4059 Merge from origin/emacs-24
4060 a5e6f33 Fixes: debbugs:20832
4061 b9f02cf Fixes: debbugs:20832
4063 2015-06-19 Eli Zaretskii <eliz@gnu.org>
4065 Fix file-in-directory-p when the directory is UNC
4066 * lisp/files.el (file-in-directory-p): Support files and
4067 directories that begin with "//". (Bug#20844)
4069 2015-06-19 Stephen Berman <stephen.berman@gmx.net>
4072 * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
4075 2015-06-19 Nicolas Richard <youngfrog@members.fsf.org>
4078 * lisp/calendar/todo-mode.el (todo-show): Signal an error
4079 if buffer for adding new todo file is empty but modified.
4081 2015-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
4083 (filepos-to-bufferpos): Further tweaks to the utf-16 code
4084 * lisp/international/mule-util.el (filepos-to-bufferpos):
4085 Fix typo. Move non-exact check to the utf-16 branch (the only one
4086 affected). Don't use byte-to-position for the utf-16 case.
4088 2015-06-19 Eli Zaretskii <eliz@gnu.org>
4090 Minor fixes in filepos-to-bufferpos
4091 * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
4092 test for utf-8-emacs. Exempt single-byte encodings from the
4093 'use-exact' path when QUALITY is 'exact'. Test UTF-16 encodings
4094 for BOM before subtracting 2 bytes. Use 'identity' when adjusting
4095 UTF-16 encoded files for CR-LF EOLs.
4097 2015-06-19 Paul Eggert <eggert@cs.ucla.edu>
4099 Improve the optional translation of quotes
4100 Fix several problems with the recently-added custom variable
4101 help-quote-translation where the code would quote inconsistently
4102 in help buffers. Add support for quoting 'like this', which
4103 is common in other GNU programs in ASCII environments. Change
4104 help-quote-translation to use more mnemonic values: values are now the
4105 initial quoting char, e.g., (setq help-quote-translation ?`) gets the
4106 traditional Emacs help-buffer quoting style `like this'. Change the
4107 default behavior of substitute-command-keys to match what's done in
4108 set-locale-environment, i.e., quote ‘like this’ if displayable,
4109 'like this' otherwise.
4110 * doc/lispref/help.texi (Keys in Documentation): Document
4111 new behavior of substitute-command-keys, and document
4112 help-quote-translation.
4113 * doc/lispref/tips.texi (Documentation Tips):
4114 Mention the effect of help-quote-translation.
4115 * etc/NEWS: Mention new behavior of substitute-command-keys,
4116 and merge help-quote-translation news into it.
4117 When talking about doc strings, mention new ways to type quotes.
4118 * lisp/cedet/mode-local.el (overload-docstring-extension):
4119 Revert my recent change to this function, which shouldn't be
4120 needed as the result is a doc string.
4121 * lisp/cedet/mode-local.el (mode-local-print-binding)
4122 (mode-local-describe-bindings-2):
4123 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
4124 * lisp/cus-theme.el (describe-theme-1):
4125 * lisp/descr-text.el (describe-text-properties-1, describe-char):
4126 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
4127 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
4128 (eieio-help-constructor):
4129 * lisp/emacs-lisp/package.el (describe-package-1):
4130 * lisp/faces.el (describe-face):
4131 * lisp/help-fns.el (help-fns--key-bindings)
4132 (help-fns--compiler-macro, help-fns--parent-mode)
4133 (help-fns--obsolete, help-fns--interactive-only)
4134 (describe-function-1, describe-variable):
4135 * lisp/help.el (describe-mode):
4136 Use substitute-command-keys to ensure a more-consistent quoting
4137 style in help buffers.
4138 * lisp/cus-start.el (standard):
4139 Document new help-quote-translation behavior.
4140 * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
4141 * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
4142 (help-xref-url-regexp):
4143 * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
4144 * lisp/wid-edit.el (widget-documentation-link-regexp):
4145 Also match 'foo', in case we're in a help buffer generated when
4146 help-quote-translation is ?'.
4147 * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
4148 (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
4149 (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
4150 (Fsubstitute_command_keys): Document and implement new behavior.
4151 (Vhelp_quote_translation): Document new behavior.
4153 2015-06-18 Glenn Morris <rgm@gnu.org>
4155 * lisp/cus-start.el (help-quote-translation): Add :version.
4157 * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
4159 2015-06-18 Alan Mackenzie <acm@muc.de>
4161 Make translation of quotes to curly in doc strings optional.
4162 src/doc.c (traditional, prefer-unicode): new symbols.
4163 (help-quote-translation): new variable.
4164 (Fsubstitute_command_keys): make translation of quotes dependent on
4165 `help-quote-translation'; also translate curly quotes back to ASCII
4167 lisp/cus-start.el (top-level): Add a customization entry for
4168 `help-quote-translation'.
4170 2015-06-18 Artur Malabarba <bruce.connor.am@gmail.com>
4172 * lisp/emacs-lisp/package.el: Don't always propagate async errors
4173 (package--with-work-buffer-async): Only propagate the error if the
4174 callback returns non-nil.
4175 (package--download-one-archive): Return nil on the signature
4176 checking callback if we accept unsigned.
4177 (package--download-and-read-archives): Return non-nil on the
4178 archive download callback.
4180 2015-06-18 Martin Rudalics <rudalics@gmx.at>
4182 Set image_cache_refcount before x_default_parameter calls. (Bug#20802)
4183 * src/nsfns.m (Fx_create_frame):
4184 * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
4185 image_cache_refcount before first x_default_parameter call.
4187 2015-06-18 Eli Zaretskii <eliz@gnu.org>
4189 Improve and extend filepos-to-bufferpos
4190 * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
4191 Don't barf if F returns nil for some argument.
4192 (filepos-to-bufferpos): Expand to support UTF-16 and not assume
4193 that every encoding of type 'charset' is single-byte.
4195 2015-06-18 Artur Malabarba <bruce.connor.am@gmail.com>
4197 * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
4198 Properly delete packages. (Bug#20836)
4200 2015-06-18 Eli Zaretskii <eliz@gnu.org>
4202 Update data files from just-released Unicode 8.0
4203 * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
4205 * test/BidiCharacterTest.txt: Update from Unicode 8.0.
4206 * admin/unidata/BidiMirroring.txt:
4207 * admin/unidata/BidiBrackets.txt:
4208 * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
4210 2015-06-18 Paul Eggert <eggert@cs.ucla.edu>
4212 Document curved quotes a bit better
4213 * doc/emacs/basic.texi (Inserting Text):
4214 Mention C-x 8. Change example to use curved quote rather
4215 than infinity, as this lets us give more ways to do it.
4216 * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
4217 and quotation marks.
4218 * doc/emacs/text.texi (Quotation Marks):
4219 * doc/lispref/tips.texi (Documentation Tips):
4220 Add "curly quotes" and "curved quotes" to the index.
4221 * doc/emacs/text.texi (Quotation Marks):
4222 Give the C-x 8 shorthands for curved quotes.
4223 Cross-reference to "Quotation Marks".
4225 2015-06-17 Daiki Ueno <ueno@gnu.org>
4227 Add pinentry.el for better GnuPG integration
4228 * lisp/pinentry.el: New file.
4229 * etc/NEWS: Add entry about pinentry.el.
4230 * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
4233 2015-06-17 Artur Malabarba <bruce.connor.am@gmail.com>
4235 * lisp/emacs-lisp/package.el: Slightly better error reporting.
4237 2015-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
4239 (define-minor-mode): Use setq-default for :global minor modes
4240 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
4241 Use setq-default for :global minor modes (bug#20712).
4243 2015-06-17 Eli Zaretskii <eliz@gnu.org>
4245 Avoid infloop in redisplay with tall images
4246 * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
4247 down near ZV. (Bug#20808)
4248 Call bidi_unshelve_cache to avoid memory leaks. Use IT_CHARPOS
4251 2015-06-17 Artur Malabarba <bruce.connor.am@gmail.com>
4253 * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
4254 Fix error reporting.
4256 * lisp/let-alist.el: move to lisp/emacs-lisp/let-alist.el
4258 * lisp/emacs-lisp/package.el: Revert buffer after any operation
4259 Call `package-menu--post-refresh' after any operation that changes
4260 the package database (`package-install' and `package-delete'). To
4261 avoid performance issues in large transactions, these functions
4262 add `post-refresh' to `post-command-hook' instead of calling it
4264 (package-menu--mark-or-notify-upgrades): New function.
4265 (list-packages): Add it to `package--post-download-archives-hook'.
4266 (package-menu--post-refresh): Lose the upgrade-checking code, add
4267 code to remove itself from `post-command-hook'.
4268 (package-install, package-delete): Add it to `post-command-hook'.
4269 (package-menu-execute): Don't call `package-menu--post-refresh'.
4271 2015-06-17 Stephen Leake <stephen_leake@stephe-leake.org>
4273 Add missing function xref-location-group for elisp-mode.
4274 * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
4276 2015-06-17 Wolfgang Jenkner <wjenkner@inode.at>
4278 * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
4279 The behavior now matches the description in the manual. (Bug#20783)
4281 2015-06-17 Xue Fuqiao <xfq.free@gmail.com>
4283 Update tutorials/TUTORIAL.cn
4284 * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
4286 2015-06-17 Glenn Morris <rgm@gnu.org>
4288 Generate char-script-table from Unicode source. (Bug#20789)
4289 * admin/unidata/Makefile.in (AWK): New, set by configure.
4290 (all): Add charscript.el.
4291 (blocks): New variable.
4292 (charscript.el, ${unidir}/charscript.el): New targets.
4293 (extraclean): Also remove generated charscript.el.
4294 * admin/unidata/blocks.awk: New script.
4295 * admin/unidata/Blocks.txt: New data file, from unicode.org.
4296 * lisp/international/characters.el: Load charscript.
4297 * src/Makefile.in (charscript): New variable.
4298 (${charscript}): New target.
4299 (${lispintdir}/characters.elc): Depend on charscript.elc.
4300 (temacs$(EXEEXT)): Depend on charscript.
4302 * lisp/international/characters.el (char-script-table): Tweak
4303 some ranges to better match the source. (Bug#20789#17)
4305 Remove "no-byte-compile: t" from a few files.
4306 * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
4307 * lisp/obsolete/patcomp.el: No reason not to compile these.
4309 2015-06-16 Glenn Morris <rgm@gnu.org>
4311 Fix some typos in copied Unicode data. (Bug#20789)
4312 * lisp/international/characters.el (char-script-table):
4313 * lisp/international/fontset.el (script-representative-chars)
4314 (setup-default-fontset): Fix typos.
4316 * lisp/emacs-lisp/check-declare.el (check-declare-warn):
4317 Don't print filename twice (it's in the prefix now).
4319 * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
4322 Address a compilation warning.
4323 * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
4324 Replace 't' with '_' in pcase.
4326 Address some check-declare warnings.
4327 * lisp/simple.el (tabulated-list-print):
4328 * lisp/progmodes/elisp-mode.el (xref-collect-matches):
4329 * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
4330 (ns-get-selection): Update declarations.
4332 Address some compilation warnings.
4333 * lisp/elec-pair.el (electric-pair-post-self-insert-function):
4334 * lisp/vc/vc-git.el (vc-git-file-type-as-string):
4335 Replace 't' with '_' in pcase.
4337 Address some compilation warnings.
4338 * lisp/face-remap.el (text-scale-adjust):
4339 * lisp/menu-bar.el (popup-menu-normalize-position):
4340 * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
4341 * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
4342 * lisp/emacs-lisp/generator.el (cps--transform-1):
4343 * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
4344 * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
4345 * lisp/progmodes/octave.el (octave-goto-function-definition)
4346 (octave-find-definition-default-filename):
4347 Replace 't' with '_' in pcase.
4349 * lisp/emacs-lisp/pcase.el (pcase--u1):
4350 Paper-over today's bootstrap failure.
4352 2015-06-16 Nicolas Petton <nicolas@petton.fr>
4354 * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
4356 * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
4358 Better confirmation message in `find-alternate-file' (Bug#20830)
4359 * lisp/files.el (find-alternate-file'): Improve the confirmation
4360 message to show the buffer name.
4362 Better docstring for null. (Bug#20815)
4363 * src/data.c (null): Improves the docstring, saying what null returns
4364 when OBJECT is non-nil.
4366 2015-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
4368 * lisp/net/newst-treeview.el: Use lexical-binding.
4370 (filepos-to-bufferpos): Add missing cases. Make sure it terminates.
4371 * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
4372 New auxiliary function, extracted from filepos-to-bufferpos.
4373 Make sure it terminates.
4374 (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
4375 Add support for the `exact' quality.
4377 2015-06-16 Cédric Chépied <cedric.chepied@gmail.com>
4379 Identify feeds in newsticker treeview with :nt-feed property
4380 * lisp/net/newst-treeview.el:
4381 (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
4383 2015-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
4385 * lisp/emacs-lisp/pcase.el: Improve docs and error handling
4386 (pcase--self-quoting-p): Floats aren't self-quoting.
4387 (pcase): Tweak docstring.
4388 (pcase--u1): Deprecate the t pattern. Improve error detection for
4390 (\`): Tweak docstring. Signal an error for unrecognized cases.
4393 2015-06-16 Eli Zaretskii <eliz@gnu.org>
4395 Fix infloop in filepos-to-bufferpos
4396 * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
4397 offset calculation, and make it conditional on the eol-type of the
4398 file's encoding. (Bug#20825)
4400 2015-06-16 Martin Rudalics <rudalics@gmx.at>
4402 Fix handling of image cache refcounts. (Bug#20802)
4403 This backports Eli Zaretskii's solution of this problem for W32
4405 * src/nsfns.m (image_cache_refcount): Define unconditionally.
4406 (unwind_create_frame): If the image cache's reference count
4407 hasn't been updated yet, do that now.
4408 (Fx_create_frame): Set image_cache_refcount unconditionally.
4409 * src/xfns.c (image_cache_refcount): Define unconditionally.
4410 (unwind_create_frame): If the image cache's reference count
4411 hasn't been updated yet, do that now.
4412 (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
4414 * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
4417 2015-06-16 Nils Ackermann <nils@ackermath.info>
4419 Improve reftex-label-regexps default value
4420 * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
4421 keyvals label regexp more strict to better cope with unbalanced
4422 brackets common in math documents.
4424 2015-06-16 Glenn Morris <rgm@gnu.org>
4426 * doc/emacs/calendar.texi (Format of Diary File):
4427 Move "nonmarking" from here...
4428 (Displaying the Diary): ... to here.
4430 * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
4431 Swap the order of these nodes.
4432 * doc/emacs/emacs.texi: Update detailed menu for the above change.
4434 * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
4435 Update date of examples.
4436 (Diary, Format of Diary File): Move example from former to latter.
4439 No need for cp51932.el, eucjp-ms.el to not be compiled any more.
4440 * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
4441 Don't set no-byte-compile in the outputs.
4442 * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
4444 2015-06-15 Glenn Morris <rgm@gnu.org>
4446 * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
4447 * doc/emacs/calendar.texi (Diary, Format of Diary File):
4448 Update for above diary-file change.
4449 : * etc/NEWS: Mention this.
4451 * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
4452 (apply-macro-to-region-lines): Use user-error.
4454 * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
4455 (pages-directory-for-addresses): Doc fixes.
4457 2015-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
4459 * lisp/info.el: Cleanup bytepos/charpos issues
4460 * lisp/international/mule-util.el: Use lexical-binding.
4461 (filepos-to-bufferpos): New function.
4462 * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
4463 (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
4464 (Info-read-subfile, Info-search): Use 0-based file positions.
4466 * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
4467 (perl--syntax-exp-intro-keywords): New var.
4468 (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
4471 2015-06-15 Paul Eggert <eggert@cs.ucla.edu>
4473 Fix quoting when making derived mode docstring
4474 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
4475 Nest regexp-quote inside format, not the reverse.
4476 Problem reported by Artur Malabarba in:
4477 http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
4479 2015-06-15 Eli Zaretskii <eliz@gnu.org>
4481 Fix current-iso639-language on MS-Windows
4482 * lisp/international/mule-cmds.el (set-locale-environment):
4483 Downcase the locale name before interning it. This is so the
4484 'current-iso639-language' on MS-Windows matches the ':lang'
4485 property of font-spec objects.
4487 Limit Symbola usage some more
4488 * lisp/international/fontset.el (setup-default-fontset): Limit
4489 Symbol coverage of Currency Symbols to u+20B6..u+20CF.
4492 2015-06-15 Nicolas Petton <nicolas@petton.fr>
4494 * lisp/emacs-lisp/map.el (map-let): Better docstring.
4496 2015-06-15 Paul Eggert <eggert@cs.ucla.edu>
4500 2015-06-14 Glenn Morris <rgm@gnu.org>
4502 * lisp/version.el (emacs-repository-version-git): Demote errors.
4503 Check result is a hash.
4505 2015-06-14 Artur Malabarba <bruce.connor.am@gmail.com>
4507 * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
4508 Catch errors that happen before going async. (Bug#20809)
4510 2015-06-14 Eli Zaretskii <eliz@gnu.org>
4512 Another improvement of documentation of set-fontset-font
4513 * doc/lispref/display.texi (Fontsets): Say explicitly that
4514 CHARACTER can be a single codepoint.
4515 * src/fontset.c (Fset_fontset_font): Doc fix.
4517 Another improvement for symbol and punctuation characters
4518 * lisp/international/fontset.el (setup-default-fontset): Exclude
4519 from Symbola character ranges for symbols and punctuation covered
4520 well by popular Unicode fonts. Prefer fixed-misc Unicode font, if
4521 installed and where its coverage of symbols and punctuation is
4522 known to be good. (Bug#20727)
4524 2015-06-14 Christoph Wedler <christoph.wedler@sap.com>
4526 Some generic support for multi-mode indentation.
4527 * lisp/progmodes/prog-mode.el (prog-indentation-context): New
4529 (prog-first-column, prog-widen): New convenience functions.
4531 2015-06-14 Artur Malabarba <bruce.connor.am@gmail.com>
4533 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
4534 Don't assume that `tabulated-list-printer' will leave point at the
4535 end of the buffer. (Bug#20810)
4537 2015-06-13 Glenn Morris <rgm@gnu.org>
4539 Tweaks for getting repository version; a bit more like it was for bzr.
4540 * lisp/version.el (emacs-repository-version-git)
4541 (emacs-repository--version-git-1): New functions,
4542 split from emacs-repository-get-version.
4543 (emacs-repository-get-version): Make the second argument meaningful.
4545 * lisp/startup.el (command-line-1): Inform if skipping relative
4546 file names due to deleted PWD.
4548 * src/xsmfns.c (x_session_initialize): Avoid libSM crash
4549 when starup directory is missing. (Bug#18851)
4550 (errno.h): Include it.
4552 2015-06-13 Paul Eggert <eggert@cs.ucla.edu>
4554 Better fix for documenting `X as "`X"
4555 Fix suggested by Stefan Monnier.
4556 * lisp/help-fns.el (help-fns--signature):
4557 Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
4558 * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
4559 Don't treat `X specially, as help-fns--signature now handles this.
4561 2015-06-13 Eli Zaretskii <eliz@gnu.org>
4563 Improve the default fontset when Symbola is not installed
4564 * lisp/international/fontset.el (setup-default-fontset): Only
4565 prepend Symbola and FreeMono font specs for symbols and
4566 punctuation; do not replace the default spec for them. This
4567 should have better results when Symbola/FreeMono are not
4568 installed. (Bug#20727)
4570 Improve documentation of ':lang' in font specs
4571 * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
4572 use of the ':lang' property of the font spec.
4573 * doc/emacs/frames.texi (Fonts): Document the language names that
4574 can be in the STYLE part of XLFD.
4575 * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
4578 * nt/README: Don't advertise the (obsolescent) w32 FAQ.
4580 * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
4582 Revert last change in fontset.el
4583 * lisp/international/fontset.el (setup-default-fontset): Revert
4584 the change "Configure Symbola font only if installed", since font
4585 search is evidently not yet set up when this function is called.
4588 2015-06-12 Glenn Morris <rgm@gnu.org>
4590 Ensure early startup warnings are visible at the end. (Bug#20792)
4591 * lisp/emacs-lisp/warnings.el (display-warning):
4592 If startup isn't complete, delay the warning.
4593 * lisp/startup.el (normal-top-level, command-line):
4594 Let display-warning automatically handle the needed delays.
4595 Run delayed-warnings-hook.
4597 * lisp/version.el (emacs-repository-get-version):
4598 Avoid calling external executable if possible. (Bug#20799)
4600 2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
4602 Document `X as "`X", not as "(` X)"
4603 * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
4604 Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
4606 * src/print.c (print_object): Minor simplification.
4608 2015-06-12 Glenn Morris <rgm@gnu.org>
4610 * src/buffer.c (init_buffer): Add final newline to message.
4612 2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
4614 Configure Symbola font only if installed
4615 * lisp/international/fontset.el (setup-default-fontset):
4616 Don't specify the Symbola font if it's not installed.
4617 Likewise for FreeMono. (Bug#20727)
4619 2015-06-12 Eli Zaretskii <eliz@gnu.org>
4621 Configure Symbola font only for symbols and punctuation
4622 * lisp/international/fontset.el (setup-default-fontset): Leave
4623 only symbols and punctuation in the fontset setup for Symbola
4624 font; remove "Greek and Coptic" and "Cyrillic Supplement".
4627 2015-06-12 Andreas Schwab <schwab@linux-m68k.org>
4629 Fix crash in fontset-info
4630 * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
4633 2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
4635 Port to Solaris 10 sparc + Sun C 5.13
4636 * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
4637 Adjust to process.c change.
4638 * src/process.c (create_process): Declare volatile variables at
4639 top level of this function, so that they're less likely to be
4640 reused later in the function in the code executed by the vforked
4641 child. Do not declare locals used only in the vforked child, as
4642 they might share memory with locals still live in the parent.
4643 Instead, use the same variables in the child as in the parent.
4644 This works around a subtle bug that causes a garbage collector
4645 crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
4647 2015-06-12 Glenn Morris <rgm@gnu.org>
4649 * lisp/startup.el (normal-top-level): Don't let *Messages* get
4650 a nil default-directory.
4652 2015-06-11 Glenn Morris <rgm@gnu.org>
4654 * lisp/startup.el (normal-top-level): Use delay-warning. (Bug#20792)
4656 Some progress towards starting with PWD deleted. (Bug#18851)
4657 * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
4658 * lisp/startup.el (normal-top-level, command-line-1):
4659 * lisp/minibuffer.el (read-file-name-default):
4660 Handle default-directory being nil.
4662 2015-06-11 Paul Eggert <eggert@cs.ucla.edu>
4664 Fix "not a tty" bug on Solaris 10
4665 * configure.ac (PTY_OPEN): Define to plain 'open'
4666 on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
4667 * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
4668 calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
4669 hosts that call grantpt which does its work via a setuid subcommand
4670 (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
4671 Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
4672 seems relevant in that case too.
4674 2015-06-11 Juri Linkov <juri@linkov.net>
4676 * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
4677 * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
4680 2015-06-11 Glenn Morris <rgm@gnu.org>
4682 * lisp/international/characters.el (char-script-table): Fix typo.
4684 2015-06-11 Paul Eggert <eggert@cs.ucla.edu>
4686 Fix quoting of help for functions with odd names
4687 While investigating Bug#20759, I discovered other quoting problems:
4688 C-h f mishandled characters like backslash and quote in function names.
4689 This fix changes the behavior so that 'C-h f pcase RET' now
4690 generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
4691 because '(format "%S" '(` FOO))' returns "(\\` FOO)". A comment
4692 in src/lread.c's read1 function says that the backslash will be
4693 needed starting in Emacs 25, which implies that 'format' is
4694 correct and the old pcase documention was wrong to omit the backslash.
4695 * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
4696 * lisp/help-fns.el (help-fns--signature):
4697 * lisp/help.el (help-add-fundoc-usage):
4698 * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
4699 Use help--make-usage-docstring rather than formatting
4701 * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
4702 Return raw docstring.
4703 * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
4704 raw docstring. Take more care to distinguish raw from cooked dstrings.
4705 (describe-function-1): Let help-fns--signature substitute
4707 * lisp/help.el (help--docstring-quote): New function.
4708 (help-split-fundoc): Use it, to quote funny characters more
4710 (help--make-usage): Rename from help-make-usage, since this
4711 should be private. Leave an obsolete alias for the old name.
4712 (help--make-usage-docstring): New function.
4713 * test/automated/help-fns.el (help-fns-test-funny-names): New test.
4715 2015-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
4717 * lisp/thingatpt.el (in-string-p): Revert last change,
4718 since in-string-p is not used in thingatpt.el but only from outside.
4719 Also, use lexical binding.
4721 2015-06-11 Artur Malabarba <bruce.connor.am@gmail.com>
4723 * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons
4724 * test/automated/let-alist.el (let-alist-cons): Test it.
4726 2015-06-11 Nicolas Richard <theonewiththeevillook@yahoo.fr>
4728 * src/syntax.c (Fbackward_prefix_chars): Reword docstring
4730 2015-06-10 Glenn Morris <rgm@gnu.org>
4732 * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
4734 Improve generated ChangeLog for gitmerge.el commits. (Bug#20717)
4735 * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
4736 * admin/gitmerge.el (gitmerge-commit-message):
4737 Exclude "skipped" messages from ChangeLog once again.
4739 Slight namespace cleanup for thingatpt.el.
4740 * lisp/thingatpt.el (thing-at-point--in-string-p)
4741 (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
4742 (thing-at-point--read-from-whole-string): Rename from
4743 old versions without "thing-at-point--" prefix.
4744 Keep old versions as obsolete aliases. Update all uses.
4746 * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
4747 Move requiring of finder from here...
4748 (checkdoc-package-keywords): ... to here.
4750 Use 'user-error' in a few calendar files.
4751 * lisp/calendar/appt.el (appt-add):
4752 * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
4753 (calendar-generate):
4754 * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
4755 Replace 'error' with 'user-error'.
4757 * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
4759 * lisp/files-x.el (add-file-local-variable):
4760 Special-case 'lexical-binding'. (Bug#20641)
4762 * lisp/progmodes/executable.el (executable-self-display): Obsolete.
4764 * doc/misc/autotype.texi (Executables):
4765 Undocument executable-self-display.
4767 * lisp/progmodes/executable.el (executable-self-display):
4768 Use non-obsolete tail syntax. (Bug#20779)
4769 (executable-self-display): Doc update.
4771 2015-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4773 * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
4774 (finder-known-keywords): Silence byte-compiler.
4776 2015-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
4778 * lisp/simple.el (eval-expression): Macroexpand before evaluating (bug#20730)
4780 * lisp/progmodes/sh-script.el: Better handle nested quotes
4781 (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
4782 (sh-font-lock-quoted-subshell): Make sure double quotes within single
4783 quotes don't mistakenly end prematurely the surrounding string.
4785 * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
4787 2015-06-09 Glenn Morris <rgm@gnu.org>
4789 * test/automated/Makefile.in (ELFILES): Sort.
4791 * Makefile.in (SUBDIR_MAKEFILES):
4792 * lwlib/Makefile.in (WARN_CFLAGS):
4793 Use built-in Make functions rather than echo+sed.
4795 2015-06-09 Eli Zaretskii <eliz@gnu.org>
4797 Update char-script-table
4798 * lisp/international/characters.el (char-script-table): Update
4799 from Unicode 8.0 Draft.
4801 Improve font selection for punctuation and other symbols
4802 * src/fontset.c (face_for_char): If the character's script is
4803 'symbol', and the font used for ASCII face has a glyph for it, use
4804 the font for the ASCII face instead of searching the fontsets.
4805 This comes instead of NS-specific code that used the current
4806 face's font instead, which is now disabled due to undesirable
4807 consequences. (Bug#20727)
4809 2015-06-08 Dmitry Gutov <dgutov@yandex.ru>
4811 Skip past `#' to find BEG
4812 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Skip
4813 past `#' to find BEG (bug#20771).
4814 * test/automated/elisp-mode-tests.el
4815 (elisp-completes-functions-after-hash-quote): New test.
4817 2015-06-08 Eli Zaretskii <eliz@gnu.org>
4819 Fix compilation warning/error in --without-x builds
4820 * src/xdisp.c (append_space_for_newline): Condition GUI-specific
4821 code on HAVE_WINDOW_SYSTEM.
4823 Improve the default fontset wrt symbols
4824 * lisp/international/fontset.el (setup-default-fontset): Better
4825 setup of fontset-default for symbols: use Symbola and FreeMono.
4828 2015-06-08 Oleh Krehel <ohwoeowho@gmail.com>
4830 Add new command checkdoc-package-keywords
4831 * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag): New
4833 (checkdoc-list-of-strings-p): Add doc.
4834 (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
4835 non-nil, call `checkdoc-package-keywords'.
4836 (checkdoc-get-keywords): New defun.
4837 (checkdoc-package-keywords): New command. Warns if the current file
4838 has package.el-style keywords that aren't in `finder-known-keywords'.
4839 * etc/NEWS: Add entry.
4841 2015-06-08 Eli Zaretskii <eliz@gnu.org>
4843 Avoid crashes when key-binding is called from a timer
4844 * src/keymap.c (Fkey_binding): Don't segfault if called with an
4845 empty vector as KEY. (Bug#20705)
4847 Fix a thinko in arc-mode.el
4848 * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
4849 non-Zip64 case. (Bug#20769)
4851 2015-06-08 Artur Malabarba <bruce.connor.am@gmail.com>
4853 * lisp/emacs-lisp/package.el (package-delete): Make interactive
4855 2015-06-08 Oleh Krehel <ohwoeowho@gmail.com>
4857 checkdoc.el (checkdoc-file): New function
4858 * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When
4859 `checkdoc-diagnostic-buffer' is set to "*warn*", print the warning
4860 to the standard output.
4863 2015-06-07 Glenn Morris <rgm@gnu.org>
4865 * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
4867 * src/font.c (syms_of_font) <font-log>: Doc fix.
4869 Remove the obsolete leading "*" from some C doc strings.
4870 * src/coding.c (syms_of_coding):
4871 * src/font.c (syms_of_font): Remove leading "*" from docs.
4872 * lisp/cus-start.el (enable-character-translation): Add it.
4874 2015-06-07 Paul Eggert <eggert@cs.ucla.edu>
4876 Move gen_origin from program to data
4877 That way, 'make change-history' needs to change only ChangeLog.2,
4878 instead of having to change two files.
4879 * ChangeLog.2: Add commit info for range that this file covers.
4880 * Makefile.in (new_commit_regexp): New macro.
4881 (change-history-nocommit): Simplify, by putting what used to be
4882 the gen_origin value into the data (ChangeLog.2) rather than
4883 into the program (gitlog-to-emacslog).
4884 * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
4885 the input file (e.g., ChangeLog.2) rather than by having a
4886 constant in the program. Substitute it into the output.
4888 2015-06-07 Dmitry Gutov <dgutov@yandex.ru>
4890 Escape any quotes in the function name
4891 * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
4892 function name (bug#20759).
4894 2015-06-07 Eli Zaretskii <eliz@gnu.org>
4896 Adapt 'struct timespec' to next release of MinGW runtime
4897 * nt/inc/ms-w32.h (struct timespec): Don't declare if
4898 __struct_timespec_defined is defined.
4900 2015-06-06 Paul Eggert <eggert@cs.ucla.edu>
4904 2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
4905 2015-06-05 stdio: Don't redefine gets when using C++
4906 2015-06-05 acl-permissions: port to AIX, C89 HP-UX
4907 2015-06-02 file-has-acl: fix build on Mac OS X 10
4908 2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
4909 2015-06-01 pthread_sigmask: discount system version if a simple macro
4910 2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
4911 * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
4912 * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
4913 * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
4914 * lib/gnulib.mk: Regenerate.
4916 2015-06-06 Juri Linkov <juri@linkov.net>
4918 * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
4919 before calling grep-compute-defaults because now it affects the
4920 command lines computed in grep-compute-defaults. (Bug#20728)
4922 2015-06-06 Glenn Morris <rgm@gnu.org>
4924 Address some compilation warnings.
4925 * lisp/international/mule-cmds.el (w32-get-console-codepage)
4926 (w32-get-console-output-codepage):
4927 * lisp/progmodes/elisp-mode.el (xref-collect-references):
4928 * lisp/version.el (cairo-version-string): Declare.
4929 * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
4931 2015-06-06 Eli Zaretskii <eliz@gnu.org>
4933 Fix display when a font claims large values of ascent and descent
4934 This fixes bug#20628.
4935 * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
4936 coordinate of a hollow cursor glyph when the original glyph's
4937 ascent is too small.
4938 (get_font_ascent_descent, normal_char_ascent_descent)
4939 (normal_char_height): New functions.
4940 (handle_single_display_spec, append_space_for_newline)
4941 (calc_pixel_width_or_height, produce_stretch_glyph)
4942 (calc_line_height_property): Use normal_char_ascent_descent and
4944 (x_produce_glyphs): When font-global values of ascent and descent
4945 are too large, use per-character glyph metrics instead, if
4946 possible. But don't allow the glyph row's ascent and descent
4947 values become smaller than the values from the metrics of the
4948 font's "normal" character.
4949 * src/xftfont.c (xftfont_draw):
4950 * src/w32font.c (w32font_draw): Correct the values of ascent and
4951 descent used to draw glyphless characters' hex code in a box.
4952 * src/xterm.c (x_draw_glyph_string_background):
4953 * src/xdisp.c (x_produce_glyphs):
4954 * src/w32term.c (x_draw_glyph_string_background):
4955 * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
4956 to detect fonts whose global ascent and descent values are too
4957 large to be used in layout decision, and redraw the background
4959 * src/dispextern.h (FONT_TOO_HIGH): New macro.
4960 (get_font_ascent_descent): Add prototype.
4961 * src/xterm.c (x_new_font):
4962 * src/w32term.c (x_new_font):
4963 * src/nsterm.m (x_new_font):
4964 * src/font.c (font_open_entity):
4965 * src/composite.c (composition_gstring_width): Use
4966 get_font_ascent_descent to obtain reasonable values for ascent and
4969 2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
4971 Add assertion in adjust_point_for_property
4972 * src/keyboard.c (adjust_point_for_property): Add eassert for
4973 current buffer being shown in selected window.
4975 2015-06-06 Dmitry Gutov <dgutov@yandex.ru>
4977 Replace uses of in-string-p; make it obsolete
4978 * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
4979 (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
4981 2015-06-06 Eli Zaretskii <eliz@gnu.org>
4983 Fix Dired display of an explicit list of files by ls-lisp.el
4984 * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
4985 (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
4986 correct for when displaying individual files separately, not as
4987 part of listing a directory, in which case these values are not
4988 recomputed by 'ls-lisp-insert-directory', but used verbatim.
4990 * lisp/dired.el (dired): Doc fix. (Bug#20739)
4992 2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
4994 Do not adjust point in a non-selected window
4995 * src/keyboard.c (command_loop_1): Do not adjust point when
4996 current buffer is not shown in selected window (Bug#20590).
4998 * etc/DEBUG: Mention 'maybe_call_debugger'
5000 2015-06-05 Nicolas Petton <nicolas@petton.fr>
5002 Fix a unit test for map.el
5003 * test/automated/map-tests.el (test-map-let): Fix the test to work
5004 with the new syntax of `map-let'.
5006 * lisp/emacs-lisp/map.el (map-let): Better docstring.
5008 Better syntax for the map pcase pattern
5009 * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
5010 bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
5012 * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
5014 Fix a byte-compiler error in map-put and map-delete
5015 * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
5016 called with a symbol.
5018 2015-06-05 Glenn Morris <rgm@gnu.org>
5020 * admin/gitmerge.el (gitmerge-commit-message):
5021 Revert to including "skipped" messages in ChangeLog once again.
5023 2015-06-05 Tassilo Horn <tsdh@gnu.org>
5025 Use string> instead of equiv lambda with string<
5026 * lisp/help.el (view-emacs-news): Use string> instead of equivalent
5027 lambda with string<.
5029 2015-06-05 Glenn Morris <rgm@gnu.org>
5031 * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
5032 (map--delete-array): Fix typo.
5034 * test/automated/map-tests.el: Replace "assert" with "should".
5036 * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
5037 (SUBDIRS_REL): Derive from SUBDIRS.
5039 Tweak some build messages.
5040 * lisp/Makefile.in ($(lisp)/loaddefs.el):
5041 * lisp/cus-dep.el (custom-make-dependencies):
5042 * lisp/finder.el (finder-compile-keywords): Say what we are doing.
5043 * lisp/international/titdic-cnv.el (batch-titdic-convert):
5044 Don't say how to compile.
5046 2015-06-05 Paul Eggert <eggert@cs.ucla.edu>
5048 Omit U+0332 COMBINING LOW LINE in previous change
5049 It turns out that it does not work on Ubuntu 15.04.
5051 Fix transliteration of Bahá'í months
5052 * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
5053 Improve quality of Latin transliteration of Bahá'í month names.
5055 Fix curved quotes in a few places
5056 * lisp/calc/calc-misc.el (calc-help): Fix quoting.
5057 The strings in question are not doc strings, so this partially
5058 undoes the recent change that assumed they were doc strings.
5059 * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
5060 * lisp/info.el (Info-finder-find-node):
5062 * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
5063 Also allow curved quotes in doc strings.
5065 2015-06-04 Glenn Morris <rgm@gnu.org>
5067 * lisp/Makefile.in (AM_V_at): Add missing definition.
5069 * lisp/Makefile.in: Quieten output a bit.
5070 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
5071 Don't echo directories, since the commands we invoke print them.
5073 * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
5074 (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
5075 (SUBDIRS_SUBDIRS): New variables.
5076 (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
5078 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
5079 (update-subdirs, compile-main, compile-clean):
5080 Replace "setwins" usage with new "SUBDIRS" variables.
5082 * lisp/vc/compare-w.el (compare-windows-get-window-function):
5085 2015-06-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5087 * src/ftfont.c (ftfont_open2): Round divisions by upEM.
5089 Undo removal of x_clear_area call on expose for GTK3 or cairo.
5090 * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
5091 exposed area. (Bug#20677)
5093 2015-06-04 Glenn Morris <rgm@gnu.org>
5095 * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
5097 * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
5099 * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
5100 Rename from quail-lao-update-translation, since lao.el defines that.
5102 2015-06-04 Dmitry Gutov <dgutov@yandex.ru>
5104 Handle new-style advice in find-funct
5105 * lisp/emacs-lisp/find-func.el (find-function-advised-original):
5106 Handle new-style advice. Return the symbol's function definition.
5108 (find-function-library): Update accordingly.
5110 2015-06-04 Nicolas Petton <nicolas@petton.fr>
5114 * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
5116 Add new function string-greaterp
5117 * lisp/subr.el (string-greaterp): New function. Also aliased to
5119 * test/automated/subr-tests.el (string-comparison-test): Add unit
5120 tests for `string>'and `string<'.
5121 * src/fns.c (string-lessp): Better docstring.
5123 2015-06-04 Eli Zaretskii <eliz@gnu.org>
5125 Fix timezone-related functions on MS-Windows
5126 * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
5127 'xputenv', even if no reallocation of tzvalbuf was necessary.
5128 This fixes a bug in timezone-related functions on MS-Windows.
5129 Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
5131 2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
5133 Don't pass raw directory name to 'error'
5134 * lisp/files.el (basic-save-buffer-2): Avoid format error if
5135 a directory name contains a string like "%s".
5137 2015-06-03 Dmitry Gutov <dgutov@yandex.ru>
5139 Override 'grep --color=always'
5140 * lisp/progmodes/xref.el (xref-collect-matches):
5141 Override --color=always in grep-find-template.
5143 2015-06-03 Michael Albinus <michael.albinus@gmx.de>
5145 Fix error introduced recently in file-notify-tests.el
5146 * test/automated/file-notify-tests.el
5147 (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
5148 (file-notify--deftest-remote): Revert previous patch, not
5151 2015-06-03 Wolfgang Jenkner <wjenkner@inode.at>
5153 * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
5154 Starting from a display string after a newline, point went to the
5155 previous line. Also, fix an inadvertent use of a buffer position
5156 with FETCH_BYTE. (Bug#20701)
5158 2015-06-03 Michael Albinus <michael.albinus@gmx.de>
5160 Instrument file-notify-test.el in order to catch hydra error.
5161 * test/automated/file-notify-tests.el (file-notify--deftest-remote):
5162 Wrap body by `ignore-case', in order to trap non-local errors.
5164 2015-06-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5166 Undo previous changes in non-toolkit scroll bar drawing.
5167 * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
5168 [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window. (Bug#20668)
5170 2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
5172 * .gitignore: Also ignore doc/*/*/*.html and .ps.
5174 Support quotes 'like this' in info files
5175 This is possible when 'makeinfo --disable-encoding' is used
5177 * lisp/calc/calc-help.el (calc-describe-thing):
5178 * lisp/gnus/gnus-art.el (gnus-button-alist):
5179 * lisp/info.el (Info-find-index-name):
5180 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
5181 Also support quotes 'like this'.
5182 * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
5183 * lisp/finder.el (finder-font-lock-keywords): Remove var that
5184 hasn't been used in years, instead of bothering to fix its quoting.
5186 2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
5188 * .gitignore: Remove !test/etags/html-src/*.html.
5189 It's no longer needed, since *.html was removed. Sort.
5191 2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
5193 Restore <D> instead of '.' in grep-find-template
5194 * lisp/cedet/semantic/symref/grep.el
5195 (semantic-symref-grep-use-template): Update a comment.
5196 * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
5197 instead of '.' in grep-find-template (bug#20719).
5198 (rgrep): Pass nil as the directory to rgrep-default-command.
5199 * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
5200 default value for DIR.
5201 * lisp/progmodes/xref.el (xref-collect-matches): Drop the
5204 2015-06-02 Glenn Morris <rgm@gnu.org>
5206 * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
5208 * configure.ac (emacs_config_features): Add Cairo.
5210 * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
5212 2015-06-02 Michael Albinus <michael.albinus@gmx.de>
5214 Ensure, that autorevert works for remote files in file-notify-tests.el
5215 * test/automated/file-notify-tests.el (file-notify--test-desc):
5217 (file-notify--test-remote-enabled)
5218 (file-notify-test00-availability, file-notify-test01-add-watch)
5219 (file-notify-test02-events): Use it.
5220 (file-notify--test-event-test): Check proper descriptor.
5221 (file-notify-test03-autorevert): Ensure, that
5222 `visited-file-modtime' has changed.
5225 2015-06-02 Nicolas Petton <nicolas@petton.fr>
5227 Add a pcase pattern for maps and `map-let' based on it
5228 * lisp/emacs-lisp/map.el (map-let): New macro.
5229 (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
5230 * test/automated/map-tests.el: New test for `map-let'.
5232 2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
5234 Reuse rgrep mechanics in xref-find-regexp
5235 * lisp/progmodes/grep.el (rgrep-default-command):
5236 Extract from `rgrep'.
5237 * lisp/progmodes/xref.el (xref-collect-references): Split from
5238 `xref-collect-matches'. Only handle the case of symbol search.
5239 (xref-collect-matches): Instead of Semantic Symref, use
5240 `rgrep-default-command', to take advantage of its directory and
5241 file ignore settings.
5242 (xref--collect-match): Remove the last argument, leaving the
5243 regexp construction up to the caller.
5244 * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
5245 Change to take the xref-collect- function to use as an argument.
5246 (elisp-xref-find): Update accordingly.
5247 * lisp/progmodes/etags.el (etags--xref-find-matches)
5248 (etags-xref-find): Same.
5250 Move xref-elisp-location to elisp-mode.el
5251 * lisp/progmodes/xref.el (xref-elisp-location)
5252 (xref-make-elisp-location, xref-location-marker): Remove here.
5253 (xref--xref): Don't limit the type of the location slot.
5254 * lisp/progmodes/elisp-mode.el (xref-elisp-location):
5255 Define as a cl-struct here.
5256 (xref-location-marker): Move here.
5258 2015-06-02 Eli Zaretskii <eliz@gnu.org>
5260 Minor tweaks for .gitignore
5261 * .gitignore: Don't ignore versioned *.html and *.ps files. Don't
5262 ignore admin/notes/tags that might be ignored as TAGS on
5263 case-insensitive filesystems. (Bug#20710)
5265 2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
5267 Generate curved quotes in ert doc
5268 * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
5269 (ert-results-mode-menu)
5270 (ert-results-pop-to-backtrace-for-test-at-point)
5271 (ert-results-pop-to-messages-for-test-at-point)
5272 (ert-results-pop-to-should-forms-for-test-at-point)
5273 (ert-describe-test):
5274 Quote ‘like this’, not `like this', when generating doc strings
5276 * test/automated/ert-x-tests.el (ert-test-describe-test):
5277 Allow quoting ‘like this’.
5279 2015-06-02 Nicolas Richard <youngfrog@members.fsf.org>
5281 Add test for previous commit
5282 * test/automated/replace-tests.el: New file.
5283 (query-replace--split-string-tests): Add test for previous commit.
5285 Avoid confusion in query-replace history when replacing NUL chars
5286 * lisp/replace.el (query-replace--split-string): New function.
5287 (query-replace-read-from): Rely on the 'separator' property
5288 instead of searching for the NUL character (Bug#20690).
5290 2015-06-02 Glenn Morris <rgm@gnu.org>
5292 Merge from origin/emacs-24
5293 8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
5295 * admin/gitmerge.el (gitmerge-commit-message):
5296 Exclude "skipped" messages from ChangeLog.
5298 2015-06-01 Michael Albinus <michael.albinus@gmx.de>
5300 Sync with Tramp repository
5301 * lisp/net/tramp.el (tramp-message): Dump connection buffer error
5303 (tramp-handle-make-auto-save-file-name): When calling
5304 `make-auto-save-file-name' internally, make sure it uses Unix-like
5305 behavior, not Windows-like behavior.
5306 * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
5307 the local case, because "chown" might fail on w32.
5308 * lisp/net/trampver.el (tramp-repository-get-version): Don't run
5311 2015-06-01 Eli Zaretskii <eliz@gnu.org>
5313 MS-Windows followup for batch stdout/stderr output changes
5314 * lisp/international/mule-cmds.el (set-locale-environment): In
5315 batch mode, use console codepages for keyboard and terminal
5316 encoding. (Bug#20545)
5318 Update .gitattributes for DOS EOL files
5319 * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
5320 CRLF end-of-line format.
5322 NS equivalents of xterm.c and w32term.c changes
5323 * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
5324 glyph string background also when the font in use claims
5325 preposterously large global height value. Helps to remove
5326 artifacts left from previous displays when glyphless characters
5327 are displayed as hex code in a box.
5328 (x_new_font): Call get_font_ascent_descent to obtain a reasonable
5329 value for FRAME_LINE_HEIGHT, even when a font claims very large
5330 value for its height.
5332 2015-06-01 Paul Eggert <eggert@cs.ucla.edu>
5334 Avoid grave accent quoting in stderr diagnostics
5335 A few Emacs diagnostics go directly to stderr, and so can't easily
5336 contain curved quotes (as non-UTF-8 locales might mishandle them).
5337 Instead of bothering to add support for this rarity, reword the
5338 diagnostics so that they don't use grave accent to quote.
5339 * src/alloc.c (mark_memory): Fix comment.
5340 * src/buffer.c (init_buffer):
5341 * src/dispnew.c (init_display):
5342 * src/emacs.c (main, sort_args):
5343 * src/lread.c (dir_warning):
5344 * src/term.c (init_tty):
5345 * src/unexmacosx.c (unexec):
5346 * src/xfns.c (select_visual):
5347 * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
5348 Reword stderr diagnostics to avoid quoting `like this'.
5349 * src/unexmacosx.c: Include errno.h.
5350 * src/xfns.c (select_visual): Encode value for locale.
5352 2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
5354 Treat batch stdout/stderr like standard display
5355 Calls like (print FOO) could generate improperly encoded or
5356 hard-to-read output if FOO contains characters outside the system
5357 locale. Fix this by treating batch stdout and stderr like
5358 interactive standard display, when it comes to transliterating and
5359 encoding characters (Bug#20545).
5360 * doc/emacs/mule.texi (Communication Coding):
5361 * doc/lispref/display.texi (Active Display Table):
5362 * doc/lispref/nonascii.texi (Locales):
5364 * src/coding.c (syms_of_coding):
5365 * src/dispnew.c (syms_of_display):
5367 * src/print.c: Include disptab.h.
5368 (printchar_to_stream): New function, with much of the guts of the
5369 old Fexternal_debugging_output, except this one also uses the
5370 standard display table.
5371 (printchar, strout, Fexternal_debugging_output): Use it.
5373 2015-05-31 Glenn Morris <rgm@gnu.org>
5375 * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
5377 2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
5379 Remove unused DEFSYMs
5380 Remove DEFSYMs that aren't used at the C level. Also:
5381 * src/decompress.c (Qzlib_dll):
5382 * src/font.c (Qunicode_sip):
5383 * src/frame.c (Qtip_frame):
5384 * src/ftfont.c (Qserif):
5385 * src/gnutls.c (Qgnutls_dll):
5386 * src/xml.c (Qlibxml2_dll):
5388 * src/w32fns.c (syms_of_w32fns): ... to here,
5389 as these are used only on MS-Windows.
5391 2015-05-31 Michael Albinus <michael.albinus@gmx.de>
5393 Use another default value for tramp-histfile-override
5394 * lisp/net/tramp-sh.el (tramp-histfile-override):
5395 Use ".tramp_history" as default.
5396 Fixes: debbugs:#20446
5398 2015-05-29 Nicolas Petton <nicolas@petton.fr>
5400 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
5402 2015-05-16 Nicolas Petton <nicolas@petton.fr>
5404 * etc/NEWS: Add an entry about map.el
5406 Improve the docstring of functions in map.el
5407 Since a map is not a data structure but a concept, adding information
5408 about the possible types of maps can be useful information.
5409 * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
5410 each public function.
5412 2015-04-29 Nicolas Petton <nicolas@petton.fr>
5414 Faster implementation of map-empty-p
5415 * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
5416 specific tests depending on the type of the map.
5418 * lisp/emacs-lisp/map.el: Better docstrings.
5420 2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
5422 * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
5424 2015-04-25 Nicolas Petton <nicolas@petton.fr>
5426 * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
5428 * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
5430 Fix a false negative in `map-elt' with alists and values being nil
5431 * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
5432 found but its associated value is nil, do not return the default
5434 * test/automated/map-tests.el: Add a regression test.
5436 2015-04-24 Nicolas Petton <nicolas@petton.fr>
5438 * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
5440 Do not signal an error when trying to delete a key from an array
5441 * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
5442 the key is present to avoid signaling an error.
5443 * test/automated/map-tests.el: Add a test for deleting non-existing
5446 * lisp/emacs-lisp/map.el: Better docstring.
5448 Minor improvement in map-elt.
5449 * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
5450 doing a lookup in arrays, but check the boundaries of the array
5452 * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
5453 and a negative integer as key.
5455 2015-04-21 Nicolas Petton <nicolas@petton.fr>
5457 * test/automated/map-tests.el: Refactoring of test methods.
5459 * test/automated/map-tests.el: Renamed from map-test.el.
5461 2015-04-18 Nicolas Petton <nicolas@petton.fr>
5463 * lisp/emacs-lisp/map.el (map-into): Better error message.
5465 * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
5467 Throw an error when converting a map into an unknown map type
5468 * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
5469 * test/automated/map-test.el: Add a regression test.
5471 New library map.el similar to seq.el but for mapping data structures.
5472 * test/automated/map-test.el: New file.
5473 * lisp/emacs-lisp/map.el: New file.
5475 2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
5477 Make sure there's no explicit tag name
5478 * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
5479 there's no explicit tag name (bug#20629).
5481 2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
5484 * src/editfns.c, src/lisp.h (format2): Remove.
5485 It is more trouble than it's worth, now that we have CALLN.
5486 This is just a minor refactoring.
5487 * src/buffer.c (Fkill_buffer):
5488 * src/dbusbind.c (XD_OBJECT_TO_STRING):
5489 * src/fileio.c (barf_or_query_if_file_exists):
5490 Adjust to format2 going away.
5492 Don't misencode C-generated messages
5493 Also, be more consistent about calls to 'Fmessage' vs 'message'.
5494 * src/alloc.c (Fgc_status):
5495 Prefer AUTO_STRING to build_string for Fmessage call.
5496 * src/data.c (Fmake_variable_buffer_local)
5497 (Fmake_local_variable, Fmake_variable_frame_local):
5498 * src/doc.c (store_function_docstring):
5499 Use Fmessage, not message, since the argument can contain
5500 non-ASCII characters, and this can cause the resulting message
5501 to be incorrectly encoded for the current environment.
5502 * src/fns.c (maybe_resize_hash_table):
5503 * src/xselect.c (x_clipboard_manager_save_all):
5504 Use message, not Fmessage, since Fmessage's power isn't needed here.
5505 * src/process.c (Fmake_network_process): Reword message to avoid %s.
5506 * src/xdisp.c (vmessage): Document restrictions on message contents.
5507 (message_nolog) [false]: Remove unused code.
5509 Use \r rather than ^M in string literals
5510 This is less likely to cause problems on platforms that
5511 use CRLF (or CR!) termination for lines.
5513 Update .gitattributes to match current sources
5514 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
5515 * .gitattributes: Accommodate tests that insist on DOS format.
5516 Remove test/automated/data/decompress/foo-gzipped.
5517 Add etc/e/eterm-color.
5519 2015-05-30 Eli Zaretskii <eliz@gnu.org>
5521 Document 'face-ignored-fonts'
5522 * doc/emacs/mule.texi (Modifying Fontsets): Document
5523 face-ignored-fonts. (Bug#20628)
5525 Add etags test for the new -Q option
5526 * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
5527 * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
5528 * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
5529 test-case changes below.
5530 * test/etags/ETAGS.good_6: New file.
5531 * test/etags/cp-src/x.cc: New file.
5532 * test/etags/Makefile (CPSRC): Add x.cc.
5533 (check): Add one more test, for -Q.
5535 2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
5537 Use list for the tags completion table, not obarray
5538 * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
5539 list instead of an obarray
5540 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
5541 (tags-completion-table): Combine those lists.
5542 (tags-completion-table): Update the docstring.
5544 2015-05-30 Eli Zaretskii <eliz@gnu.org>
5546 Restore EOL format testing in etags
5547 * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
5548 * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
5549 * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
5550 test-case changes below.
5551 * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
5552 * test/etags/cp-src/c.C (B): Add back stray CR character.
5553 * test/etags/c-src/dostorture.c: Add back.
5554 * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
5556 2015-05-30 Vitaly Takmazov <vitalyster@gmail.com> (tiny change)
5558 Declare Emacs on MS-Windows to be DPI-aware
5559 * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
5560 * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
5561 This avoids Windows entering compatibility mode for Emacs,
5562 which causes fonts to look less nice.
5564 2015-05-30 Michael Albinus <michael.albinus@gmx.de>
5566 Improve Tramp traces.
5567 * lisp/net/trampver.el (tramp-repository-get-version): New defun.
5568 * lisp/net/tramp.el (tramp-debug-message): Use it.
5570 2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
5572 backup-buffer minor reworking of internals
5573 * lisp/files.el (backup-buffer): Rework to avoid a couple of
5574 unused locals inadvertently introduced in the previous change.
5576 backup-buffer now reports .emacs.d/%backup% ills
5577 * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
5578 fails due to disk space exhaustion or whatever, do not pretend
5579 that it succeeded. More generally, do a better job of checking
5580 for I/O failures, and limit the scope of the condition-case to
5581 just the operations where file errors should be caught and ignored
5582 (Bug#20595). Also, don't bother trying to delete later backups if
5583 an earlier deletion fails, as this is a sign of trouble and it's
5584 better to stop when there's trouble.
5586 copy-file now truncates output after writing
5587 * src/fileio.c (Fcopy_file): Truncate output after writing rather
5588 than before. This is more likely to work than truncation before
5589 writing, if the file system is out of space or the user is over
5590 disk quota (Bug#20595). Also, check for read errors.
5592 2015-05-29 Artur Malabarba <bruce.connor.am@gmail.com>
5594 * lisp/emacs-lisp/package.el: Don't load from parent dir
5595 (package-load-all-descriptors): Don't load descriptors from
5596 directories above the package directories.
5598 2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
5601 This incorporates the following (Bug#20681):
5602 2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
5603 2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
5604 * lib/set-permissions.c: Copy from gnulib.
5606 2015-05-29 Michael Albinus <michael.albinus@gmx.de>
5608 Improve Tramp traces.
5609 * lisp/net/tramp.el (tramp-call-process-region): New defun.
5610 * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
5612 2015-05-29 Glenn Morris <rgm@gnu.org>
5614 * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
5616 2015-05-29 Wolfgang Jenkner <wjenkner@inode.at>
5618 * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
5619 The signature was changed in the cairo branch, merged on 2015-05-23.
5620 This oversight broke compiling only the non-toolkit X version.
5622 2015-05-29 Samer Masterson <samer@samertm.com>
5624 * doc/lispref/os.texi: Update initial-buffer-choice docs.
5626 2015-05-29 Glenn Morris <rgm@gnu.org>
5628 * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
5629 Mark as an expected failure.
5631 2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
5633 Change package test to look for curved quotes
5634 * test/automated/package-test.el (package-test-describe-package)
5635 (package-test-signed): Search for curved single quotes as well as
5636 for grave accent and apostrophe.
5638 2015-05-28 Katsumi Yamaoka <yamaoka@jpl.org>
5640 gnus-art.el: Re-revert last change
5641 * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
5642 cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
5644 2015-05-28 Samer Masterson <samer@samertm.com>
5646 Show files when `initial-buffer-choice' is non-nil
5647 * startup.el (command-line-1): When Emacs is given a file as an
5648 argument and `initial-buffer-choice' is non-nil, display both the file
5649 and `initial-buffer-choice'. For more than one file, show
5650 `initial-buffer-choice' and *Buffer List*. Refactor display-changing
5651 commands out of the command line arg parser.
5652 (initial-buffer-choice): Clarify docstring.
5654 2015-05-28 Eli Zaretskii <eliz@gnu.org>
5657 * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
5658 (gnulib module qcopy-acl): Add back, as it is harmless. This
5659 minimizes differences wrt lib/gnulib.mk.
5661 Fix the MS-Windows build as followup to gnulib update
5662 * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
5663 set-permissions.c, as they don't compile on MinGW.
5664 (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
5666 2015-05-28 Paul Eggert <eggert@cs.ucla.edu>
5668 Revert my change to gnus-art.el
5669 * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
5670 It wasn't that important, and it caused a Gnus build to fail. See:
5671 http://www.randomsample.de:4456/builders/emacs-devel/builds/734
5673 New minor mode Electric Quote
5674 This lets you easily insert quotes ‘like this’ by typing
5675 quotes `like this', and similarly you can easily insert
5676 quotes “like this” by typing quotes ``like this'' (Bug#20545).
5677 * doc/emacs/basic.texi (Inserting Text):
5678 * doc/emacs/modes.texi (Minor Modes):
5679 * etc/NEWS: Document it.
5680 * doc/emacs/text.texi (Quotation Marks): New section.
5681 * lisp/electric.el (electric-quote-comment)
5682 (electric-quote-string, electric-quote-paragraph):
5684 (electric--insertable-p)
5685 (electric-quote-post-self-insert-function): New functions.
5686 (electric-quote-mode, electric-quote-local-mode): New minor modes.
5687 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
5688 Add curved single quotes to electric-pair-text-pairs.
5689 Set electric-quote-string in this buffer.
5691 A few more doc string fixes (Bug#20385)
5693 Accept curved quotes in doc strings
5694 * lisp/info-look.el (info-lookup-guess-custom-symbol):
5695 (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
5697 Generate curved quotes in pseudo-info nodes
5698 * lisp/info.el (Info-virtual-index-find-node)
5699 (Info-virtual-index, Info-apropos-find-node, info-apropos):
5700 Quote ‘like this’, not `like this', when generating pseudo-info nodes.
5702 Fix minor quoting problems in doc strings
5703 Most of these fixes involve escaping grave accents that are
5704 actually intended to be grave accents, not left quotes.
5707 Support curved quotes in doc strings
5708 Emacs's traditional doc string style has been to quote symbols
5709 `like this'. This worked well on now-obsolete terminals where
5710 ` and ' were symmetric quotes, but nowadays curved quotes
5711 ‘like this’ look better. Support quoting the new way too.
5713 * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
5714 ‘like-this’ as well as `like-this'.
5715 * etc/NEWS: Mention this.
5716 * lisp/cedet/mode-local.el (overload-docstring-extension)
5717 (mode-local-print-binding, mode-local-describe-bindings-2):
5718 * lisp/cus-theme.el (describe-theme-1):
5719 * lisp/descr-text.el (describe-text-properties-1, describe-char):
5720 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
5721 * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
5722 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
5723 (eieio-help-constructor):
5724 * lisp/emacs-lisp/package.el (describe-package-1):
5725 * lisp/faces.el (describe-face):
5726 * lisp/help-fns.el (help-fns--key-bindings)
5727 (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
5728 (help-fns--interactive-only, describe-function-1):
5729 (describe-variable):
5730 * lisp/help.el (describe-mode):
5731 * lisp/international/mule-cmds.el (describe-input-method)
5732 (describe-language-environment):
5733 * lisp/international/mule-diag.el (describe-character-set)
5734 (print-coding-system-briefly, list-input-methods)
5735 (list-input-methods-1):
5736 Insert curved quotes rather than grave accent and apostrophe.
5737 * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
5738 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
5739 (checkdoc-proper-noun-region-engine):
5740 * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
5741 (lisp-cl-font-lock-keywords-2):
5742 * lisp/finder.el (finder-font-lock-keywords):
5743 * lisp/gnus/gnus-art.el (gnus-button-alist):
5744 * lisp/help-fns.el (help-do-arg-highlight)
5745 (describe-function-1, describe-variable):
5746 * lisp/help-mode.el (help-xref-symbol-regexp)
5747 (help-xref-info-regexp, help-xref-url-regexp):
5748 * lisp/help.el (describe-mode):
5749 * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
5750 * lisp/wid-edit.el (widget-documentation-link-regexp):
5751 Parse symbols quoted ‘like-this’ as well as `like-this'.
5752 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
5753 Add "‘" and "’" to electric-pair-text-pairs.
5754 (elisp--form-quoted-p): Also allow "‘" as a quoting char.
5755 (elisp-completion-at-point, elisp--preceding-sexp):
5756 Also treat "‘" and "’" as quoting chars.
5758 substitute-command-keys now curves quotes
5759 So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
5760 * doc/lispref/help.texi (Keys in Documentation):
5761 * etc/NEWS: Document this.
5762 * src/doc.c (Fsubstitute_command_keys): Implement it.
5764 2015-05-28 Glenn Morris <rgm@gnu.org>
5766 * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
5767 (rmail-summary-by-topic, rmail-summary-by-senders):
5768 No longer strip leading/trailing whitespace.
5770 * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
5771 (f90-no-block-limit): Add "enum". (Bug#20680)
5772 * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
5775 2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5777 * lisp/isearch.el (isearch--current-buffer): Give a default value.
5779 Un-revert changes mistakenly dropped by f9fabb2b
5781 2015-05-27 Paul Eggert <eggert@cs.ucla.edu>
5785 2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
5786 2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
5787 2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
5788 2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
5789 2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
5790 2015-05-26 stdio: fix probe on mingw under gcc 5.1
5791 * admin/merge-gnulib (GNULIB_MODULES):
5792 Replace qacl with qcopy-acl, since we don't need the rest of qacl.
5793 * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
5794 * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
5795 * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
5796 Get latest versions from gnulib.
5797 * lib/get-permissions.c, lib/set-permissions.c: New files.
5798 * lib/gnulib.mk, m4/gnulib-comp.m4:
5800 * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
5802 2015-05-27 Dmitry Gutov <dgutov@yandex.ru>
5804 Delete the old process in vc-setup-buffer
5805 * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
5807 (vc-do-command): Rather than here (bug#20608).
5809 2015-05-27 Ivan Shmakov <ivan@siamics.net>
5811 Avoid gratuitous delete-dups in face-at-point.
5812 * lisp/faces.el (face-at-point): Do not compute the properly
5813 ordered, duplicate-free list if only a single value is
5814 requested anyway. (Bug#20519)
5816 Show the exact C-x 8 RET invocation in describe-char.
5817 * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
5818 invocation instead of a template. (Bug#20522)
5820 2015-05-27 Artur Malabarba <bruce.connor.am@gmail.com>
5822 * lisp/emacs-lisp/package.el: Don't erase tags on refresh
5823 (package-menu--post-refresh): Call `tabulated-list-print' with the
5824 UPDATE argument. This only affects the refresh action, the revert
5825 action still erases tags.
5826 (package-menu-get-status): Change `assq' to `assoc'.
5827 (package-menu--mark-upgrades-1): New function.
5828 (package-menu--mark-upgrades-pending): New variable.
5829 (package-menu-mark-upgrades): Use them to delay marking until
5830 after refresh is done.
5831 (package-menu--post-refresh): Call mark-upgrades-1 if
5832 mark-upgrades-pending is non-nil.
5834 2015-05-27 Michael Albinus <michael.albinus@gmx.de>
5836 Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
5838 2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5840 * lisp/isearch.el (isearch--current-buffer): New var
5841 (isearch-update): Set cursor-sensor-inhibit here.
5842 (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
5844 Change inhibit-point-motion-hooks to t
5845 * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
5846 to t and document it as obsolete.
5848 2015-05-27 Eli Zaretskii <eliz@gnu.org>
5850 Support ZIP files that use Zip64 extensions
5851 * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
5852 format of central directory offsets used by Zip64 extensions.
5855 2015-05-27 Michael Albinus <michael.albinus@gmx.de>
5857 New test tramp-test30-make-auto-save-file-name
5858 * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
5859 (tramp-test31-special-characters)
5860 (tramp-test31-special-characters-with-stat)
5861 (tramp-test31-special-characters-with-perl)
5862 (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
5863 (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
5864 (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
5865 (tramp-test34-recursive-load, tramp-test35-unload): Rename.
5867 Improve tramp-handle-make-auto-save-file-name
5868 * tramp.el (tramp-auto-save-directory): Add :tags.
5869 (tramp-handle-make-auto-save-file-name): Let native
5870 `make-auto-save-file-name' use `auto-save-file-name-transforms',
5871 if `tramp-auto-save-directory' is not set.
5873 2015-05-27 Glenn Morris <rgm@gnu.org>
5875 No longer set dired-directory in eshell. (Bug#16477)
5876 * lisp/eshell/esh-mode.el (eshell-mode):
5877 * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
5879 * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
5881 Make c-submit-bug-report file reports at debbugs.gnu.org. (Bug#15784)
5882 * lisp/progmodes/cc-mode.el (c-mode-help-address):
5883 Change to submit@debbugs.
5884 (c-mode-bug-package): New constant.
5885 (mail-position-on-field): Declare.
5886 (c-submit-bug-report): Insert X-Debbugs-Package header.
5887 * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
5888 Mention debbugs.gnu.org.
5890 2015-05-26 Glenn Morris <rgm@gnu.org>
5892 * lisp/mail/rmailsum.el: Commas no longer separate regexps. (Bug#19026)
5893 (rmail-summary-by-recipients, rmail-summary-by-topic)
5894 (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
5895 * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
5897 2015-05-26 Paul Eggert <eggert@cs.ucla.edu>
5899 Handle curved quotes in info files
5900 * lisp/calc/calc-help.el (calc-describe-thing):
5901 * lisp/info.el (Info-find-index-name)
5902 (Info-try-follow-nearest-node, Info-fontify-node):
5903 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
5904 In info files, process quotes ‘like this’ the same way we process
5905 quotes `like this'. This catches a few places we missed earlier.
5907 2015-05-26 Dmitry Gutov <dgutov@yandex.ru>
5909 xref-prompt-for-identifier: Use a list value
5910 * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
5911 value, to be interpreted as a list of commands.
5912 (xref--prompt-p): New function.
5913 (xref--read-identifier): Use it.
5915 2015-05-26 Eli Zaretskii <eliz@gnu.org>
5917 Teach MS-Windows font back-end return per-glyph ascent/descent
5918 * src/w32font.h (struct w32_metric_cache): Add ascent and descent
5920 * src/w32font.c (w32font_text_extents): Compute, cache, and
5921 accumulate per-glyph ascent and descent values, instead of copying
5922 global values from the font. If the values are not available from
5923 the font data, i.e., non-TTF fonts, fall back on font-global values.
5924 (compute_metrics): Compute and return per-glyph ascent and descent
5925 values, if returned by GetGlyphOutlineW, falling back on
5926 font-global values. (Bug#20628)
5927 * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
5928 height of rectangle to be drawn, to be compatible with
5929 XDrawRectangle. Fixes glyphless-char display as hex codes in a
5930 box, when per-glyph ascent/descent values are used.
5932 2015-05-26 Artur Malabarba <bruce.connor.am@gmail.com>
5934 * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
5935 (tabulated-list-print): Don't sort if sorter is nil
5937 2015-05-26 Michael Albinus <michael.albinus@gmx.de>
5940 * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it. There
5941 are major modes which set `auto-save-mode' on their own rules;
5942 Tramp shall not overwrite such settings.
5945 2015-05-26 Glenn Morris <rgm@gnu.org>
5947 * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
5948 (desktop-load-file): Guess that "foobar" defines "foobar-mode".
5949 (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
5951 (vc-dir-mode): Remove unnecessary autoload.
5953 2015-05-25 Philipp Stephani <phst@google.com>
5955 * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
5956 (xterm--extra-capabilities-type): Add `getSelection'.
5957 (xterm--query): Add `no-async' argument.
5958 (xterm--init-activate-get-selection): New function.
5959 (terminal-init-xterm): Use it.
5960 (xterm--init-modify-other-keys): Rename from
5961 terminal-init-xterm-modify-other-keys.
5962 (xterm--init-bracketed-paste-mode): Rename from
5963 terminal-init-xterm-bracketed-paste-mode.
5964 (xterm--init-activate-set-selection): Rename from
5965 terminal-init-xterm-activate-set-selection.
5966 (xterm--selection-char): New function.
5967 (gui-backend-set-selection): Use it. Use the &context to only apply
5968 this method in terminals where we enabled the feature.
5969 (gui-backend-get-selection): New method.
5971 2015-05-25 Daniel Colascione <dancol@dancol.org>
5973 Add C-language keyword constants to C++
5974 * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
5975 keyword constants to C++.
5977 2015-05-25 Paul Eggert <eggert@cs.ucla.edu>
5979 Make TAGS files more portable to MS-Windows
5980 * etc/NEWS: Document this.
5981 * lib-src/etags.c (readline_internal) [DOS_NT]:
5982 Don't treat CRs differently from GNUish hosts.
5983 * lisp/progmodes/etags.el (etags-goto-tag-location):
5984 Adjust STARTPOS to account for the skipped CRs in dos-style files.
5986 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
5988 Improve fix of debbugs:20634 in tramp-sh.el
5990 2015-05-25 Eli Zaretskii <eliz@gnu.org>
5992 Fix a typo in last commit
5993 * lib-src/etags.c (C_entries): Fix a typo.
5994 * test/etags/ETAGS.good_1:
5995 * test/etags/ETAGS.good_2:
5996 * test/etags/ETAGS.good_3:
5997 * test/etags/ETAGS.good_4:
5998 * test/etags/ETAGS.good_5:
5999 * test/etags/CTAGS.good: Update due to the change in etags.c.
6001 Fix tagging of class members in C-like OO languages
6002 * lib-src/etags.c (longopts): Add new option --class-qualify and
6004 (print_help): Add help text for --class-qualify.
6005 (main): Add handling of -Q.
6006 (consider_token, C_entries) <omethodparm>: Append argument types
6007 to Objective C methods only if --class-qualify was specified.
6008 Qualify C++, Objective C, and Java class members with their class
6009 names only if --class-qualify was specified.
6010 (C_entries): If --class-qualify was not specified, remove the
6011 namespace and class qualifiers from tag names of C++ methods.
6012 This allows to use etags.el as xref back-end without the
6013 tag-symbol-match-p method, which greatly increases the number of
6014 potentially false positives. (Bug#20629)
6015 * doc/man/etags.1: Update to document the new --class-qualify
6017 * test/etags/ETAGS.good_1:
6018 * test/etags/ETAGS.good_2:
6019 * test/etags/ETAGS.good_3:
6020 * test/etags/ETAGS.good_4:
6021 * test/etags/ETAGS.good_5:
6022 * test/etags/CTAGS.good: Update due to changes in etags.c.
6024 2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
6026 (cl-generic-define-method): Side effects are evil (bug#20644)
6027 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
6028 cons-cells that might be used as keys in an `equal' hash-table.
6030 2015-05-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
6032 Make erc timestamps visible again
6033 * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
6034 timestamps visible again (if requested).
6036 2015-05-25 Eli Zaretskii <eliz@gnu.org>
6038 Fix last change in etags.c that broke tagging compresed files
6039 * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
6040 quoting of decompression shell command for MS-Windows/MS-DOS.
6042 2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
6044 * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
6047 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
6049 Fix typo in 89035e247591c8d688fce922b7079881aa110f33
6051 2015-05-25 Orivej Desh <orivej@gmx.fr> (tiny change)
6053 Fix IPv6 addresses in Tramp
6054 * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
6055 Add sqare brackets around host name.
6057 2015-05-25 Michael Albinus <michael.albinus@gmx.de>
6059 Inhibit `epa-file-handler' in Tramp
6061 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
6062 (tramp-sh-handle-insert-file-contents-literally): Inhibit also
6065 2015-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
6067 * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
6068 (pcase-let): Document the behavior in case the pattern doesn't match.
6070 2015-05-24 Artur Malabarba <bruce.connor.am@gmail.com>
6072 * lisp/emacs-lisp/tabulated-list.el: New optional print method
6073 (tabulated-list-print): New optional argument, UPDATE. If
6074 non-nil, the list is printed by only adding and deleting the
6075 changed entries, instead of erasing the whole buffer. This method
6076 is much faster when few or no entries have changed.
6077 * doc/lispref/modes.texi (Tabulated List Mode): Document it.
6078 * etc/NEWS: Document it.
6080 * lisp/emacs-lisp/tabulated-list.el: Improve printing
6081 (tabulated-list--get-sorter): New function.
6082 (tabulated-list-print): Restore window-line when remember-pos is
6083 passed and optimize away the `nreverse'.
6085 2015-05-24 Paul Eggert <eggert@cs.ucla.edu>
6087 Simpilify etags TEX mode scanning
6088 * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
6090 (TeX_commands): Deduce escapes here instead.
6091 (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
6092 This removes the need for a reset_input call.
6094 Improve etags I/O error reporting
6096 Don't include sys/types.h and sys/stat.h; no longer needed.
6097 (infilename): New static var.
6098 (process_file_name): Don't call 'stat'. Instead, just open the
6099 file for reading and report any errors. Don't bother making
6100 a copy of the file argument; it's not needed. Be more careful to
6101 use the failing errno when reporting an error.
6102 Quote the real name better (though no perfectly)
6103 when passing it to the shell.
6104 (reset_input): New function, which reports I/O errors.
6105 All uses of 'rewind' changed to use this function.
6106 (perhaps_more_input): New function, which also checks for
6107 I/O errors. All uses of 'feof' changed to use this function.
6108 (analyze_regex): Report an error if fclose fails.
6109 (readline_internal): Report an error if getc fails.
6110 (etags_mktmp): Return an error if close fails.
6112 etags.c: avoid side effects in 'if'
6113 * lib-src/etags.c (process_file_name, Perl_functions)
6114 (TEX_decode_env): Hoist side effects into previous statement.
6117 * .gitignore: Ignore all *.stamp files. Sort.
6118 Ignore [0-9]*.txt (commonly used name for git patches)
6119 and /vc-dwim-log-* (vc-dwim temporary).
6121 2015-05-24 Eli Zaretskii <eliz@gnu.org>
6123 Fix last change in etags.c, which failed the test suite
6124 * lib-src/etags.c (intoken): Add '$' to the set, as it was there
6125 before the last change.
6127 2015-05-23 Glenn Morris <rgm@gnu.org>
6129 Remove charset map files from repository, generate in first bootstrap
6130 * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
6131 (all): Create the stamp file.
6132 (extraclean): Delete the stamp file.
6133 * src/Makefile.in (lispintdir, charsets): New variables.
6134 (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
6136 (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
6137 * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
6138 * etc/charsets/*.map: Remove from repository.
6140 2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
6142 Cleanup etags.c to use locale-independent code
6143 Although this doesn't alter behavior (as etags doesn't use
6144 setlocale), the new version is more clearly locale-independent and
6145 the executable is a bit smaller on my platform.
6146 * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
6147 Include <c-ctype.h> instead of <ctype.h>.
6148 (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
6150 Remove; no longer needed.
6151 (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
6152 All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
6153 c_islower, c_tolower, respectively.
6154 (notinname, begtoken, intoken, endtoken): Rewrite as functions
6155 instead of macros, and initialize the tables at compile-time
6156 rather than at run-time.
6158 Put default action first in src/Makefile
6159 * src/Makefile.in (all): Put this rule before lisp.mk.
6160 That way, plain 'make' works in the src directory again.
6162 2015-05-23 Glenn Morris <rgm@gnu.org>
6164 * Makefile.in: Fix extraclean rule.
6165 (extraclean_dirs): New.
6166 (extraclean): Use it.
6168 2015-05-23 Eli Zaretskii <eliz@gnu.org>
6170 Avoid compiler warning in image.c on MS-Windows
6171 * src/w32term.h (x_query_color): Add prototype, to avoid compiler
6174 2015-05-23 Glenn Morris <rgm@gnu.org>
6176 Fix --without-toolkit-scroll-bars builds.
6177 * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
6178 Add new argument to x_clear_area1.
6179 (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
6180 Update x_clear_area arguments.
6182 * admin/charsets/glibc/: New directory, imported from glibc 2.21.
6183 * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
6184 Change to included version.
6185 (LOCAL, local, totalclean): Remove.
6186 (extraclean): Delete all generated files.
6188 2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
6190 * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
6192 * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
6194 tags-completion-at-point-function: Don't trust the find-tag function
6195 * lisp/progmodes/etags.el (tags-completion-at-point-function):
6196 Don't trust the find-tag function.
6198 2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
6200 Pacify --enable-gcc-warnings
6201 * src/frame.h (x_query_color): Remove redundant extern decl.
6202 * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
6203 (ftcrfont_match, ftcrfont_open, ftcrfont_close)
6204 (ftcrfont_text_extents, ftcrfont_draw):
6205 * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
6206 (XTframe_up_to_date, x_clear_area1, x_clear_frame)
6207 (x_ins_del_lines, frame_highlight, frame_unhighlight)
6208 (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
6209 (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
6210 (x_update_window_begin, x_connection_closed)
6211 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
6212 (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
6213 (*x_gc_get_ext_data, x_extension_initialize)
6214 (x_cr_accumulate_data):
6215 Remove redundant static decl. Many of these GCC doesn't complain
6216 about, but we might as well clean out the duplication while we're
6217 in the neighborhood.
6218 * src/xterm.c (x_fill_trapezoid_for_relief):
6219 Remove decl of nonexistent function.
6221 2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
6223 Replace gui-method macros with cl-generic with &context
6224 * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
6225 (gui-method-declare, gui-call): Remove.
6226 (frame-creation-function): Use cl-defgeneric.
6227 (make-frame): Adjust callers.
6228 * lisp/menu-bar.el (menu-bar-edit-menu):
6229 Use gui-backend-selection-exists-p.
6230 * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
6231 (gui-backend-get-selection): New cl-generic to replace
6232 gui-get-selection method.
6233 (gui-backend-set-selection): New cl-generic to replace
6234 gui-set-selection method.
6235 (gui-selection-owner-p): New cl-generic to replace
6236 gui-selection-owner-p method.
6237 (gui-backend-selection-exists-p): New cl-generic to replace
6238 gui-selection-exists-p method. Adjust all callers.
6239 * lisp/server.el (server-create-window-system-frame): Don't ignore
6240 window-system spec even when unsupported.
6241 * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
6242 * lisp/startup.el (handle-args-function, window-system-initialization):
6244 (command-line): Adjust calls accordingly.
6245 * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
6246 a window-system-initialization method.
6247 (handle-args-function, frame-creation-function): Use cl-defmethod.
6248 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
6249 (gui-get-selection): Use cl-defmethod on the new functions instead.
6250 * lisp/term/pc-win.el (w16-get-selection-value): Turn into
6251 a gui-backend-get-selection method.
6252 (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
6253 Use cl-defmethod on the new functions instead.
6254 (msdos-window-system-initialization): Turn into
6255 a window-system-initialization method.
6256 (frame-creation-function, handle-args-function): Use cl-defmethod.
6257 * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
6258 a window-system-initialization method.
6259 (handle-args-function, frame-creation-function): Use cl-defmethod.
6260 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
6261 (gui-get-selection): Use cl-defmethod on the new functions instead.
6262 * lisp/term/x-win.el (x-window-system-initialization): Turn into
6263 a window-system-initialization method.
6264 (handle-args-function, frame-creation-function): Use cl-defmethod.
6265 (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
6266 (gui-get-selection): Use cl-defmethod on the new functions instead.
6267 * lisp/term/xterm.el (xterm--set-selection): Turn into
6268 a gui-backend-set-selection method.
6269 * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
6270 (Fns_selection_owner_p): Remove unused arg `terminal'.
6271 (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
6273 2015-05-23 Eli Zaretskii <eliz@gnu.org>
6275 Revert "Fix etags Bug#20629 that broke C++ support."
6276 This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
6278 2015-05-23 Jan D <jan.h.d@swipnet.se>
6280 Fix etags Bug#20629 that broke C++ support.
6281 * etags.el (etags-xref-find-definitions-tag-order): Revert commit
6282 from Sun May 10 (Bug#20629).
6284 Merge branch 'cairo'.
6285 Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
6286 Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
6288 Merge branch 'master' into cairo
6290 Fixes to compile cairo branch without cairo.
6291 * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
6293 * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
6296 2015-05-23 Artur Malabarba <bruce.connor.am@gmail.com>
6298 * lisp/emacs-lisp/package.el: Always update selected-packages
6299 (package--update-selected-packages): New function.
6300 (package-menu-execute): Use it before starting the transaction,
6301 this way the list of selected packages is updated even when the
6303 (package-menu--perform-transaction): Don't edit selected-packages.
6305 2015-05-23 Eli Zaretskii <eliz@gnu.org>
6307 Fix etags reading of compressed files
6308 * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
6309 Include fcntl.h, for O_CLOEXEC.
6310 (process_file_name): Don't use 'popen', whose streams cannot be
6311 rewound. Instead, uncompress the file to a temporary file,
6312 created by 'etags_mktmp', and read from that as usual.
6313 (etags_mktmp): New function.
6314 * test/etags/ETAGS.good_1:
6315 * test/etags/ETAGS.good_2:
6316 * test/etags/ETAGS.good_3:
6317 * test/etags/ETAGS.good_4:
6318 * test/etags/ETAGS.good_5: Update to be consistent with latest
6319 changes in etags.c regarding reading compressed files.
6321 Improve documentation of 'set-fontset-font'
6322 * doc/lispref/display.texi (Fontsets): Document the value of nil
6323 for the 3rd argument of 'set-fontset-font'.
6325 Fix documentation of forward-line
6326 * src/cmds.c (Fforward_line): Clarify the return value if the line
6327 at end of accessible portion of the buffer has no newline.
6328 * doc/lispref/positions.texi (Text Lines): Document what happens
6329 if the line at end of accessible portion of buffer has no newline.
6332 2015-05-22 Glenn Morris <rgm@gnu.org>
6334 * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
6336 * admin/charsets/mapconv (LC_ALL): Set to C.
6338 * Makefile.in: Add admin/charsets into top-level clean rules.
6339 (clean): Add admin/charsets.
6340 (maybeclean_dirs): New variable.
6341 (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
6343 * admin/charsets/Makefile.in (LOCAL, local): Fix members.
6345 2015-05-22 Artur Malabarba <bruce.connor.am@gmail.com>
6347 * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
6349 2015-05-22 Glenn Morris <rgm@gnu.org>
6351 Generate admin/charsets Makefile via configure, and make more portable.
6352 * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
6353 (admin/charsets/Makefile): Generate it.
6354 * admin/charsets/Makefile.in: Rename from Makefile.
6355 (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
6356 New variables, set by configure.
6357 (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
6358 (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
6359 (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
6360 (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
6361 (TRANS_TABLE, CHARSETS): Add directory prefix to value.
6362 (all): Declare PHONY.
6363 (local): New PHONY target.
6364 (map_template): New template. Use to define short PHONY aliases.
6365 (*.map): Add directory prefixes to targets and prerequisites.
6366 Respect make verbosity.
6367 (JISC6226.map): Replace non-portable sed append without newline.
6368 (install): Remove rule.
6369 (clean): Only delete temporary sedscript.
6370 (bootstrap-clean, distclean, maintainer-clean, extraclean)
6371 (totalclean): New PHONY rules.
6372 * admin/charsets/mapconv (BASE): Replace basename with expr.
6373 (FILE): Add "mapfiles" subdirectory.
6374 (AWK): New variable. Use throughout in place of "awk".
6375 (main): Use "gunzip -c" in place of "zcat".
6376 Don't leave whitespace before "p", for older sed.
6377 * admin/charsets/mapfiles/PTCP154: Add final newline,
6378 to make older sed versions happy.
6380 2015-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
6382 * lisp/autorevert.el: Use lexical-binding. Fix hook usage.
6383 (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
6384 (auto-revert-notify-watch-descriptor): Use defvar-local.
6385 (find-file-hook, auto-revert-tail-mode, )
6386 (auto-revert-notify-add-watch): Use setq-local.
6387 (auto-revert-notify-add-watch): Don't call make-local-variable on
6388 kill-buffer-hook (bug#20601).
6390 2015-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
6392 Change defgeneric so it doesn't completely redefine the function
6393 * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
6394 previously defined methods.
6395 (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
6396 (cl--generic-prefill-dispatchers): Only define during compilation.
6397 (cl-method-qualifiers): Remove redundant alias.
6398 (help-fns-short-filename): Silence byte-compiler.
6399 * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
6401 2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
6403 (package-menu-execute): Remove reference to remove-dups
6405 2015-05-21 kwhite <kwhite@gnu.org>
6407 * lisp/erc/erc.el: Hide network/channel messages
6408 (erc-network-hide-list, etc-channel-hide-list): New lists to define
6409 message types per network/channel.
6410 (erc-add-targets): New function to parse list of targets
6411 (erc-hide-current-message-p): Modified to check for new targets
6413 2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
6415 Don't quote nil and t in doc strings
6416 This is as per "Tips for Documentation Strings" in the elisp manual.
6417 For consistency, do the same in diagnostics and comments.
6419 2015-05-21 Eli Zaretskii <eliz@gnu.org>
6421 Fix a minor problem with mouse-face on mode line
6422 * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
6423 mouse face also if the mouse pointer hovers above mode-line glyphs
6424 that don't come from any Lisp string. (Bug#20620)
6426 2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
6428 * lisp/emacs-lisp/package.el: Fix selected-package logic
6429 (package-menu-execute): Mark as selected all non-upgrade packages
6431 (package-menu--perform-transaction): Don't mark anything.
6433 * lisp/emacs-lisp/package.el: Mode-line progress report
6434 (package-menu--transaction-status): New variable.
6435 (package-menu-mode, package-menu--perform-transaction): Use it.
6437 * lisp/emacs-lisp/package.el: Better transaction messages
6438 (package-menu--partition-transaction): New function.
6439 (package-menu--prompt-transaction-p, package-menu-execute): Use
6441 (package-menu--perform-transaction): Don't do any messaging.
6443 * lisp/emacs-lisp/package.el: Revert async package transactions
6444 (package-menu-async): Update doc.
6445 (package-install-from-archive, package-download-transaction)
6446 (package-install, package-menu--perform-transaction)
6447 (package-menu-execute): Remove asynchronous functionality.
6449 2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
6451 Revert doc string changes to f90.el
6452 Problem reported by Glenn Morris in:
6453 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
6454 * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
6455 Revert recent changes to doc strings, as it's intended that they
6456 use grave accent, not quote.
6458 2015-05-20 Bozhidar Batsov <bozhidar@batsov.com>
6460 Improve parameter name
6462 Add new inline function `hash-table-empty-p'
6464 2015-05-20 Paul Eggert <eggert@cs.ucla.edu>
6466 Don't require help-fns when not needed
6467 * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
6468 * lisp/emacs-lisp/elint.el:
6469 Don't require help-fns at the top level.
6470 * lisp/emacs-lisp/advice.el (ad-arglist):
6471 * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
6472 Don't require help-fns. (Bug#17001)
6474 2015-05-20 Eli Zaretskii <eliz@gnu.org>
6476 Fix slash collapsing in etags on MS-Windows
6477 * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
6478 MS-Windows code from the Posix code, and support collapsing both
6479 forward- and back-slashes on MS-Windows. Fixes a regression found
6482 Improve documentation of glyphless-char-display
6483 * doc/lispref/display.texi (Glyphless Chars): Improve
6484 documentation of glyphless character display.
6486 Fix "acronym" display of glyphless characters on w32
6487 * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
6488 ignore "acronym" substitutes of 1 character for glyphless characters.
6490 2015-05-20 Oleh Krehel <ohwoeowho@gmail.com>
6492 Add an automated test for let-when-compile
6493 * test/automated/subr-tests.el (let-when-compile): New test.
6495 Add let-when-compile macro instead of using pcase-let
6496 * lisp/subr.el (let-when-compile): New let-like macro that makes its
6497 bindings known to macros like `eval-when-compile' in the body.
6498 * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
6499 `let-when-compile'. Also comment out the unused lexical var
6501 The change greatly improves readability, while providing almost the
6502 same (even shorter) byte code: instead of pre-evaluating 10 variables,
6503 tossing them into a list, and destructuring that list a full screen
6504 page later, the variables are simply bound as they are evaluated,
6505 wrapped individually in `eval-when-compile'.
6507 2015-05-20 Artur Malabarba <bruce.connor.am@gmail.com>
6509 * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
6510 (package-delete-button-action): New function.
6511 (describe-package-1): Add Delete button.
6513 * lisp/emacs-lisp/package.el: Better dependency description
6514 (package--used-elsewhere-p): New optional arg, ALL, and return
6515 package-desc objects instead of names.
6516 (package-delete): Update accordingly.
6517 (describe-package-1): Describe which packages require the package.
6519 2015-05-20 Martin Rudalics <rudalics@gmx.at>
6521 Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
6522 * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
6523 Fix doc-string (Bug#20533).
6525 Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
6526 * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
6527 (switch-to-buffer): If the selected window is strongly dedicated
6528 to its buffer, signal error before prompting for buffer name. Handle
6529 `switch-to-buffer-in-dedicated-window'. (Bug#20472)
6530 * doc/lispref/windows.texi (Switching Buffers): Document
6531 `switch-to-buffer-in-dedicated-window'.
6533 2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
6535 Prefer "this" to “this” in doc strings
6536 This mostly just straightens quotes introduced in my previous patch.
6537 Suggested by Dmitry Gutov in:
6538 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
6539 * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
6540 * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
6541 * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
6542 * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
6543 * lisp/vc/log-edit.el, lisp/xt-mouse.el:
6544 Prefer straight double quotes to curved double quotes in doc strings.
6546 Fix minor quoting problems in doc strings
6547 These were glitches regardless of how or whether we tackle the
6548 problem of grave accent in doc strings.
6549 * lisp/calc/calc-aent.el (math-restore-placeholders):
6550 * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
6551 * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
6552 * lisp/leim/quail/hebrew.el ("hebrew-new")
6553 ("hebrew-biblical-sil"):
6554 * lisp/leim/quail/thai.el ("thai-kesmanee"):
6555 * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
6556 Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
6557 * lisp/calendar/calendar.el (calendar-month-abbrev-array):
6558 * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
6559 * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
6560 * lisp/cedet/semantic/tag.el (semantic-tag-copy)
6561 (semantic-tag-components):
6562 * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
6563 * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
6564 * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
6565 * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
6566 * lisp/emacs-lisp/generator.el (iter-next):
6567 * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
6568 (gnus-article-mode-syntax-table):
6569 * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
6570 * lisp/net/soap-client.el (soap-wsdl-get):
6571 * lisp/net/telnet.el (telnet-mode):
6572 * lisp/org/org-compat.el (org-number-sequence):
6573 * lisp/org/org.el (org-remove-highlights-with-change)
6574 (org-structure-template-alist):
6575 * lisp/org/ox-html.el (org-html-link-org-files-as-html):
6576 * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
6577 (handwrite-12pt, handwrite-13pt):
6578 * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
6579 * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
6580 * lisp/progmodes/verilog-mode.el (verilog-tool)
6581 (verilog-string-replace-matches, verilog-preprocess)
6582 (verilog-auto-insert-lisp, verilog-auto-insert-last):
6583 * lisp/textmodes/makeinfo.el (makeinfo-options):
6584 * src/font.c (Ffont_spec):
6585 Fix minor quoting problems in doc strings, e.g., missing quote,
6586 ``x'' where `x' was meant, etc.
6587 * lisp/erc/erc-backend.el (erc-process-sentinel-2):
6588 Fix minor quoting problem in other string.
6589 * lisp/leim/quail/ethiopic.el ("ethiopic"):
6590 * lisp/term/tvi970.el (tvi970-set-keypad-mode):
6591 Omit unnecessary quotes.
6592 * lisp/faces.el (set-face-attribute, set-face-underline)
6593 (set-face-inverse-video, x-create-frame-with-faces):
6594 * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
6595 * lisp/mail/supercite.el (sc-attribs-%@-addresses)
6596 (sc-attribs-!-addresses, sc-attribs-<>-addresses):
6597 * lisp/net/tramp.el (tramp-methods):
6598 * lisp/recentf.el (recentf-show-file-shortcuts-flag):
6599 * lisp/textmodes/artist.el (artist-ellipse-right-char)
6600 (artist-ellipse-left-char, artist-vaporize-fuzziness)
6601 (artist-spray-chars, artist-mode, artist-replace-string)
6602 (artist-put-pixel, artist-text-see-thru):
6603 * lisp/vc/ediff-util.el (ediff-submit-report):
6604 * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
6605 Use double-quotes rather than TeX markup in doc strings.
6606 * lisp/skeleton.el (skeleton-pair-insert-maybe):
6607 Reword to avoid the need for grave accent and apostrophe.
6608 * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
6609 Don't use grave and acute accents to quote.
6611 2015-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
6613 * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
6615 2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
6617 Try to port new etags tests to MS-Windows
6618 * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
6619 * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
6620 * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
6621 Adjust to test-case changes below.
6622 * test/etags/Makefile (CSRC): Remove dostorture.c.
6623 Whatever it was trying to test, wasn't working portably.
6624 (LC_ALL): Remove. Apparently there wasn't an encoding problem,
6625 just a line-ending problem.
6626 * test/etags/c-src/dostorture.c: Remove.
6627 * test/etags/cp-src/c.C: Remove stray CR.
6628 * test/etags/html-src/algrthms.html: Remove trailing CRs.
6629 State UTF-8 as the encoding. The file is ASCII so it doesn't matter,
6630 but if someone edits it later it should stay UTF-8-compatible.
6632 2015-05-19 Eli Zaretskii <eliz@gnu.org>
6634 Fix display of overlapping window-specific overlays
6635 * src/keyboard.c (adjust_point_for_property): When adjusting point
6636 due to display strings, ignore overlays that are specific to
6637 windows other than the currently selected one.
6638 * src/xdisp.c (handle_single_display_spec): If the display
6639 property comes from an overlay, arrange for buffer iteration to
6640 resume only after the end of that overlay. (Bug#20607)
6642 2015-05-19 Dmitry Gutov <dgutov@yandex.ru>
6644 New command icomplete-force-complete-and-exit
6645 * lisp/icomplete.el (icomplete-force-complete-and-exit):
6647 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
6648 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
6649 (icomplete-minibuffer-map): Bind C-j to it.
6650 (icomplete-forward-completions, icomplete-backward-completions):
6651 Mention the new command in the docstring.
6652 * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
6653 the previous fix for bug#17545.
6655 2015-05-19 Martin Rudalics <rudalics@gmx.at>
6659 In Elisp manual explain how to override window manager positioning (Bug#20552)
6660 * doc/lispref/frames.texi (Position Parameters): Give example of
6661 how to override a window manager positioning decision.
6663 Clarify concept of "surrogate minibuffer frames" (Bug#20538)
6664 * src/frame.c (Fdelete_frame): In doc-string mention that frame
6665 can't be deleted if it has a surrogate minibuffer.
6666 * doc/lispref/frames.texi (Minibuffers and Frames)
6667 (Deleting Frames): Explain "surrogate minibuffer frames".
6669 In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
6670 * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
6672 2015-05-18 Glenn Morris <rgm@gnu.org>
6674 Add option to ignore commit lines matching a pattern in ChangeLog.
6675 * build-aux/gitlog-to-changelog: Add --ignore-line option.
6676 * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
6678 2015-05-18 Paul Eggert <eggert@cs.ucla.edu>
6680 Don't skip new etags tests on non-UTF-8 hosts
6681 Problem reported by Eli Zaretskii for MS-Windows.
6682 * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
6683 (LC_ALL): Set to C if the current locale isn't UTF-8.
6684 (.PHONY): Remove ediff_1 thru ediff_5.
6685 (check): Always run.
6687 2015-05-18 Glenn Morris <rgm@gnu.org>
6689 * lisp/calculator.el (calculator-funcall):
6690 * lisp/textmodes/artist.el (artist-spray-random-points):
6691 Use standard degree/radian conversion utilities.
6693 Further lisp-complete-symbol related cleanup.
6694 * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
6695 Unadvertise non-functional argument. Replace obsolete alias.
6697 2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
6699 Add a test case for Maven warning ouput
6700 * test/automated/compile-tests.el
6701 (compile-tests--test-regexps-data): Add a case for Maven warning
6703 (compile--test-error-line): Check the compilation message type, if
6704 it's specified in the test data.
6706 2015-05-18 Paul Pogonyshev <pogonyshev@gmail.com>
6708 Update Maven compilation-mode entry to distinguish warnings
6709 * lisp/progmodes/compile.el
6710 (compilation-error-regexp-alist-alist): Update Maven entry to
6711 distinguish warnings (bug#20556).
6713 2015-05-18 Przemysław Wojnowski <esperanto@cumego.com>
6715 * test/automated/sgml-mode-tests.el: New file.
6717 2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
6719 Improve handling of the first Git revision
6720 * lisp/vc/log-view.el (log-view-toggle-entry-display): When
6721 there's no next entry, delete until the end of the buffer.
6722 (log-view-end-of-defun-1): Stop at eob.
6723 * lisp/vc/vc-annotate.el
6724 (vc-annotate-show-diff-revision-at-line-internal): Don't give up
6725 when previous-revision is nil.
6726 * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
6727 with `--' to avoid ambiguity.
6728 (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
6729 returned revision string.
6730 (vc-git-annotate-time): Expect `^' before the first revision.
6731 * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
6732 REV1 is nil, and REV2 is not.
6733 * lisp/vc/vc.el: Update the description of the `diff' function.
6735 2015-05-18 Oleh Krehel <ohwoeowho@gmail.com>
6737 Allow checkdoc to be called in batch
6738 * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
6739 is non-nil, echo the error with `warn'.
6740 How it can be used in -batch:
6741 (with-current-buffer (find-file "checkdoc.el")
6742 (checkdoc-current-buffer t))
6744 2015-05-18 Glenn Morris <rgm@gnu.org>
6746 * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
6748 2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
6750 * admin/notes/unicode: New section "binary files".
6752 Change new etags test to use UTF-8 encoding
6753 * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
6754 * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
6755 * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
6756 * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
6757 * test/etags/html-src/softwarelibero.html:
6758 Switch to UTF-8 encoding.
6759 * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
6760 Remove Makefile, as it's too incestuous to have the test input
6761 include the build procedure.
6762 (UTF8_LOCALE, UTF_ENCODING): New macros.
6763 (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
6764 (check): Skip if not UTF-8.
6766 (FRC): Remove, as superseded by .PHONY. All uses removed.
6767 (regexfile): Prefer printf to echo when outputting oddball chars.
6768 (.PRECIOUS): Remove, as these files are not built.
6770 Rename 'foo-gzipped' to 'foo.gz'
6771 * test/automated/data/decompress/foo.gz:
6772 Rename from test/automated/data/decompress/foo-gzipped,
6773 to make it easier for other tools to tell that it's compressed.
6774 * test/automated/zlib-tests.el (zlib--decompress):
6775 Adjust to renamed file.
6777 2015-05-17 Dmitry Gutov <dgutov@yandex.ru>
6779 Set up default-directory
6780 * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
6782 (vc-annotate-show-changeset-diff-revision-at-line): Set up an
6783 appropriate value for default-directory.
6785 2015-05-17 Samer Masterson <samer@samertm.com>
6787 * lisp/eshell/em-term.el (eshell-term-sentinel):
6788 No-op by default, only kills term buffer if
6789 `eshell-destroy-buffer-when-process-dies' is non-nil. (Bug#18108)
6790 (eshell-destroy-buffer-when-process-dies): New custom to preserve
6793 eshell: Introduce new buffer syntax
6794 The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
6795 buffer-name>'. Remove `eshell-buffer-shorthand', as it is no longer
6797 * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
6798 (eshell-get-target): Remove shorthand-specific code.
6799 * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
6802 2015-05-17 Jan D <jan.h.d@swipnet.se>
6804 Merge branch 'master' into cairo
6806 2015-04-26 Jan D <jan.h.d@swipnet.se>
6808 Merge branch 'master' into cairo
6810 Add PBM support for cairo.
6811 * src/image.c (xcolor_to_argb32): New function.
6812 (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
6813 (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
6814 XImagePtr if ! USE_CAIRO.
6815 (pbm_load): Add cairo support.
6817 2015-04-12 Jan D <jan.h.d@swipnet.se>
6819 x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
6820 * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
6821 (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
6822 (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
6823 x_free_cr_resources.
6825 Handle specified bg in images. Use generic libpng code for PNG:s.
6826 * src/image.c (get_spec_bg_or_alpha_as_argb)
6827 (create_cairo_image_surface): New functions when USE_CAIRO.
6828 (xpm_load): Call the above functions. Handle XPM without mask
6830 (png_load_body): Handle USE_CAIRO case.
6831 (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
6833 (jpeg_load_body): Call create_cairo_image_surface.
6834 (gif_load, svg_load_image): Handle specified background, call
6835 create_cairo_image_surface.
6836 * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
6838 2015-04-11 Jan D <jan.h.d@swipnet.se>
6840 Support GIF and Tiff with cairo.
6841 * configure.ac: Allow jpeg with cairo.
6842 Allow tiff and gif with cairo.
6843 * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
6844 (tiff_load): Create cairo image surface if USE_CAIRO.
6847 Support JPEG with USE_CAIRO.
6848 * configure.ac: Allow jpeg with cairo.
6849 * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
6851 2015-04-05 Jan D <jan.h.d@swipnet.se>
6853 Support RSVG and cairo.
6854 * configure.ac: Allow rsvg with cairo. Move back HAVE_RSVG.
6855 * src/dispextern.h (struct image): add cr_data2 if cairo.
6856 * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
6857 (x_clear_image): Free cr_data and cr_data2 if set.
6858 (xpm_load): Assign data to cr_data2.
6859 (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
6861 2015-04-03 Jan D <jan.h.d@swipnet.se>
6863 Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
6864 * configure.ac (HAVE_RSVG): Move after cairo.
6865 (USE_CAIRO): Disable rsvg, don't disable Xpm.
6866 * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
6867 (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
6869 (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
6870 (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
6871 and create a surface.
6873 Tool tips for menus did not show any text.
6874 * src/xterm.c (x_update_begin): Don't create any surface for non-visible
6875 tip frames, the geometry may be wrong.
6877 Merge branch 'master' into cairo, fixes tooltips not shown.
6879 Merge branch 'master' into cairo
6881 Add CAIRO_CFLAGS to lwlib/Makefile.in
6882 * Makefile.in (CAIRO_CFLAGS): Add.
6884 2015-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6886 * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
6888 2015-02-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6890 Draw outermost line using black relief and erase corners also for cairo.
6891 * xterm.c [USE_CAIRO]: Include math.h.
6892 (enum corners) [USE_CAIRO]: New enum.
6893 (x_erase_corners_for_relief) [USE_CAIRO]: New function.
6894 (x_draw_relief_rect) [USE_CAIRO]: Use it. If box width is larger
6895 than 1, draw the outermost line using the black relief.
6897 * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
6899 2015-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6901 * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
6903 * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
6905 Use int instead of unsigned int for width and height args.
6906 * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
6907 (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
6908 width and height args.
6910 Modernize k&r cairo-related function declarations.
6911 * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
6912 (xg_print_frames_dialog): Modernize k&r declarations.
6913 * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
6914 (Fx_print_frames_dialog): Modernize k&r declarations.
6915 * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
6916 (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
6917 (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
6918 (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
6919 (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
6920 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
6921 (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
6922 (x_clear_area): Modernize k&r declarations.
6924 Implement wave-style variant of underlining for cairo.
6925 * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
6926 (x_draw_underwave) [USE_CAIRO]: Use it.
6928 * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
6930 2015-02-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6932 Fix fringe bitmap initialization for cairo.
6933 * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
6934 cairo image surface.
6935 * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
6937 2015-02-11 Jan D <jan.h.d@swipnet.se>
6940 * configure.ac (with-cairo): New option.
6941 (USE_CAIRO): Default to yes for Gtk+ 3. Add code to test for cairo,
6942 set CAIRO_CFLAGS, CAIRO_LIBS. Add ftcrfonto to FONT_OBJ if cairo.
6943 Output "Does Emacs use cairo?".
6944 * lisp/version.el (emacs-version): Add cairo version.
6945 * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
6946 (FONT_OBJ): Add comment about ftcrfont.
6947 (ALL_CFLAGS): Add CAIRO_CFLAGS.
6948 (LIBES): Add CAIRO_LIBS.
6949 * src/dispextern.h (struct image): Add cr_data for cairo.
6950 (x_cr_init_fringe): Declare.
6951 * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
6952 * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
6953 * src/fringe.c (x_cr_init_fringe): New function name that shares code
6954 with w32_init_fringe.
6955 * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
6956 * src/ftfont.c (ftfont_info_size); New global variable.
6957 (ftfont_open2): New extern function almost the same as old ftfont_open,
6958 but takes the font_object as argument.
6959 (ftfont_open): Build font object and call ftfont_open2.
6960 * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
6961 * src/gtkutil.c (xg_clear_under_internal_border)
6962 (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
6963 queue_draw if not cairo. Change args to x_clear_area.
6964 (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
6965 (xg_page_setup_dialog, xg_get_page_setup, draw_page)
6966 (xg_print_frames_dialog): New functions for printing.
6967 * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
6968 (xg_print_frames_dialog): Declare.
6969 * src/image.c: Add defined (USE_CAIRO) for PNG.
6970 Add !defined USE_CAIRO for W32 PNG code.
6971 (x_clear_image): If cairo, destroy the surface in cr_data.
6972 (png_load): Add new cairo compatible implementation.
6973 (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
6974 * src/xfns.c: New section Printing.
6975 (x-export-frames, x-page-setup-dialog, x-get-page-setup)
6976 (x-print-frames-dialog): New printing functions.
6977 (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
6979 (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
6980 Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
6981 (syms_of_xfns): Provide cairo and defvar cairo-version-string.
6982 defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
6983 * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
6984 (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
6985 (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
6986 (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
6988 (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
6989 (max_fringe_bmp, fringe_bmp): New variables.
6990 (x_gc_get_ext_data, x_extension_initialize)
6991 (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
6992 (x_set_cr_source_with_gc_foreground)
6993 (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
6994 (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
6995 (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
6996 (x_prepare_for_xlibdraw, x_set_clip_rectangles)
6997 (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
6998 (x_clear_window, x_fill_trapezoid_for_relief): New functions.
6999 (x_update_begin): Create cairo surface if needed.
7000 (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
7001 (x_update_end): Paint cairo drawing surface to xlib surface.
7002 (x_clear_under_internal_border, x_after_update_window_line): Adjust
7003 arguments to x_clear_area.
7004 (x_draw_fringe_bitmap): Call x_fill_rectangle. Get GC values and
7005 call x_cr_draw_image for cairo. Call x_reset_clip_rectangles instead
7007 (x_set_glyph_string_clipping)
7008 (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
7009 instead of XSetClipRectangles.
7010 (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
7011 x_fill_rectangle instead of XFillRectangle.
7012 (x_draw_glyph_string_foreground)
7013 (x_draw_composite_glyph_string_foreground)
7014 (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
7016 (x_draw_relief_rect): Add code for USE_CAIRO.
7017 Call x_reset_clip_rectangles instead of XSetClipMask.
7018 (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
7019 x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
7020 instead of XSetClipMask.
7021 (x_draw_image_foreground, x_draw_image_foreground_1):
7022 x_draw_rectangle instead of XDrawRectangle.
7023 (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
7025 (x_draw_image_glyph_string): If img has cr_data, use it as
7027 (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
7028 XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
7029 (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
7030 x_reset_clip_rectangles instead of XSetClipMask.
7031 (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
7032 (x_clear_area1): New function that calls XClearArea.
7033 (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
7035 (x_clear_frame): x_clear_window instead of XClearWindow.
7036 (x_scroll_run): Set frame garbaged if cairo.
7037 (XTmouse_position): Initialize *part to 0.
7038 (x_scroll_bar_create): Adjust arguments to x_clear_area.
7039 (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
7040 x_fill_rectangle instead of XFillRectangle.
7041 (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
7042 arguments to x_clear_area.
7043 (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
7044 (handle_one_xevent): Adjust arguments to x_clear_area.
7045 Destroy cairo surface for frame if ConfigureNotify.
7046 (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
7047 (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
7048 x_reset_clip_rectangles instead of XSetClipMask.
7049 (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
7050 x_reset_clip_rectangles instead of XSetClipMask.
7051 (x_clear_frame_area): Adjust arguments to x_clear_area.
7052 (x_free_frame_resources): Call x_prepare_for_xlibdraw.
7053 (x_term_init): Call x_extension_initialize if cairo.
7054 (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
7055 x_cr_destroy_fringe_bitmap for cairo.
7056 (x_initialize): Call x_cr_init_fringe for cairo.
7057 * src/xterm.h: Add include of cairo header files.
7058 (x_bitmap_record): Add img if cairo.
7059 (x_gc_ext_data): New struct for cairo.
7060 (x_display_info): Add ext_codes for cairo.
7061 (x_output): Add cr_context and cr_surface for cairo.
7062 (x_clear_area): Change arguments from Display*/Window to frame pointer.
7063 (x_query_color, x_begin_cr_clip, x_end_cr_clip)
7064 (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
7065 (x_cr_draw_frame, x_cr_export_frames): Declare.
7067 2015-05-17 Johan Bockgård <bojohan@gnu.org>
7069 Fix integer-valued `mouse-highlight' (Bug#20590)
7070 * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
7072 2015-05-17 Eli Zaretskii <eliz@gnu.org>
7074 MS-Windows followup for ASCIIfication of curved quotes
7075 * lisp/term/w32console.el (terminal-init-w32console): Repeat the
7076 test for curved quotes being displayable, after switching the
7077 terminal encoding. (Bug#20545)
7079 2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
7083 2015-05-17 Jan D <jan.h.d@swipnet.se>
7085 Add comment that x_shift_glyphs_for_insert is never called.
7086 * xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
7087 comment that this function is never called.
7089 2015-05-16 Glenn Morris <rgm@gnu.org>
7091 * src/lisp.mk: Remove from repository and generate at build-time.
7092 * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
7093 (shortlisp_filter): New variable.
7094 (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
7095 (distclean): Remove lisp.mk.
7096 * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
7097 * lisp/loadup.el: Tweak layout to make it easier to parse.
7098 * make-dist: Do not distribute src/lisp.mk.
7100 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
7102 Display shorter dates in Git annotate output
7103 * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
7104 format (when not overridden with vc-git-annotate-switches).
7105 (vc-git-annotate-time): Support the short format, as well as ISO
7106 8601 that has been used until now (bug#5428).
7108 2015-05-16 Paul Eggert <eggert@cs.ucla.edu>
7110 ASCIIfy curved quotes on displays lacking them
7111 * lisp/international/mule-cmds.el (set-locale-environment):
7112 If curved quotes don't work, display straight ASCII approximations
7115 2015-05-16 Glenn Morris <rgm@gnu.org>
7117 Small src/Makefile simplification.
7118 * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
7119 * src/Makefile.in (lisp): Derive from shortlisp.
7120 ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
7122 2015-05-16 Eli Zaretskii <eliz@gnu.org>
7124 * lisp/help-mode.el (help-go-forward): Doc fix.
7127 * doc/lispref/debugging.texi (Profiling): Improve indexing.
7130 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
7132 Use `unless' to have one fewer `not'
7133 * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
7134 have one fewer `not'.
7136 Remove redundant :group declarations from vc-git.el
7137 * lisp/vc/vc-git.el (vc-git-diff-switches)
7138 (vc-git-annotate-switches, vc-git-resolve-conflicts)
7139 (vc-git-program, vc-git-root-log-format): Remove the redundant
7140 :group declarations.
7142 2015-05-16 Nicolas Petton <nicolas@petton.fr>
7144 Removes the predicate from lisp-complete-symbol (Bug#20456)
7145 * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
7146 and remove it from the docstring.
7148 2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
7150 Add new option vc-git-resolve-conflicts
7151 * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
7152 (vc-git-find-file-hook): Add to after-save-hook only when the
7154 (vc-git-resolve-when-done): Update to honor the new variable.
7157 2015-05-16 Artur Malabarba <bruce.connor.am@gmail.com>
7159 * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
7160 (tabulated-list-init-header): Document new behavior.
7161 (tabulated-list-print-fake-header): No nothing if
7162 `tabulated-list--header-string' is nil.
7163 (tabulated-list--header-string): Add a docstring.
7164 * doc/lispref/modes.texi (Tabulated List Mode): Document it.
7165 * etc/NEWS: Document it.
7167 2015-05-15 Leo Liu <sdl.web@gmail.com>
7169 Revert "Fix cps--gensym"
7170 * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
7171 fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
7173 2015-05-15 Glenn Morris <rgm@gnu.org>
7175 Replace AC_SUBST_FILE in configure with include in Makefiles.
7176 * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
7177 (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
7178 (AUTO_DEPEND): New output variable.
7179 * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
7180 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
7181 (lwlib_deps_frag): Replace by conditional include.
7182 * lwlib/autodeps.mk: Remove file.
7183 * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
7184 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
7185 (oldxmenu_deps_frag): Replace by conditional include.
7186 * oldXMenu/autodeps.mk: Remove file.
7187 * src/Makefile.in (AUTO_DEPEND): New, set by configure.
7188 (DEPFLAGS, MKDEPDIR): Set directly via conditional.
7189 (lisp_frag): Replace by an include.
7190 (deps_frag): Replace by conditional include.
7191 * src/autodeps.mk: Remove file.
7193 Tweak japanese.el's loading of dependencies.
7194 * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
7195 * lisp/language/japanese.el: Use require rather than load.
7196 * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
7198 * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
7199 Provide a feature in the generated file.
7201 2015-05-15 Jan D <jan.h.d@swipnet.se>
7204 * nsmenu.m (ns_popup_dialog)
7205 * nsimage.m (initFromXBM:width:height:fg:bg:)
7206 * nsfns.m (Fx_create_frame): Remove unused variables.
7207 (Fns_read_file_name): Initialize fname, remove ret.
7208 * nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
7209 (ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
7211 (init): Add parantesis in if.
7212 (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
7214 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
7216 Fix a enum conversion warning in macfont.m
7217 * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
7218 (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
7220 2015-05-15 Eli Zaretskii <eliz@gnu.org>
7222 Support de-alt dictionary with Aspell.
7223 * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
7224 Support Aspell dictionaries with names like "de-alt". (Bug#20581)
7226 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
7228 cus-start.el: Add ns-confirm-quit.
7229 * cus-start.el: Add ns-confirm-quit.
7231 Fix warnings on OSX 10.10.
7232 * nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
7233 (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
7234 (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
7235 * nsmenu.m (initWithContentRect:styleMask:backing:defer:)
7236 * nsimage.m (allocInitFromFile, setPixmapData): Only call
7237 setScalesWhenResized for OSX < 10.6.
7238 * nsterm.h (EmacsScroller): Declare scrollerWidth.
7239 * nsterm.m (ns_copy_bits): New function that does not use deprecated
7241 (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
7242 (runAlertPanel): New function.
7243 (applicationShouldTerminate:): Call runAlertPanel.
7244 (initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
7246 (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
7247 (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
7248 (draggingEntered:): Returns NSDragOperation.
7249 (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
7251 2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
7253 * lisp/emacs-lisp/package.el: Don't ensure-init during startup
7254 (package--init-file-ensured): New variable.
7255 (package-initialize, package--ensure-init-file): Use it.
7257 2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
7259 Honor :fore/background for XBM on NS (Bug#14969).
7260 * nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
7261 initFromXBM takes bg, fg args, remove flip arg.
7262 (ns_image_from_XBM): Add bg, fg args.
7263 * image.c (x_create_bitmap_from_data)
7264 (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
7265 * nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
7267 (initFromSkipXBM): Move code to initFromXBM.
7268 (initFromXBM): Actually set fg and bg, instead of playing alpha games.
7269 Use fg, bg from args (Bug#14969). Remove if (length) section, was always
7271 Remove bit flipping (bitPat, swt), generated incorrect images when
7272 width/height wasn't a multiple of 8.
7273 (setXBMColor:): Modify planes by comparing to saved xbm_fg.
7274 * nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
7277 2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
7279 * lisp/emacs-lisp/package.el: Be more careful with the init file
7280 (package--ensure-init-file): Check that user-init-file is set,
7281 exists, is readable, and is writable. (Bug#20584)
7282 Also expand the docstring.
7284 2015-05-14 Wilson Snyder <wsnyder@wsnyder.org>
7286 Sync with upstream verilog-mode revision 6232468
7287 * lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
7288 (verilog-highlight-grouping-keywords): Fix use of face when
7289 `verilog-highlight-grouping-keywords' set. Reported by Jeff
7291 (verilog-auto-reset): Fix AUTORESET to ignore member resets if
7292 parent is reset, bug906. Reported by Ken Schmidt.
7293 (verilog-auto-inout-module): Add fourth regexp argument to
7294 AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
7295 bug856. Reported by John Tillema.
7296 (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
7297 modport if signal attachment is itself a modport. Reported by
7299 (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
7300 always_comb and always_latch, bug844. Reported by Greg Hilton.
7301 (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
7302 with many curly-bracket pairs, bug663.
7303 (verilog-set-auto-endcomments): Fix end comments for functions of
7304 type void, etc. Reported by Alex Reed.
7305 (verilog-do-indent): Fix electric tab deleting form-feeds. Note
7306 caused by indent-line-to deleting tabls pre 24.5.
7307 (verilog-nameable-item-re): Fix nameable items that can have an
7308 end-identifier to include endchecker, endgroup, endprogram,
7309 endproperty, and endsequence. Reported by Alex Reed.
7310 (verilog-label-be): When auto-commenting a buffer, consider
7311 auto-comments on all known keywords (not just a subset thereof).
7312 Reported by Alex Reed.
7313 (verilog-auto-end-comment-lines-re)
7314 (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
7315 Automatically comment property/endproperty blocks to match other
7316 similar blocks like sequence/endsequence, function/endfunction,
7317 etc. Reported by Alex Reed.
7318 (verilog-set-auto-endcomments): Detect the function- or task-name
7319 when auto-commenting blocks that lack an explicit
7320 portlist. Reported by Alex Reed.
7321 (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
7322 allow post-AUTO user fixups, bug826. Reported by Dennis
7324 (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
7325 is nil, fix indenting initial/final to match always statements,
7326 bug825. Reported by Tim Clapp.
7327 (verilog-extended-complete-re): Fix indentation of DPI-C imports
7328 with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
7329 Mao and Jason Forkey.
7330 (verilog-read-decls): Fix parsing typed interfaces. Fix
7331 AUTOINOUTMODPORT missing types. Reported by Stephan Bourduas.
7332 Fix localparam not being ignored in AUTOINSTPARAM,
7333 bug889. Reported by Shannon Hill.
7334 (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
7335 bug793. Reported by Pierre-David Pfister.
7336 (verilog-auto-arg-format, verilog-auto-arg-ports): Add
7337 verilog-auto-arg-format to support newlines in AUTOARG. Reported
7339 (verilog-batch-execute-func): Do not batch re-auto files loaded by
7340 Local Variables. Fix printing "no changes to be saved" with
7341 verilog-batch. Reported by Dan Dever.
7342 (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
7343 interface-only modules, bug721. Reported by Dean Hoyt.
7344 Author: Alex Reed <acreed4@gmail.com>
7345 * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
7346 treat '<keyword>:<identifier>' as the start of a labeled
7347 statement, bug905. Reported by Enzo Chi.
7348 (verilog-directive-re, verilog-compiler-directives)
7349 (verilog-keywords): Match full set of IEEE 2012-1800 compiler
7350 directives (plus some extras) when determining indentation, bug
7351 901. Reported by Bernd Beuster.
7352 (verilog-at-constraint-p): Fix indentation of coverpoint bins if
7353 iff expression doesn't start with word-character, bug900.
7354 (verilog-optional-signed-range-re, verilog-optional-signed-re):
7355 Fix incorrect indentation/alignment of unsigned declarations,
7357 (verilog-looking-back, verilog-in-attribute-p): Fix labling of
7358 always constructs, bug895.
7359 (verilog-calc-1): Fix verilog-mode constraint indentation,
7360 bug324. Reported by Eric Mastromarchi.
7361 (verilog-beg-of-statement): Fix indenting for some forms of
7362 constraintsm bug433. Reported by Brad Parker. Fix indentation of
7363 continued assignment incorrect if first line ends with ']',
7364 bug437. Reported by Dan Dever. Fix indention of cover inside an
7365 ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
7367 (verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
7368 bug859. Reported by Kaushal Modi.
7369 (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
7370 (verilog-backward-token): Fix indenting sensitivity lists with
7371 named events, bug840. Reed.
7372 (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
7373 nil not honoring 'forever', 'foreach', and 'do' keywords.
7375 2015-05-14 Paul Eggert <eggert@cs.ucla.edu>
7377 Check for invalid GTK+ monitor scales
7378 * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
7379 INT_MAX for too-large scales. All callers changed to assume the
7380 result is valid (Bug#20432).
7381 (xg_frame_set_char_size, xg_update_scrollbar_pos):
7382 Calculate scale only if needed.
7383 show ASCII approximations instead.
7385 2015-05-14 Eli Zaretskii <eliz@gnu.org>
7387 Fix daemon crashes when linum-mode is turned on early on
7388 * src/window.c (Fwindow_end): Don't try calling display engine
7389 functions on initial-frame frame. (Bug#20565)
7391 Fix selective diff browsing in Ediff
7392 * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
7393 beginning of the region before searching for the
7394 ediff-regexp-focus-* regexps. (Bug#20568)
7396 2015-05-14 Jan D <jan.h.d@swipnet.se>
7399 * gtkutil.c (delete_cb): Don't send delete event here, it does arrive
7400 in the main loop, even for Gtk 3 (Bug#20142).
7402 Don't access display after i/o error (Bug#19147).
7403 * xterm.c (x_connection_closed): Add third arg ioerror.
7404 If ioerror, set display to 0 (Bug#19147).
7405 (x_error_quitter): Call x_connection_closed with third arg false.
7406 (x_io_error_quitter): Call x_connection_closed with third arg true.
7408 Handle GTK_SCALE, fixes Bug#20432.
7409 * gtkutil.c (xg_get_gdk_scale): New function.
7410 (xg_frame_set_char_size)
7411 (x_wm_set_size_hint, xg_get_default_scrollbar_width)
7412 (xg_get_default_scrollbar_height)
7413 (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
7414 when setting sizes (Bug#20432).
7416 2015-05-13 Leo Liu <sdl.web@gmail.com>
7419 * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
7421 2015-05-13 Glenn Morris <rgm@gnu.org>
7423 Fix bootstrap (void function cl-member).
7424 * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
7425 * lisp/emacs-lisp/cl-seq.el: Provide a feature.
7427 2015-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7429 * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
7430 * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
7431 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
7432 Avoid defalias for closures which are not immutable.
7433 (cl--generic-prefill-dispatchers): New macro. Use it to prefill the
7434 dispatchers table with various entries.
7435 * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
7436 * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
7438 2015-05-13 Eli Zaretskii <eliz@gnu.org>
7440 Improve tagging of C bindings in DEFVAR_*
7441 * src/Makefile.in (TAGS): Add --regex options to tag the C binding
7444 2015-05-13 Paul Eggert <eggert@cs.ucla.edu>
7446 * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
7448 2015-05-12 Glenn Morris <rgm@gnu.org>
7450 * lisp/progmodes/tcl.el (tcl-filter):
7451 Handle comint-prompt-read-only like gud.el does. (Bug#20549)
7453 Add basic VC push support.
7454 * lisp/vc/vc.el (vc-push): New autoloaded command.
7455 * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
7456 * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
7457 (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
7459 * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
7460 (vc-git-pull): Reimplement using vc-git--pushpull.
7462 * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
7463 (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
7464 * doc/emacs/maintaining.texi (Pulling / Pushing):
7465 Rename from "VC Pull". Mention pushing.
7466 (VC With A Merging VCS, VC Change Log): Update xrefs.
7467 (Branches): Update menu.
7468 * doc/emacs/emacs.texi: Update menu.
7469 * etc/NEWS: Mention this.
7471 2015-05-12 Nicolas Petton <nicolas@petton.fr>
7473 Improve the seq pcase pattern and the `seq-let' macro
7474 * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
7475 object is a sequence, and binds each element of ARGS to the
7476 corresponding element of the sequence.
7478 2015-05-12 Eli Zaretskii <eliz@gnu.org>
7480 Fix tags created from DEFVAR_* declarations in C
7481 * src/Makefile.in (TAGS): Improve the --regex argument to etags,
7482 to make tags extracted from DEFVAR_* declarations more accurate.
7484 Add a test suite for etags
7485 * test/etags/: New test suite, adapted from
7486 http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
7487 whose original author is Francesco Potortì <pot@gnu.org>.
7489 Fix tagging of symbols in C enumerations
7490 * lib-src/etags.c (consider_token): Don't tag symbols in
7491 expressions that assign values to enum constants. See
7492 http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
7494 (C_entries): Reset fvdef to fvnone after processing a preprocessor
7495 conditional and after a comma outside of parentheses.
7497 2015-05-12 Glenn Morris <rgm@gnu.org>
7499 * lisp/url/url-handlers.el (url-file-name-completion)
7500 (url-file-name-all-completions): Silence compiler.
7502 * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
7504 * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time. (Bug#20554)
7506 2015-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
7508 * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
7509 (cl--generic-mandatory-args): Remove.
7510 (cl--generic-split-args): New function.
7511 (cl-generic-define, cl--generic-lambda): Use it.
7512 (cl-generic-define-method): Use it as well, and add support for
7514 (cl--generic-get-dispatcher): Handle &context dispatch.
7515 (cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
7516 (cl--generic-dispatchers): Pre-fill.
7517 * test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
7519 2015-05-11 Glenn Morris <rgm@gnu.org>
7521 * make-dist: Abort if "make ChangeLog" fails. Add "--no-changelog".
7523 2015-05-11 Stefan Monnier <monnier@iro.umontreal.ca>
7525 * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
7526 * lisp/term/rxvt.el: Require term/xterm.
7527 (rxvt-function-map): Use xterm-rxvt-function-map.
7528 (rxvt-standard-colors): Move before first use.
7529 (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
7530 (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
7531 * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
7532 Move shared bindings between rxvt and xterm to it.
7533 (xterm-function-map): Use it. Move the xterm-paste binding to
7534 xterm-rxvt-function-map (bug#20444).
7535 (xterm-standard-colors): Move before first use.
7536 (xterm--push-map): New function.
7537 (xterm-register-default-colors): Take standard colors as argument.
7538 (terminal-init-xterm): Use it. Adjust call to
7539 xterm-register-default-colors.
7541 2015-05-11 Glenn Morris <rgm@gnu.org>
7543 * lisp/term/x-win.el: Quieten --without-x compilation.
7544 (x-own-selection-internal, x-disown-selection-internal)
7545 (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
7548 * Makefile.in (emacslog): Remove srcdir.
7549 (ChangeLog): Update for the above.
7551 2015-05-11 Paul Eggert <eggert@cs.ucla.edu>
7555 2015-05-10 Fabián Ezequiel Gallina <fgallina@gnu.org>
7557 python.el: better limit for looking-back calls
7558 * lisp/progmodes/python.el (python-shell-accept-process-output):
7559 Use last comint prompt start as limit for looking-back.
7561 2015-05-10 Stefan Monnier <monnier@iro.umontreal.ca>
7563 CEDET (srecode-insert-fcn): Fix use of oref on a class
7564 * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
7565 a class. Reported by Pierre Lorenzon.
7566 (srecode-template-inserter-point): Remove declaration.
7568 CEDET (srecode-create-dictionary): Avoid obsolete object name
7569 * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
7570 Don't use a symbol as an object name. Reported by Pierre Lorenzon.
7572 2015-05-10 Paul Eggert <eggert@cs.ucla.edu>
7574 C-x 8 shorthands for curved quotes, Euro, etc.
7575 Although C-x 8 lets you insert arbitrary Unicode characters,
7576 it's awkward to use this to insert commonly used symbols such as curved
7577 quotes, the Euro symbol, etc. This patch adds simpler sequences for
7578 characters commonly found in English text and in basic math.
7579 For example, assuming the Alt key works on your keyboard and iso-transl
7580 is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
7581 to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
7583 * doc/emacs/mule.texi (Unibyte Mode):
7584 A few other printing characters now work too.
7585 * etc/NEWS: Document this.
7586 * lisp/international/iso-transl.el (iso-transl-char-map):
7587 Also support the following characters:
7588 ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
7590 2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
7592 Add xref-find-regexp
7593 * lisp/progmodes/xref.el (xref-find-function): Describe the
7595 (xref-find-regexp): New command, using it.
7596 (xref-collect-references): Rename to xref-collect-matches.
7597 (xref--collect-reference): Rename to xref--collect-match.
7598 (xref-collect-matches, xref--collect-match): Accept new argument,
7599 KIND. Update accordingly.
7600 (xref--regexp-to-extended): New function.
7601 * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
7603 (elisp--xref-find-matches): Accept new argument. Resolve a FIXME.
7604 * lisp/progmodes/etags.el (etags-xref-find):
7605 Support the `matches' action.
7606 (etags--xref-find-matches): New function.
7608 2015-05-10 Glenn Morris <rgm@gnu.org>
7610 * Makefile.in: Fixes for recent change-history changes.
7611 (change-history-nocommit): Update footer regexp.
7612 Ensure output script stays executable.
7614 2015-05-10 Nicolas Petton <nicolas@petton.fr>
7616 New version of `seq-let' based on a pcase pattern
7617 * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
7618 pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
7620 2015-05-10 Przemysław Wojnowski <esperanto@cumego.com>
7622 Add basic HTML5 tags and a template
7623 * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
7624 (html-tag-alist): Add HTML5 tags.
7625 (html-tag-help): Add new tags descriptions.
7626 (html-navigational-links): Template for nav links.
7627 (html-html5-template): Template for a HTML5 page.
7629 2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
7631 semantic/symref/grep: Don't use word boundaries
7632 * lisp/cedet/semantic/symref/grep.el
7633 (semantic-symref-perform-search): Instead of wrapping input in
7634 word boundaries, check that the characters before and after are
7635 not word constituents.
7637 semantic/symref/grep: Support regexp search
7638 * lisp/cedet/semantic/symref.el
7639 (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
7640 the search type is regexp.
7641 * lisp/cedet/semantic/symref/grep.el
7642 (semantic-symref-perform-search): Support the regexp search type.
7643 Pass -E to Grep when it's used.
7645 semantic-symref-regexp: Allow to input an arbitrary string
7646 * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
7647 Allow to input an arbitrary string interactively.
7649 Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
7650 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
7651 Remove tag-symbol-match-p from the default value
7652 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
7654 Declare find-tag obsolete
7655 * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
7656 xref-find-definitions.
7658 2015-05-10 Jan D <jan.h.d@swipnet.se>
7660 Draw composite string correctly (Bug#20537).
7661 * nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
7662 (ns_draw_glyph_string): Call it (Bug#20537).
7664 2015-05-09 Eli Zaretskii <eliz@gnu.org>
7666 Avoid infloop in ERC
7667 * lisp/simple.el (line-move-to-column): Ignore field boundaries
7668 while computing line beginning position. (Bug#20498)
7670 2015-05-08 Glenn Morris <rgm@gnu.org>
7672 * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
7673 * build-aux/gitlog-to-emacslog: Check called from right directory.
7674 (srcprefix): Remove.
7676 * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
7677 * Makefile.in (ChangeLog): No longer pass "distprefix".
7678 * make-dist: Update "make ChangeLog" syntax for the above change.
7680 * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
7681 * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
7683 * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
7685 Add command-line option-parsing to gitlog-to-emacslog.
7686 * build-aux/gitlog-to-emacslog: Add command-line options.
7687 By default, refuse to remove an existing output file.
7688 * Makefile.in (CHANGELOG): Update default.
7689 (ChangeLog): Do not test for existing file.
7690 (change-history-nocommit): Ensure temp file does not exist.
7692 Quieten --without-x compilation.
7693 * lisp/term/common-win.el: Provide a feature.
7694 * lisp/term/x-win.el (term/common-win): Require it.
7696 * lisp/dired-aux.el (dired-do-print): Require lpr.
7698 Quieten compilation, eg in --without-x builds.
7699 * lisp/dired-aux.el (lpr-printer-switch):
7700 * lisp/frame.el (tool-bar-height):
7701 * lisp/linum.el (font-info):
7702 * lisp/window.el (font-info, overflow-newline-into-fringe)
7704 * lisp/emacs-lisp/package-x.el (tar-data-buffer):
7705 * lisp/gnus/gnus-util.el (iswitchb-mode):
7706 * lisp/mail/rmailmm.el (libxml-parse-html-region):
7707 * lisp/net/nsm.el (gnutls-peer-status)
7708 (gnutls-peer-status-warning-describe):
7709 * lisp/net/shr.el (libxml-parse-xml-region):
7710 * lisp/url/url-http.el (gnutls-peer-status): Declare.
7712 2015-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
7714 CEDET (srecode-pop, srecode-peek): Don't use `subclass'
7715 * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
7716 `subclass' since they're never called with a class.
7717 (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
7718 srecode-dictionary-child-p.
7720 2015-05-08 Nicolas Richard <theonewiththeevillook@yahoo.fr>
7722 help--binding-locus: Document argument POSITION.
7723 * lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
7725 2015-05-08 Paul Eggert <eggert@cs.ucla.edu>
7728 * doc/misc/texinfo.tex: Get latest version.
7730 2015-05-08 Oleh Krehel <ohwoeowho@gmail.com>
7732 ffap.el (ffap-read-file-or-url): Fix completing-read call
7733 * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
7734 `completing-read' should be a symbol.
7736 2015-05-08 Eli Zaretskii <eliz@gnu.org>
7738 Verify file modifications by other programs
7739 * src/filelock.c (lock_file): Check whether the file was modified
7740 since it was visited even if 'create-lockfiles' is nil. (Bug#18828)
7742 Fix keyboard macros that include function keys
7743 * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
7744 keys in the macro before returning. (Bug#20454)
7746 2015-05-08 Glenn Morris <rgm@gnu.org>
7748 * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
7749 "Copyright-paperwork-exempt". (Bug#20324)
7751 * lisp/vc/log-edit.el: Handle "(tiny change)". (Bug#20324)
7752 (log-edit-rewrite-tiny-change): New variable.
7753 (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
7754 (log-edit-changelog-ours-p): Set log-edit-author to a cons.
7755 * etc/NEWS: Mention this.
7757 * lisp/calc/calc.el (math-zerop): Declare.
7759 * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
7761 2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
7763 * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
7764 Support the case when BINDINGS is a single tuple. (Bug#20525)
7766 * etc/NEWS: Fix typo in commit 14bb519
7768 2015-05-07 Jan D <jan.h.d@swipnet.se>
7770 Warn for multiple display crash for all Gtk+ versions.
7771 * configure.ac: Warn for multiple display crash for all Gtk+
7772 versions. Output URL to Gtk+ bug (Bug#20452).
7774 ns-win.el (ns-paste-secondary): Use gui-get-selection.
7775 * ns-win.el (ns-paste-secondary): Use gui-get-selection.
7777 2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
7779 * lisp/emacs-lisp/package.el: New "external" package status
7780 An external package is any installed package that's not built-in
7781 and not from `package-user-dir', which usually means it's from an
7782 entry in `package-directory-list'. They are treated much like
7783 built-in packages, in that they cannot be through the Package Menu
7784 deleted and are not considered for upgrades.
7785 (package-desc-status): Identify if a package is installed outside
7787 (package-menu--print-info-simple)
7788 (package-menu--status-predicate): Add support for it.
7789 * etc/NEWS: Document it.
7791 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7793 * lisp/mail/rmail.el: Use lexical-binding
7794 (rmail-bury): Remove unused var `buffer-to-bury'.
7795 (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
7796 (rmail-parse-url): Remove unused var `proto', `user', and `host'.
7797 (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
7798 (rmail-insert-inbox-text): Remove unused var `movemail'.
7799 (rmail-add-mbox-headers): Remove unused var `limit'.
7800 (rmail-undelete-previous-message): Remove unused var `value'.
7801 (rmail-reply): Remove unused vars `resent-to', `resent-cc',
7803 (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
7804 (rmail-restore-desktop-buffer): Rename arguments.
7806 2015-05-06 Glenn Morris <rgm@gnu.org>
7808 * Makefile.in (change-history-commit): Add missing piece of previous.
7810 Avoid unnecessary bumping of Makefile.in's timestamp.
7811 * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
7812 (emacslog): New variable.
7813 (ChangeLog): Use $emacslog. Don't pass $gen_origin.
7814 (unchanged-history-files): Use $emacslog rather than Makefile.in.
7815 (change-history-nocommit): Store hash in $emacslog.
7816 * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
7817 * admin/update_autogen (changelog_files): Update for the above.
7819 * Makefile.in: Don't always insist on removing existing "ChangeLog".
7820 (CHANGELOG): New variable.
7821 (no-ChangeLog): Remove.
7822 (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
7823 (change-history-nocommit): Use a temp file rather than insisting
7824 on deletion of any existing "ChangeLog".
7826 * build-aux/gitlog-to-emacslog: Allow specification of output.
7828 * admin/update_autogen: Add option to update ChangeLog.
7829 (usage): Mention -H.
7830 (changelog_flag, changelog_n, changelog_files): New variables.
7831 (main): Check for -H, and maybe run change-history-nocommit.
7833 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7835 * lisp/subr.el (delete-dups): Pre-size the hashtable.
7837 (define-modify-macro): Make sure cl--arglist-args is defined
7838 * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
7839 cl--arglist-args is defined (bug#20517).
7841 2015-05-06 Glenn Morris <rgm@gnu.org>
7843 * Makefile.in (change-history-nocommit): New.
7845 2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
7847 Only cancel timer when it is non-nil
7848 * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
7849 timer when it is non-nil
7850 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
7852 2015-05-06 Glenn Morris <rgm@gnu.org>
7854 Quieten cedet compilation
7855 * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
7856 Invert fboundp test to quieten on current Emacs.
7857 * lisp/cedet/ede/config.el (ede-shell-run-something)
7858 (semanticdb-file-table-object, semanticdb-needs-refresh-p)
7859 (semanticdb-refresh-table): Declare.
7860 (ede-preprocessor-map): Require semantic/db.
7862 Quieten cc-mode compilation
7863 * lisp/progmodes/cc-awk.el (c-forward-sws):
7864 * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
7867 2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
7869 lisp/subr.el (delete-dups): Avoid nreverse.
7871 2015-05-06 Artur Malabarba <bruce.connor.am@gmail.com>
7873 * lisp/subr.el (delete-dups): Make it destructive again.
7875 2015-05-06 Paul Eggert <eggert@cs.ucla.edu>
7877 * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
7879 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7881 * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
7882 * lisp/emacs-lisp/testcover.el: Use lexical-binding.
7883 (testcover--read): Rename from testcover-read. Change calling convention.
7884 Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
7885 (testcover-start): Use add-function. Move edebug-all-defs binding to
7887 (testcover-this-defun): Tighten scope of edebug-all-defs binding.
7888 (testcover-mark): Remove unused var `item'.
7889 * src/lread.c (syms_of_lread): Default load-read-function to `read'.
7891 2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
7893 lisp/subr.el (delete-dups): Use a hash table
7894 * lisp/subr.el (delete-dups): When there are more than 100 candidates,
7895 use a hash table. This can result in ~500 times speed-up for typical
7896 collections of size 5000, like that of `load-library'.
7898 2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7900 CEDET: Avoid `oref' on classes in a few more cases
7901 * lisp/cedet/ede/generic.el (ede-find-target):
7902 * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
7903 * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
7906 * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
7907 * lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
7908 (semantic-symref-perform-search): Remove unused var `pat'.
7910 CEDET (srecode-compile-inserter): Avoid `oref' on classes
7911 * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
7912 Avoid `oref' on classes (bug#20491).
7913 (srecode-compile-split-code): Remove unused var `key'.
7915 2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
7917 Clean up pulse.el a little
7918 * lisp/cedet/pulse.el (pulse): Remove.
7919 (pulse-momentary-timer): Save instead of the stop time.
7920 (pulse-momentary-highlight-overlay): Call
7921 pulse-momentary-unhighlight first thing. Treat
7922 pulse-momentary-overlay as a single value, not a list. Save the
7923 created timer. Only pass the stop time to the timer.
7924 (pulse-tick): Update accordingly.
7925 (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
7926 single value. Cancel the timer.
7928 2015-05-06 Tassilo Horn <tsdh@gnu.org>
7930 Support the biblatex journaltitle field
7931 * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
7932 Support the biblatex journaltitle field.
7934 2015-05-05 Glenn Morris <rgm@gnu.org>
7936 Minor declare-function improvement
7937 * lisp/emacs-lisp/bytecomp.el
7938 (byte-compile-macroexpand-declare-function):
7939 Handle declarations after calls. (Bug#20509)
7941 * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
7943 * lisp/w32-fns.el (w32-shell-name): Silence compiler.
7945 2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
7948 * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
7949 (pulse-momentary-highlight-overlay): Set up the timer instead of
7951 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
7952 (pulse-tick): New function.
7953 (pulse-momentary-unhighlight): Cut off the stop time.
7954 (pulse-delay): Update the docstring WRT to not using sit-for.
7956 Add semantic/symref/grep file patterns for ruby-mode
7957 * lisp/cedet/semantic/symref/grep.el
7958 (semantic-symref-filepattern-alist): Add patterns for
7959 ruby-mode. Clarify the docstring.
7962 * lisp/progmodes/xref.el (xref--read-identifier): Don't require
7963 match. That doesn't work for every command, and some identifier
7964 completion tables are bound to be imperfect anyway.
7966 2015-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
7968 * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
7969 (semantic-grammar--template-expand): New function.
7970 (semantic-grammar-header, semantic-grammar-footer): Use it.
7971 (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
7972 (semantic-grammar-file-regexp): Refine regexp.
7973 (semantic-grammar-eldoc-get-macro-docstring):
7974 Use elisp-get-fnsym-args-string when available.
7975 (semantic-idle-summary-current-symbol-info): Use new elisp-* names
7976 instead of the old eldoc-* names.
7977 * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
7978 from elisp-mode.el. Tweak calling convention.
7979 * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
7980 (elisp-get-fnsym-args-string): Add `prefix' argument. Rename from
7981 elisp--get-fnsym-args-string.
7982 (elisp--highlight-function-argument): Add `prefix' arg.
7983 (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
7984 (elisp--docstring-format-sym-doc): Move back to eldoc.el.
7986 2015-05-05 Glenn Morris <rgm@gnu.org>
7988 * lisp/help-fns.el (describe-function-1):
7989 Handle builtins with advertised calling conventions. (Bug#20479)
7991 2015-05-05 Nicolas Petton <nicolas@petton.fr>
7993 Merge branch 'seq-let'
7995 Update `seq-let' documentation
7996 * doc/lispref/sequences.texi: Update the documentation of `seq-let'
7997 with the support of `&rest'.
7999 Add support for &rest in `seq-let'
8000 * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
8001 in the argument list.
8002 * test/automated/seq-tests.el: Add a test for parsing and binding
8003 `&rest' in `seq-let'.
8005 2015-05-05 Paul Eggert <eggert@cs.ucla.edu>
8009 2015-05-05 (tiny change) Pierre Lorenzon <devel@pollock-nageoire.net>
8011 * eieio-custom.el (eieio-object-value-get): Add missing increment
8014 (eieio-object-value-create): Adjust to new slots representation
8016 * eieio-custom.el (eieio-object-value-create):
8017 Fix missed adjustment to new representation of slots metadata.
8019 2015-05-05 Nicolas Petton <nicolas@petton.fr>
8021 * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
8023 2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
8025 Work around "Attempt to modify read-only object"
8026 * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
8027 elisp--xref-find-definitions, to work around "Attempt to modify
8028 read-only object" error.
8030 Only skip some variables that have function counterparts
8031 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
8032 Only skip minor-mode-named variable if it's defined in a Lisp
8033 file, and it's in minor-mode-list (bug#20506).
8034 * test/automated/elisp-mode-tests.el
8035 (elisp-xref-finds-both-function-and-variable)
8036 (elisp-xref-finds-only-function-for-minor-mode): New tests.
8038 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
8040 Buttonize the whole line, including the number at the beginning
8041 * lisp/progmodes/xref.el (xref--location-at-point): Revert the
8043 (xref--insert-xrefs): Buttonize the whole line, including the
8044 number at the beginning.
8046 Make sure we're inside the let bindings
8047 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
8048 Make sure we're inside the let bindings.
8049 * test/automated/elisp-mode-tests.el
8050 (elisp-completes-functions-after-let-bindings): New test.
8052 2015-05-04 Glenn Morris <rgm@gnu.org>
8054 * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
8055 (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
8056 (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
8057 Remove outdated declarations.
8059 Replace instances of "(eval-when-compile (autoload ...))"
8060 * lisp/gnus/gnus-art.el (nneething-get-file-name):
8061 Declare rather than autoload.
8062 * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
8063 Remove pointless autoload.
8064 * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
8065 (gnus-topic-create-topic, gnus-topic-enter-dribble):
8066 Declare rather than autoload.
8067 * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
8068 (mailcap-extension-to-mime): Autoload at run-time.
8069 * lisp/gnus/mm-util.el (latin-unity-massage-name)
8070 (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
8071 (latin-unity-representations-present-region):
8072 Declare rather than autoload.
8073 * lisp/gnus/mml-smime.el (epg-make-context)
8074 (epg-passphrase-callback-function): Autoload at run-time.
8075 (epg-context-set-signers, epg-context-result-for)
8076 (epg-new-signature-digest-algorithm)
8077 (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
8078 (epg-sign-string, epg-encrypt-string)
8079 (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
8080 (epg-configuration, epg-expand-group, epa-select-keys):
8081 Declare rather than autoload.
8082 * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
8083 Autoload at run-time.
8084 (gnus-group-topic-name, nnimap-buffer, nnimap-command)
8085 (gnus-registry-get-id-key, gnus-registry-action):
8086 Declare rather than autoload.
8087 * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
8088 * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
8089 (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
8090 (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
8091 (spam-stat-split-fancy): Remove pointless autoloads.
8092 * lisp/net/mairix.el: Load gnus-util when compiling.
8093 (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
8094 (message-field-value): Declare rather than autoload.
8095 (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
8096 Check gnus-alive-p is fbound.
8097 (vm-quit, vm-visit-folder, vm-select-folder-buffer)
8098 (vm-check-for-killed-summary, vm-error-if-folder-empty)
8099 (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
8100 Declare rather than autoload.
8102 * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
8104 * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
8105 (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
8107 * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
8109 * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
8111 * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
8112 * lisp/emacs-lisp/package.el (epg-signature-status):
8115 * lisp/play/gametree.el (gametree-show-children-and-entry)
8116 (gametree-apply-layout, gametree-mouse-show-subtree)
8117 (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
8119 * lisp/emacs-lisp/check-declare.el (check-declare-verify):
8120 Handle cl-defgeneric, cl-defmethod.
8122 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
8124 Highlight both type and symbol name
8125 * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
8126 Highlight both type and symbol name.
8128 Insert, highlight and align line numbers in xref output
8129 * lisp/progmodes/etags.el (xref-location-line): Specialize for
8130 xref-etags-location.
8131 * lisp/progmodes/xref.el (xref-location-line): New generic method.
8132 (xref-file-location): Add reader for the line slot.
8133 (xref--location-at-point): Skip to the `xref-location' property.
8134 (xref--collect-reference): Drop the line number from description.
8135 (xref--insert-xrefs): Insert, highlight and align line numbers.
8137 2015-05-04 Daniel Colascione <dancol@dancol.org>
8141 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
8143 Don't pulse the indentation, or the newline
8144 * lisp/cedet/pulse.el (pulse-lighten-highlight)
8145 (pulse-reset-face): Fall back to the inherited background
8147 (pulse-momentary-highlight-region): Add autoload cookie.
8148 * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
8149 indentation, or the newline, if the line's non-empty
8150 (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
8152 2015-05-04 Daniel Colascione <dancol@dancol.org>
8154 Add `save-mark-and-excursion', which has the old `save-excursion' behavior
8155 * doc/lispref/positions.texi (Excursions): Document
8156 `save-mark-and-excursion'.
8157 * lisp/font-lock.el (font-lock-fontify-block): Use
8158 `save-mark-and-excursion' instead of `save-excursion', restoring
8160 * lisp/simple.el (save-mark-and-excursion--save)
8161 (save-mark-and-excursion--restore): New functions.
8162 (save-mark-and-excursion): New user macro.
8163 * src/editfns.c (Fsave_excursion): Mention
8164 `save-mark-and-excursion' in `save-excursion' documentation.
8166 2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
8168 Classify lone symbol inside let varlist as variable
8169 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
8170 Classify lone symbol inside let varlist as variable.
8171 * test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
8174 Add xref-pulse-on-jump
8175 * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
8176 Add autoload cookie.
8177 * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
8178 (xref--maybe-pulse): New function.
8179 (xref-pop-marker-stack, xref--pop-to-location)
8180 (xref--display-position): Use it.
8181 (xref--location-at-point): Use back-to-indentation.
8183 2015-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
8185 * lisp/org/org-{macs,list}.el: Fix lexical warnings
8186 * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
8187 (org-list-get-next-item, org-list-get-prev-item)
8188 (org-list-get-children): Mark unused arg `struct'.
8189 (org-list-use-alpha-bul-p): Remove unused var `bul'.
8190 (org-toggle-checkbox): Mark unused var.
8191 (org-update-checkbox-count): Remove unused var `box-num'.
8192 (org-adapt-indentation): Declare.
8193 (org-list-parse-list): Declare var instead of adding a dummy duplicate.
8194 (org-list-send-list): Remove unused var `txt'.
8195 (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
8196 (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
8197 * lisp/org/org-macs.el: Use `declare'.
8198 (org-with-limited-levels): Declare dyn-bound vars.
8200 2015-05-04 Eli Zaretskii <eliz@gnu.org>
8202 Fix minor issues with CEDET on MS-Windows
8203 * lisp/cedet/semantic/symref/idutils.el
8204 (semantic-symref-parse-tool-output-one-line): Fix the search
8205 regexp to match MS-Windows file names with drive letters.
8207 * lisp/cedet/semantic/symref/grep.el
8208 (semantic-symref-grep-use-template): Remove "--color=always" from
8209 Grep switches on MS-Windows.
8210 (semantic-symref-grep-shell): Use shell-file-name as the default
8211 value, so this works not only on Posix platforms.
8212 (semantic-symref-perform-search): Use shell-quote-argument instead
8213 of literal '..' for portable quoting of Grep command-line
8214 argument. Use shell-command-switch instead of a literal "-c".
8215 * lisp/cedet/semantic/bovine/gcc.el
8216 (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
8217 for an absolute file name in a portable way.
8219 2015-05-04 Artur Malabarba <bruce.connor.am@gmail.com>
8221 * lisp/emacs-lisp/package.el: Remove `package--silence' variable
8222 (package-import-keyring, package-refresh-contents)
8223 (package-compute-transaction, package--save-selected-packages)
8224 (package-install-from-archive, package-delete)
8225 (package-menu--perform-transaction): Use `inhibit-message'
8227 (package--compile): Set `warning-minimum-level' to :error.
8229 2015-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
8231 * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
8232 (terminal-init-screen): Use it (bug#20356).
8233 * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
8234 (xterm--extra-capabilities-type): New const.
8235 (xterm-extra-capabilities): Use it.
8236 (xterm--version-handler): Lower the pseudo-version for `screen'.
8238 2015-05-03 Dmitry Gutov <dgutov@yandex.ru>
8240 xref--insert-xrefs: Tweak the faces
8241 * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
8242 Always insert a newline at the end (to avoid mouse-face background
8243 tail at the last line).
8245 elisp-completion-at-point: Prioritize being quoted over funpos
8246 * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
8247 Only consider function position when not inside quoted form
8249 * test/automated/elisp-mode-tests.el: New file.
8251 Stop vc-print-log from jumping to the top
8252 * lisp/vc/vc.el (vc-print-log-internal): Pass nil
8253 GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
8255 (vc-incoming-outgoing-internal): Always pass nil.
8256 (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
8257 call it, and don't set vc-sentinel-movepoint (bug#15322).
8258 (vc-print-root-log): Don't fetch the root working revision, nor
8259 pass it to vc-print-log-internal.
8261 2015-05-02 Michael Vehrs <Michael.Burschik@gmx.de>
8263 Fix display of keyboard layouts for right-to-left scripts
8264 * lisp/international/quail.el (quail-insert-kbd-layout): Force
8265 left-to-right paragraph direction.
8267 2015-05-02 K. Handa <handa@gnu.org>
8269 * cmds.c (internal_self_insert): When we insert spaces for
8270 padding, set point before the padding spaces, not after them.
8272 2015-05-02 Nicolas Petton <nicolas@petton.fr>
8274 * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
8276 2015-05-02 Dmitry Gutov <dgutov@yandex.ru>
8278 Fix etags-xref-find for references
8279 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
8280 * lisp/progmodes/etags.el (etags-xref-find): Ditto. Prompt for
8281 directory if no tags tables are loaded (bug#19468).
8283 2015-05-02 Philipp Stephani <phst@google.com>
8285 Update the options in whitespace-style defcustom
8286 * lisp/whitespace.el (whitespace-style): Use `set' instead of a
8287 `repeat' because the option is really set-like. Add missing
8288 options. Reorder options to match the order in the
8289 documentation. (Bug#20346)
8291 2015-05-02 Eli Zaretskii <eliz@gnu.org>
8293 Fix error diagnostics of c-macro-expand
8294 * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
8295 too early if no start-marker string was found -- that generally
8296 means cpp exited abnormally, and we still want to show its error
8297 messages to the user.
8299 Don't require Texinfo 5.0 for Emacs documentation
8300 * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
8301 "@set txicodequotebacktick" instead of "@codequotebacktick on" and
8302 "@codequoteundirected on", respectively, to avoid requiring
8303 Texinfo 5.x for Emacs documentation.
8305 2015-05-01 Simen Heggestøyl <simenheg@gmail.com>
8307 * lisp/files.el (pwd):
8308 When called with a prefix argument, insert the current default
8311 2015-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8313 * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
8314 * lisp/isearch.el (isearch-mode-map): Don't inhibit
8315 function-key-map remapping for backspace (bug#20466).
8317 2015-05-01 Dmitry Gutov <dgutov@yandex.ru>
8319 Implement xref-find-references in etags and elisp-mode
8320 * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
8321 (elisp-xref-find): Use it.
8322 * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
8323 * lisp/progmodes/xref.el (xref-collect-references):
8324 (xref--collect-reference): New functions.
8326 2015-05-01 Paul Eggert <eggert@cs.ucla.edu>
8328 Prefer plain characters to Texinfo circumlocutions
8329 For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
8330 'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
8332 Fix single-quoting style in PDF manuals
8333 The PDF versions of the GNU manuals used curved single quotes to
8334 represent grave accent and apostrophe, which made it a pain to cut
8335 and paste code examples from them. Fix the PDF versions to use
8336 grave accent and apostrophe for Lisp source code, keystrokes, etc.
8337 This change does not affect the info files, nor does it affect
8338 ordinary uses of curved single quotes in PDF.
8339 * doc/emacs/docstyle.texi: New file, which specifies treatment for
8340 grave accent and apostrophe, as well as the document encoding.
8341 * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
8342 * doc/lispintro/emacs-lisp-intro.texi:
8343 * doc/lispref/back.texi, doc/lispref/book-spine.texi:
8344 * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
8345 * doc/misc/ada-mode.texi, doc/misc/auth.texi:
8346 * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
8347 * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
8348 * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
8349 * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
8350 * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
8351 * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
8352 * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
8353 * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
8354 * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
8355 * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
8356 * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
8357 * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
8358 * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
8359 * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
8360 * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
8361 * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
8362 * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
8363 * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
8364 * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
8365 * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
8366 * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
8367 * doc/misc/woman.texi:
8368 Use it instead of '@documentencoding UTF-8', to lessen the need for
8369 global changes like this in the future.
8370 * doc/emacs/Makefile.in (EMACS_XTRA):
8371 * doc/lispintro/Makefile.in (srcs):
8372 * doc/lispref/Makefile.in (srcs):
8373 Add dependency on docstyle.texi.
8374 * doc/misc/Makefile.in (style): New macro.
8375 (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
8376 (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
8379 2015-05-01 Glenn Morris <rgm@gnu.org>
8381 * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
8383 * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
8384 (help-fns--signature): Declare.
8386 * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
8388 2015-05-01 Nicolas Petton <nicolas@petton.fr>
8390 New macro seq-let, providing destructuring support to seq.el
8391 * lisp/emacs-lisp/seq.el (seq-let): New macro. `seq-let' is similar
8392 to `cl-destructuring-bind' but works on all sequence types supported
8393 by `seq.el'. Bump version number to 1.6.
8394 * test/automated/seq-tests.el: Add tests for seq-let.
8395 * doc/lispref/sequences.texi: Add documentation for seq-let.
8397 2015-05-01 Pontus Michael <m.pontus@gmail.com>
8399 * lisp/simple.el (blink-matching-open): Better behavior in minibuffer
8401 2015-05-01 Glenn Morris <rgm@gnu.org>
8403 * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
8405 2015-05-01 Artur Malabarba <bruce.connor.am@gmail.com>
8407 * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
8408 This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
8409 This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
8410 With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
8413 2015-05-01 K. Handa <handa@gnu.org>
8415 * mule-cmds.el (input-method-use-echo-area): Change :type to
8418 2015-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
8420 Start using proportional fonts in eww by default
8421 * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
8422 it seems to work well.
8424 Fix links in tables in shr
8425 * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
8426 makes (some) links in tables not work.
8428 2015-05-01 Jan D <jan.h.d@swipnet.se>
8430 (ns-get-cut-buffer-internal): Remove this alias.
8431 * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
8433 2015-04-30 Glenn Morris <rgm@gnu.org>
8435 * lisp/emacs-lisp/ert.el (ert--special-operator-p):
8436 Update for 2015-02-08 change to indirect-function.
8438 * lisp/term/ns-win.el (ns-get-selection-internal):
8439 Remove declaration for function deleted 2014-10-21.
8441 * lisp/dom.el: Load subr-x when compiling, for when-let.
8443 Silence some compilation warnings
8444 * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
8445 * lisp/emulation/cua-base.el (delete-active-region):
8446 * lisp/net/net-utils.el (w32-get-console-output-codepage):
8447 * lisp/term/ns-win.el (ns-own-selection-internal)
8448 (ns-disown-selection-internal, ns-selection-owner-p)
8449 (ns-selection-exists-p, ns-get-selection):
8450 Declare for compiler..
8452 Function declaration updates prompted by 'make check-declare'
8453 * lisp/emacs-lisp/package.el (lm-homepage):
8454 * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
8455 * lisp/gnus/mm-decode.el (libxml-parse-html-region):
8456 * lisp/gnus/mml.el (libxml-parse-html-region):
8457 * lisp/gnus/nnrss.el (libxml-parse-html-region):
8458 * lisp/net/eww.el (libxml-parse-html-region):
8459 * lisp/net/shr.el (libxml-parse-html-region):
8460 * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
8461 * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
8462 * lisp/vc/vc-git.el (vc-annotate-convert-time):
8463 * lisp/vc/vc-hg.el (vc-annotate-convert-time):
8464 * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
8465 * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
8468 Remove compatibility code for 20-year old function renaming
8469 * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
8470 Make it an obsolete alias.
8471 (idlwave-shell-filter): Change all uses to comint-output-filter.
8473 2015-04-30 Tassilo Horn <tsdh@gnu.org>
8475 Add ace-window face config
8476 * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
8479 2015-04-30 Paul Eggert <eggert@cs.ucla.edu>
8481 Unclutter 'make doc' output a bit
8482 * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
8483 Use make subst rather than sh IFS to split target string apart.
8484 This makes 'make' output easier to follow.
8487 * doc/misc/texinfo.tex: Update from gnulib.
8489 2015-04-30 Artur Malabarba <bruce.connor.am@gmail.com>
8491 * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
8492 (package-menu--print-info): Obsolete.
8493 (package-menu--print-info-simple): New function.
8494 (package-menu--refresh): Use it, simplify code, and improve
8496 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
8497 Tiny performance improvement.
8499 * lisp/emacs-lisp/package.el (package--message): inhibit-message
8501 2015-04-29 Paul Eggert <eggert@cs.ucla.edu>
8503 Omit -Wstrict-overflow workaround in GCC 5
8504 * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
8505 if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
8509 2015-04-29 extern-inline: no need for workaround in GCC 5.1
8510 2015-04-26 file-has-acl: port to CentOS 6
8511 * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
8513 2015-04-29 Helmut Eller <eller.helmut@gmail.com>
8515 Set next-error-* in xref--xref-buffer-mode
8516 * xref.el (xref--xref-buffer-mode): Set `next-error-function' and
8517 `next-error-last-buffer'.
8518 (xref--next-error-function): New function.
8519 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
8521 2015-04-29 Fabián Ezequiel Gallina <fgallina@gnu.org>
8523 python.el: Fix warnings on looking-back calls missing LIMIT
8524 * lisp/progmodes/python.el (python-shell-accept-process-output):
8525 Pass LIMIT arg to looking-back.
8527 2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
8529 * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
8530 (package--download-and-read-archives): Use pushnew instead of
8531 append. If something terrible happened during a previous
8532 download, simply refreshing should now make things work again.
8534 2015-04-29 Dmitry Gutov <dgutov@yandex.ru>
8536 Introduce etags-xref-find-definitions-tag-order
8537 * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
8539 (etags--xref-find-definitions): Use it (bug#19468).
8541 2015-04-29 Eli Zaretskii <eliz@gnu.org>
8543 PATH- and completion-related fixes in Eshell on MS-Windows
8544 * lisp/eshell/esh-ext.el (eshell-search-path): When running on
8545 MS-Windows, prepend "." to list of directories produced from PATH,
8546 as Windows always implicitly searches the current directory first.
8547 (eshell-force-execution): Make it have a non-nil default value on
8548 MS-Windows and MS-DOS.
8549 * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
8550 eshell-force-execution is non-nil, complete on readable files and
8551 directories, not only executables. When running on MS-Windows,
8552 prepend "." to list of directories produced from PATH, as Windows
8553 always implicitly searches the current directory first.
8555 2015-04-29 Sam Steingold <sds@gnu.org>
8557 bury RCIRC buffers when there is no activity
8558 lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
8559 (rcirc-bury-buffers): new function
8560 (rcirc-next-active-buffer): when there is no new activity, use
8561 `rcirc-bury-buffers' to hide all RCIRC buffers
8563 2015-04-29 Krzysztof Jurewicz <krzysztof.jurewicz@gmail.com> (tiny change)
8565 Fix DBUS query result parsing for secrets-search-items
8566 * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
8567 parsing. The function assumed that return value of the
8568 SearchItems method called on a collection is a list of two lists,
8569 however this is true only when no collection is specified. GNOME
8570 had used to incorrectly return a list of two lists in both cases,
8571 but this was already fixed:
8572 https://bugzilla.gnome.org/show_bug.cgi?id=695115 . Also fix an
8573 incorrect information in the secrets-search-items’ docstring.
8576 2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
8578 * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
8579 (byte-compile--message): Use `inhibit-message' instead of hiding
8580 the previous message with (message nil).
8582 2015-04-29 Oleh Krehel <ohwoeowho@gmail.com>
8584 Remove the deprecated INTERNAL_FIELD macro by expanding it
8585 * src/lisp.h (INTERNAL_FIELD): Remove.
8586 (DEFVAR_KBOARD): Modify accordingly.
8587 * alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
8588 * syntax.c: Adjust users.
8589 * src/buffer.c (compact_buffer): Use BVAR.
8591 2015-04-29 Glenn Morris <rgm@gnu.org>
8593 Replace an obsolete function alias
8594 * lisp/isearch.el (isearch-yank-x-selection):
8595 * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
8596 (mouse-drag-secondary-moving):
8597 * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
8598 Replace obsolete alias x-get-selection with gui-get-selection.
8600 2015-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8602 * lisp/mail/rmailsum.el: Use lexical-binding.
8604 2015-04-29 Glenn Morris <rgm@gnu.org>
8606 * test/automated/package-test.el (package-test-update-archives-async):
8607 Skip test on hydra.nixos.org.
8609 2015-04-28 Glenn Morris <rgm@gnu.org>
8611 * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
8612 (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
8613 (foldout-mouse-hide-or-exit): Use new names for outline functions.
8615 * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
8616 Update for 2014-06-26 hideif.el change.
8618 * lisp/mail/rmailsum.el: Fix search for encoded subjects. (Bug#19088)
8619 (rmail--decode-and-apply): New function.
8620 (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
8622 * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
8624 2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
8626 * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
8627 (package-menu--refresh): Delegate obsolete-hiding to
8628 `package--remove-hidden'.
8629 (package--remove-hidden): Disregard high-priority package if it is
8630 older than the installed one.
8632 2015-04-28 Paul Eggert <eggert@cs.ucla.edu>
8634 Update source file encoding list
8635 Update admin/notes/unicode, along with coding system cookies in
8636 other files, so that the two match each other better.
8637 * admin/notes/unicode: lisp/language/ethio-util.el and
8638 lisp/language/ethiopic.el also use utf-8-emacs.
8639 * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
8640 * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
8641 * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
8642 * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
8643 * etc/refcards/sk-survival.tex:
8644 Add "coding: utf-8" so that this file is not mishandled in a
8645 Latin-1 or Big-5 locale.
8646 * lisp/international/robin.el, lisp/org/ox-ascii.el:
8647 Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
8648 * lisp/language/ethio-util.el: Fix trailer.
8650 2015-04-28 Eli Zaretskii <eliz@gnu.org>
8652 Fix synchronous invocation of Ispell
8653 * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
8654 value to ispell-process-directory before calling ispell-init-process.
8655 Don't call set-process-coding-system if ispell-async-processp is nil.
8658 2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
8660 * lisp/emacs-lisp/package.el: Skip space and comments in init file
8661 (package--ensure-init-file): Insert snippet at first
8662 non-whitespace non-comments line. Respects local-vars at the top
8665 2015-04-28 Glenn Morris <rgm@gnu.org>
8667 * lisp/mail/rmail.el (rmail-copy-headers):
8668 Handle rmail-nonignored-headers being nil. (Bug#18878)
8670 * lisp/subr.el (delay-mode-hooks): Fix doc typo.
8672 * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
8673 Don't get confused by a bzrlib version mismatch warning.
8675 2015-04-27 Thomas Fitzsimmons <fitzsim@fitzsim.org>
8677 Change default location of EUDC options file
8678 * NEWS: Document change to EUDC options file's default location.
8679 * lisp/net/eudc-vars.el (eudc-options-file): Use
8680 `locate-user-emacs-file' to change default options file location.
8682 2015-04-27 Glenn Morris <rgm@gnu.org>
8684 * test/automated/package-test.el (package-test-update-archives-async):
8685 Try to handle the test server script dying.
8687 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8689 * lisp/saveplace.el (save-place-mode): New minor mode.
8690 (save-place): Redefine as an obsolete alias.
8692 * lisp/midnight.el: Make it a minor mode. Allow predicates.
8693 * lisp/midnight.el: Use lexical-binding.
8694 (midnight-mode): Make it a proper minor mode.
8695 (midnight-buffer-display-time): Make arg non-optional.
8696 (midnight-find): Remove.
8697 (clean-buffer-list-kill-never-regexps)
8698 (clean-buffer-list-kill-regexps): Tweak type for new function choice.
8699 (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
8701 (clean-buffer-list): Use cl-find.
8702 Allow clean-buffer-list-kill-never-regexps to contain functions.
8704 2015-04-27 Nicolas Petton <nicolas@petton.fr>
8706 Bump version of seq.el to 1.5
8707 * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
8708 from seq-doseq. Bump version number of seq.el.
8710 2015-04-27 Glenn Morris <rgm@gnu.org>
8712 * lisp/mail/rmail.el (rmail-reply):
8713 Decode subject before matching "Re:" prefix. (Bug#20396)
8715 2015-04-27 Artur Malabarba <bruce.connor.am@gmail.com>
8717 * lisp/emacs-lisp/package.el: Small improvements
8718 (package--with-work-buffer-async): More informative error.
8719 (package-install-user-selected-packages): Rename to
8720 `package-install-selected-packages'.
8722 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8724 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
8725 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
8726 (eieio--class-make): Remove leftover `tag'.
8728 2015-04-27 Glenn Morris <rgm@gnu.org>
8730 * lisp/gnus/message.el (gnus-extract-address-components):
8731 Remove bogus declaration that was masking previous problem.
8733 2015-04-27 Nicolas Graner <nicolas.graner@u-psud.fr> (tiny change)
8735 * lisp/gnus/message.el (message-insert-formatted-citation-line):
8736 Fix typo. (Bug#20318)
8738 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8740 * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
8742 * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
8743 * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
8744 the buffer in yet another frame.
8745 (reftex-toc-visit-location): Make sure toc-window has focus at the end
8746 when `final' is nil.
8747 (reftex--rebuilding-toc): Defvar to avoid `boundp' and
8748 silence warnings. Use `--' to clarify that it's internal.
8749 (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
8750 (reftex-toc-promote): Clarify unused argument.
8751 (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
8752 Add `reftex--' prefix. Fix all users.
8753 (reftex-toc-promote-prepare): Use _ for dummy variable.
8754 (reftex-toc-restore-region): Rename `m
8756 2015-04-27 Eli Zaretskii <eliz@gnu.org>
8758 Fix a typo in bibtex.el
8759 * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
8760 last change. (Bug#20429)
8762 Fix redisplay of frame after loading new fonts
8763 * src/xdisp.c (redisplay_internal): When retrying redisplay of a
8764 frame because new fonts were loaded, disable all redisplay
8765 optimizations on that frame by calling SET_FRAME_GARBAGED.
8768 2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8770 * lisp/info.el (Info-menu): Properly provide the `default'
8773 * elisp-mode.el: Catch errors from `documentation'
8775 * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
8776 Catch errors from documentation.
8777 (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
8779 2015-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
8781 lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
8782 Remove redundant ":group 'package".
8784 2015-04-26 Eli Zaretskii <eliz@gnu.org>
8786 Fix a typo in rmail.el
8787 * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
8788 last commit. (Bug#20429)
8790 2015-04-26 Dmitry Gutov <dgutov@yandex.ru>
8792 Introduce xref-prompt-for-identifier
8793 * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
8794 (xref--read-identifier): Use it
8795 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
8797 2015-04-26 João Távora <joaotavora@gmail.com>
8799 `tex-insert-quote' after single `'' opens quotes instead of closing
8800 Without this, it's very hard to precede double quotes with the
8801 apostrophe character, i.e. insert the sequence '``
8802 (quote-backquote-backquote), commonly useful in portuguese, for
8804 * tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
8805 chars making `tex-insert-quote' be in the "opening" context.
8807 2015-04-25 Dmitry Gutov <dgutov@yandex.ru>
8809 Pass `id' to `completing-read' as def instead of initial input
8810 * xref.el (xref--read-identifier): Pass `id' to `completing-read'
8811 as the default value instead of initial input
8812 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
8814 2015-04-25 Paul Eggert <eggert@cs.ucla.edu>
8816 Don't freeze with unreadable processes
8817 Don't freeze if an exiting process can't be read from. (Bug#19860).
8818 This fixes a bug I introduced in
8819 2014-07-08T07:24:07Z@eggert@cs.ucla.edu
8820 "* process.c: Add sanity checks for file descriptors."
8821 Dmitry Gutov did most of the legwork in finding the problem.
8822 * src/process.c (wait_reading_process_output):
8823 Treat non-running processes that can't be read from
8824 the same as other non-running processes.
8826 2015-04-25 Alan Mackenzie <acm@muc.de>
8828 Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
8829 * lisp/subr.el (remove-yank-excluded-properties): put
8830 `with-silent-modifications' around only the last three lines of code.
8832 2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
8834 * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
8835 (package--all-keywords): Deleted variable.
8837 * etc/NEWS: Document package-hiding functionality
8839 2015-04-25 Eli Zaretskii <eliz@gnu.org>
8841 lisp/window.el (recenter-last-op): Doc fix. (Bug#20419)
8843 Clarify the doc string of 'replace-regexp-in-string'
8844 * lisp/subr.el (replace-regexp-in-string): Doc fix. (Bug#20395)
8846 Improve doc string of 'insert-buffer-substring'
8847 * src/editfns.c (Finsert_buffer_substring): Doc fix. (Bug#20421)
8849 MS-Windows followup for the recent gnulib update
8850 * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
8853 2015-04-24 Paul Eggert <eggert@cs.ucla.edu>
8859 2015-04-24 file-has-acl: new module, split from acl
8860 2015-04-24 manywarnings: add GCC 5.1 warnings
8861 2015-04-21 lstat: fix cross-compilation 'ln -s' problem
8862 2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
8863 2015-04-15 acl: On Linux, check for acls without libacl
8864 2015-04-14 tempname: avoid unused parameter warnings (trivial)
8865 * lib/acl-internal.c: New file, from gnulib.
8866 * lib/file-has-acl.c: Remove; no longer imported from gnulib.
8867 * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
8868 * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
8871 Port --enable-gcc-warnings to GCC 5.1 x86-64
8872 * lib-src/ebrowse.c (dump_sym):
8873 * lib-src/hexl.c (main):
8874 * src/ccl.c (ccl_driver):
8875 * src/character.c (string_escape_byte8):
8876 * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
8877 * src/gnutls.c (Fgnutls_boot):
8878 * src/gtkutil.c (xg_check_special_colors):
8879 * src/image.c (x_build_heuristic_mask):
8880 * src/print.c (safe_debug_print, print_object):
8881 * src/term.c (produce_glyphless_glyph):
8882 * src/xdisp.c (get_next_display_element)
8883 (produce_glyphless_glyph):
8884 * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
8885 Don't use a signed format to print an unsigned integer, or vice
8886 versa. GCC 5.1's new -Wformat-signedness option warns about this.
8887 * src/image.c (png_load_body, jpeg_load_body):
8888 Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
8890 2015-04-24 Tassilo Horn <tsdh@gnu.org>
8892 Add new faces to tsdh-light-theme
8893 * etc/themes/tsdh-light-theme.el (tsdh-light): New face
8894 definitions for Info-quoted, ace-jump-face-foreground,
8895 hl-paren-face, show-paren-match, and show-paren-mismatch.
8897 2015-04-24 Nicolas Petton <nicolas@petton.fr>
8899 * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
8901 2015-04-24 Glenn Morris <rgm@gnu.org>
8903 * build-aux/gitlog-to-emacslog:
8904 Use raw log format rather than wrapped one.
8906 2015-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
8908 * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
8909 (seq-doseq): Fix out-of-scope binding.
8910 Don't call `seq-length at every iteration.
8911 Reduce `if's from 3 to 2 per iteration.
8912 (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
8914 2015-04-24 Glenn Morris <rgm@gnu.org>
8916 * lisp/textmodes/text-mode.el (text-mode-hook):
8917 Move text-mode-hook-identify to default.
8919 * lisp/mouse.el (minor-mode-menu-from-indicator):
8920 Handle non-function members of minor-mode-map-alist. (Bug#20201)
8922 * lisp/help-fns.el (describe-function): More type checking.
8923 (describe-function-1): Handle changed symbol-function. (Bug#20201)
8925 * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
8928 2015-04-24 Andreas Schwab <schwab@linux-m68k.org>
8930 shr: strip leading whitespace when expanding URLs
8931 * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
8933 2015-04-24 Eli Zaretskii <eliz@gnu.org>
8935 Clarify "co-authored" some more
8937 * CONTRIBUTE: Clarify "co-authored-by". (Bug#20400)
8939 Clarify doc strings of functions that search for properties
8940 * src/textprop.c (Fnext_char_property_change)
8941 (Fprevious_char_property_change)
8942 (Fnext_single_char_property_change)
8943 (Fprevious_single_char_property_change, Fnext_property_change)
8944 (Fnext_single_property_change, Fprevious_property_change)
8945 (Fprevious_single_property_change): Clarify doc strings wrt return
8946 value and the optional LIMIT argument. (Bug#20411)
8948 2015-04-24 Glenn Morris <rgm@gnu.org>
8950 * test/automated/message-mode-tests.el (message-mode-propertize):
8951 Handle non-writable HOME; eg on hydra.nixos.org.
8953 2015-04-23 Eli Zaretskii <eliz@gnu.org>
8955 Avoid starting threads by w32-shell-execute
8956 * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
8957 local file names, before invoking ShellExecute. (Bug#20220)
8959 2015-04-23 Martin Rudalics <rudalics@gmx.at>
8961 Fix following doc-links in `widget-documentation-link-action'
8962 * lisp/wid-edit.el (widget-documentation-link-action): Make
8963 following doc-links less simplistic (Bug#20398).
8965 2015-04-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
8968 * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
8970 2015-04-22 Paul Eggert <eggert@cs.ucla.edu>
8972 Omit needless "\ " after multibyte then newline
8973 * src/print.c: Include <c-ctype.h>, for c_isxdigit.
8974 (print_object): When print-escape-multibyte is non-nil and a
8975 multibyte character is followed by a newline or formfeed, followed
8976 by a hex digit, don't output a needless "\ " before the hex digit.
8977 * test/automated/print-tests.el (print-hex-backslash): New test.
8979 2015-04-22 Oleh Krehel <ohwoeowho@gmail.com>
8981 Add a new `inhibit-message' variable
8982 * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
8983 (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
8984 `inhibit_message' is non-zero.
8985 * etc/NEWS: Add an entry.
8986 * doc/lispref/display.texi: Add an entry for `inhibit-message',
8987 mention it in `message'.
8989 2015-04-22 Martin Rudalics <rudalics@gmx.at>
8991 Fix last fix in `display-buffer-record-window'.
8992 * lisp/window.el (display-buffer-record-window): Fix last fix.
8994 2015-04-22 Eli Zaretskii <eliz@gnu.org>
8996 Minor edits in CONTRIBUTE
8997 * CONTRIBUTE: Rearrange instructions about log messages.
8998 Use "Git" capitalized all over.
8999 Use 2 spaces between sentences.
9001 2015-04-22 Artur Malabarba <bruce.connor.am@gmail.com>
9003 * lisp/files.el (basic-save-buffer): Fix argument
9005 * lisp/cus-edit.el (custom-file): Consider init-file-had-error
9006 In case `(and (null custom-file) init-file-had-error)' do the same
9007 thing we'd do if `(null user-init-file)', which is to either error out
9008 or return nil. This is in line with `custom-save-all' which would
9009 throw an error in that situation. (bug#20355)
9011 * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
9012 (package-menu-hide-low-priority): New variable, see its doc.
9013 (package-archive-priorities): Update doc.
9014 (package-desc-priority): New function.
9015 (package-desc-priority-version): Use it.
9016 (package--remove-hidden): New function.
9017 (package-menu--refresh): Use it.
9019 * lisp/emacs-lisp/package.el: Implement displaying obsolete packages
9020 (package-menu--hide-obsolete): New variable.
9021 (package--remove-hidden): Use it.
9022 (package-menu-hide-obsolete): New interactive function to toggle
9024 (package--quick-help-keys): Document it.
9025 (package-menu-async): Add :version tag.
9026 (package-menu-mode-map): Bind package-menu-hide-obsolete.
9027 (package-desc-status): Indicate non-installed obsolete packages as
9029 (package-menu-mark-install): Allow installation of avail-obso.
9030 (package-menu--status-predicate): Sort avail-obso with available.
9032 2015-04-22 Alan Mackenzie <acm@muc.de>
9034 On C-y, stop some text property entries being written into buffer-undo-list
9035 lisp/subr.el (remove-yank-excluded-properties): enclose the code in
9036 `with-silent-modifications'.
9038 2015-04-22 Martin Rudalics <rudalics@gmx.at>
9040 In display-buffer-record-window record selected window if necessary.
9041 * lisp/window.el (display-buffer-record-window): Store selected window
9042 if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
9044 2015-04-22 Tassilo Horn <tsdh@gnu.org>
9046 Fix reftex-citation bug
9047 * reftex-cite.el (reftex-extract-bib-entries): Fix
9048 `wrong-type-argument stringp nil' error that occurs when AUCTeX
9049 integration is enabled and there are no citations in the document
9052 2015-04-21 Dmitry Gutov <dgutov@yandex.ru>
9054 Add or reset based on the presence of MERGE_HEAD
9055 * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
9056 `vc-git-resolve-when-done' to `after-save-hook' in either case.
9057 (vc-git-conflicted-files): Add a TODO.
9058 (vc-git-resolve-when-done): Depending on the presence of
9059 MERGE_HEAD, either update the resolved file in the index, or
9060 remove it from there. (Bug#20292)
9062 2015-04-21 Glenn Morris <rgm@gnu.org>
9064 * lisp/custom.el (custom-declare-group): No need to purecopy
9065 custom-current-group-alist members following recent change to set
9066 it to nil before dumping.
9068 * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
9071 2015-04-21 Daniel Colascione <dancol@dancol.org>
9073 Unbreak no-op buffer save message
9074 * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
9075 (basic-save-buffer): Accept called-interactively as an argument instead of
9076 directly invoking called-interactively-p, which will always yield nil
9079 2015-04-21 Alan Mackenzie <acm@muc.de>
9081 CC Mode: Do nothing in before/after-change-functions for text property changes
9083 lisp/progmodes/cc-mode.el (c-basic-common-init): Make
9084 yank-handled-properties buffer local, and remove 'category from it.
9085 (c-called-from-text-property-change-p): New function.
9086 (c-before-change): Don't do anything if a call of the new function
9088 (c-after-change): Don't do much if a call of the new function returns
9090 (c-extend-after-change-region): Put changes to text property 'fontified
9091 inside c-save-buffer-state.
9093 2015-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
9095 Fix byte-compiler warnings about looking-back.
9096 * lisp/vc/log-view.el (log-view-end-of-defun-1):
9097 * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
9098 * lisp/textmodes/reftex-ref.el (reftex-goto-label):
9099 * lisp/textmodes/bibtex.el (bibtex-insert-kill):
9100 * lisp/progmodes/sh-script.el (sh--maybe-here-document):
9101 * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
9102 * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
9103 * lisp/org/org.el (org-insert-heading, org-sort-entries):
9104 * lisp/org/org-mouse.el (org-mouse-end-headline)
9105 (org-mouse-context-menu):
9106 * lisp/org/org-clock.el (org-clock-cancel):
9107 * lisp/man.el (Man-default-man-entry):
9108 * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
9109 (rmail-ensure-blank-line):
9110 * lisp/mail/footnote.el (Footnote-delete-footnote):
9111 * lisp/mail/emacsbug.el (report-emacs-bug):
9112 * lisp/info.el (Info-follow-reference, Info-fontify-node):
9113 * lisp/info-look.el (info-lookup-guess-custom-symbol):
9114 * lisp/help-fns.el (help-fns--key-bindings):
9115 * lisp/files.el (hack-local-variables):
9116 * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
9117 (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
9118 (viper-complete-filename-or-exit):
9119 * lisp/emulation/viper-cmd.el (viper-backward-indent):
9120 * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
9121 * lisp/emacs-lisp/elint.el (elint-get-top-forms):
9122 * lisp/cus-edit.el (custom-face-edit-value-create):
9123 * lisp/calendar/todo-mode.el (todo-set-item-priority)
9124 (todo-filter-items-1, todo-convert-legacy-files)
9125 (todo-prefix-overlays): Add explicit second arg to looking-back.
9127 2015-04-20 Glenn Morris <rgm@gnu.org>
9129 Avoid non-nil current-load-list at startup
9130 * src/process.c (init_process_emacs): Move Fprovide statement...
9131 (syms_of_process): ... to here.
9133 * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
9135 * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
9137 2015-04-20 Ludovic Courtès <ludo@gnu.org>
9139 * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
9142 2015-04-20 Glenn Morris <rgm@gnu.org>
9144 * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
9146 Tweak exec-path in uninstalled case
9147 * src/callproc.c (init_callproc): If running uninstalled, do not
9148 include eventual installation libexec directory in exec-path.
9150 2015-04-20 Artur Malabarba <bruce.connor.am@gmail.com>
9152 * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
9153 (package-menu-filter): Accept a list of keywords.
9154 (package--all-keywords): New variable to cache known keywords.
9155 (package-all-keywords): Populate it if necessary.
9156 (package-refresh-contents): Reset it.
9158 * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
9159 (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
9160 as special keywords which match agains package archive and status
9162 * etc/NEWS: Document it.
9164 2015-04-20 Eli Zaretskii <eliz@gnu.org>
9166 Describe and index "empty overlays".
9167 * doc/lispref/display.texi (Overlays): Improve indexing.
9168 (Managing Overlays): Describe "empty" overlays.
9169 (Overlay Properties, Finding Overlays): Add cross-reference to
9170 where empty overlays are described.
9172 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
9176 Quote 'like this' in top-level files
9177 * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
9178 Prefer to single-quote 'like this' (instead of the older style
9180 * configure.ac: Fix some space-before-tab problems that 'git commit'
9183 Use bool for boolean in textprop.c, undo.c
9184 * src/textprop.c (soft, hard): Now constants instead of macros.
9185 (validate_plist): Rewrite to avoid need for boolean local.
9186 (interval_has_all_properties, interval_has_some_properties)
9187 (interval_has_some_properties_list, add_properties)
9188 (remove_properties, get_char_property_and_overlay)
9189 (Fnext_single_char_property_change)
9190 (Fprevious_single_char_property_change, add_text_properties_1)
9191 (Fremove_text_properties, Fremove_list_of_text_properties)
9192 (copy_text_properties):
9193 * src/tparam.c (tparam1):
9194 * src/undo.c (record_change, record_property_change)
9196 Use 'true' and 'false' for booleans.
9198 2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
9200 Call `smerge-start-session' even when dealing with a stash conflict
9201 * lisp/vc/vc-git.el (vc-git-find-file-hook):
9202 Call `smerge-start-session' even when dealing with a stash
9203 conflict (bug#20292).
9205 2015-04-19 Vibhav Pant <vibhavp@gmail.com>
9207 Add option to eshell/clear to clear scrollback.
9208 * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
9209 (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
9210 scrollback contents are cleared.
9211 * etc/NEWS: Describe change.
9212 * doc/misc/eshell.texi: Add entry for `clear'.
9214 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
9216 * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
9217 where either will do.
9219 2015-04-19 Steve Purcell <steve@sanityinc.com>
9221 Assume package archive-contents are UTF8-encoded
9222 * lisp/emacs-lisp/package.el (package--read-archive-file):
9223 Set `coding-system-for-read' explicitly to 'utf-8 when reading the
9224 downloaded and cached archive-contents files, so that non-ASCII
9225 characters in package descriptions are displayed correctly in the
9226 `list-packages' menu. (Bug#20231)
9228 2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
9230 Abort when looking at stashed changes
9231 * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
9232 stashed changes (bug#20292).
9234 2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
9236 Refactor low-level printing for simplicity
9237 * src/print.c (PRINTDECLARE): Remove. Move its contents into
9238 PRINTPREPARE; doable now that we assume C99. All callers changed.
9239 (PRINTCHAR): Remove, as it adds more mystery than clarity.
9240 All callers changed.
9241 (strout): Assume that caller computes length. All callers changed.
9242 (print_c_string): New function.
9243 (write_string, write_string_1): Compute length instead of asking
9244 the caller to compute it. All callers changed.
9245 (write_string): Simplify by using write_string_1.
9246 (write_string_1): Simplify by using print_c_string.
9247 (Fterpri): Compute default val more clearly.
9248 (Fprin1_to_string, print_object):
9249 Assume C99 to avoid unnecessary nesting.
9250 (print_object): Prefer print_c_string to multiple printchar, or
9251 to calling strout with -1 length. Coalesce into sprintf when
9254 2015-04-18 Paul Eggert <eggert@cs.ucla.edu>
9256 Prefer "Bug#1234" in commit messages (Bug#20325)
9257 * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
9258 as this isn't useful for Git.
9259 * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
9261 2015-04-18 Glenn Morris <rgm@gnu.org>
9263 * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
9266 2015-04-18 Tom Willemse <tom@ryuslash.org> (tiny change)
9268 * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
9271 2015-04-18 Glenn Morris <rgm@gnu.org>
9273 * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
9275 * doc/emacs/misc.texi (Sorting): Small edit.
9278 * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
9280 2015-04-18 Simen Heggestøyl <simenheg@gmail.com>
9282 css-mode.el: Support multi-line comment filling
9284 * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
9286 (css-adaptive-fill): New function.
9287 (css-mode): Set `adaptive-fill-function'.
9288 (scss-mode): Set `comment-continue'.
9290 2015-04-18 Nicolas Petton <nicolas@petton.fr>
9292 * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
9294 2015-04-18 Ivan Radanov Ivanov <ivanradanov@yahoo.co.uk> (tiny change)
9296 Minor improvements in Bulgarian input methods
9297 * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
9298 Replace U+042C with U+045D, as the former character is not used in
9299 the modern Bulgarian language.
9302 2015-04-17 Thomas Fitzsimmons <fitzsim@fitzsim.org>
9305 * eudc.texi (LDAP Configuration): Mention simple and SASL
9306 authentication schemes. Add index items. Shorten example server
9309 2015-04-17 Dmitry Gutov <dgutov@yandex.ru>
9311 Don't show both feature and function with the same name
9312 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
9313 Don't show both feature and function with the same name.
9315 (elisp--xref-identifier-location): Skip variable, if it's also a functiong
9316 * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
9317 Avoid returning both the variable and the function for the same
9320 2015-04-17 Wolfgang Jenkner <wjenkner@inode.at>
9322 Fix fontification of keywords clobbered by the prompt.
9323 * lisp/comint.el (comint-output-filter): Remove the uses of
9324 with-silent-modifications I introduced as part of the last change.
9325 This fixes, e.g., erratically missing highlighting when running
9326 ./configure --help; ./configure in a shell-mode buffer with
9327 compilation-shell-minor-mode turned on.
9329 2015-04-17 Glenn Morris <rgm@gnu.org>
9331 * admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
9333 2015-04-17 Stefan Monnier <monnier@iro.umontreal.ca>
9335 * lisp/indent.el (indent-region): Don't deactivate the mark
9338 2015-04-17 Sam Steingold <sds@gnu.org>
9340 lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
9342 2015-04-16 Leo Liu <sdl.web@gmail.com>
9344 * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
9346 2015-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9348 * lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
9350 2015-04-16 Glenn Morris <rgm@gnu.org>
9352 * admin/authors.el (authors-lax-changelogs): Update for erc changes.
9354 2015-04-16 Eli Zaretskii <eliz@gnu.org>
9356 Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
9357 * configure.ac (LIBJPEG): Leave it empty for MinGW.
9359 2015-04-16 Glenn Morris <rgm@gnu.org>
9361 * lisp/replace.el (query-replace-from-to-separator): Delay initialization
9362 to avoid rogue setting after startup.
9364 2015-04-16 Paul Eggert <eggert@cs.ucla.edu>
9366 Pre-4.6 GCC succeeds with unknown option
9367 * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
9370 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
9372 '[:graph:]' now excludes whitespace, not just ' '
9373 * doc/lispref/searching.texi (Char Classes):
9374 * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
9375 sans whitespace (not sans space).
9376 * src/character.c (graphicp): Exclude all Unicode whitespace chars,
9378 * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
9380 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
9382 (looking-back): Make the second arg non-optional.
9383 * lisp/subr.el (substitute-key-definition-key, special-form-p)
9384 (macrop): Drop deprecated second arg to indirect-function.
9385 (looking-back): Make the second arg non-optional.
9387 * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
9388 command is actually sent to the shell.
9390 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
9392 Port jpeg configuration to Solaris 10 with Sun C
9393 * configure.ac: Check for jpeglib 6b by trying to link it, instead
9394 of relying on cpp magic that has problems in practice. Check for
9395 both jpeglib.h and jerror.h features. Remove special case for
9396 mingw32, which should no longer be needed (and if it were needed,
9397 should now be addressable by hotwiring emacs_cv_jpeglib).
9400 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
9402 Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
9403 * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
9404 Move to elisp-mode.el.
9405 (lisp-mode-variables): (Re)move elisp-specific settings.
9406 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
9407 from lisp-mode-variables.
9408 (elisp--font-lock-flush-elisp-buffers): New function, moved from
9411 * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
9412 Avoid pathological slowdown at top-level in large file.
9414 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
9416 Standardize names of ChangeLog history files
9417 Suggested by Glenn Morris in:
9418 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
9419 * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
9420 * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
9421 * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
9422 * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
9423 * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
9424 * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
9427 Split top-level entries into pre- and post-April 7
9428 This more clearly distingiushes pre-April-7 ChangeLog entries (which
9429 are for top-level files only) from post-April-7 entries (which are
9430 about files at all levels. Problem reported by Glenn Morris in:
9431 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
9432 * ChangeLog.1: Move post-April-7 entries from here ...
9433 * ChangeLog.2: ... to this new file.
9434 * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
9436 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
9438 Fix recent cus-start changes that added customize-rogues
9439 * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
9441 * lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
9443 2015-04-15 Nicolas Petton <nicolas@petton.fr>
9445 Define cl-concatenate as an alias to seq-concatenate
9446 * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
9447 code by making cl-concatenate an alias to seq-concatenate.
9449 2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
9451 * src/lread.c (intern_1): Make sure we'd find the symbol we add
9453 * src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
9455 2015-04-15 Glenn Morris <rgm@gnu.org>
9457 * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
9459 2015-04-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
9461 Clean up gnus-uu saving code slightly
9462 * gnus-uu.el (gnus-uu-save-article): Make the
9463 save-restriction/widen calls make more sense.
9465 2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
9467 Make [:graph:] act like [:print:] sans space
9468 In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
9469 [:graph:] so that it matches everything that [:print:] does,
9471 * doc/lispref/searching.texi (Char Classes):
9473 * lisp/emacs-lisp/rx.el (rx):
9474 Document [:graph:] to be [:print:] sans ' '.
9475 * src/character.c, src/character.h (graphicp): New function.
9476 * src/regex.c (ISGRAPH) [emacs]: Use it.
9477 (BIT_GRAPH): New macro.
9478 (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
9479 (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
9480 Return BIT_GRAPH for RECC_GRAPH.
9481 (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
9482 and ISPRINT if BIT_PRINT.
9484 2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
9486 automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
9487 Don't use call-next-method in a cl-defmethod.
9489 * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
9490 (eieio--class-p): Remove, provided by cl-defstruct.
9492 2015-04-14 Nicolas Petton <nicolas@petton.fr>
9494 Add seq-intersection and seq-difference to the seq library
9495 * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
9497 * test/automated/seq-tests.el: Add tests for seq-intersection and
9499 * doc/lispref/sequences.texi: Add documentation for seq-intersection
9502 2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
9504 * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
9506 2015-04-14 Sam Steingold <sds@gnu.org>
9508 package--ensure-init-file: widen requires save-restriction
9510 2015-04-14 Eli Zaretskii <eliz@gnu.org>
9512 Improve the commit-msg Git hook for unibyte environments
9513 * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
9514 in unibyte environments. (Suggested by Paul Eggert
9515 <eggert@cs.ucla.edu>.) Use a more accurate approximation to
9516 [:print:], based on UTF-8 sequences of the unprintable characters.
9518 Describe problems with cursor caused by Windows Magnifier
9519 * etc/PROBLEMS: Describe the problem with cursor shape on
9520 MS-Windows due to Windows Magnifier.
9523 Make [:print:] support non-ASCII characters correctly
9524 * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
9525 (BIT_PRINT): New bit mask.
9526 (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
9527 * src/character.c (printablep): New function.
9528 * src/character.h (printablep): Add prototype.
9529 * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
9530 of 'print', 'alnum', and 'alphabetic'.
9531 * doc/lispref/searching.texi (Char Classes): Document the new
9532 behavior of [:print:].
9533 * etc/NEWS: Mention the new behavior of [:print:].
9535 Assign correct general-category and names to surrogates
9536 * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
9537 surrogates. This avoids assigning them the default
9538 general-category of 'Cn', i.e. unassigned codepoints.
9539 (unidata-get-name): Give surrogates synthetic names.
9541 2015-04-14 Paul Eggert <eggert@cs.ucla.edu>
9543 Assume C89 offsetof in xterm.c, xlwmenu.c
9544 * lwlib/xlwmenu.c (offset):
9545 * src/xterm.c (cvt_string_to_pixel_args):
9546 Use offsetof, not XtOffset.
9548 2015-04-14 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
9550 Assume C89 offsetof in widget.c
9551 * src/widget.c (XtOffset): Remove; no longer needed.
9552 (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
9554 Fix think-o in previous patch
9555 * src/window.c (count_windows, get_leaf_windows):
9556 Don't optimize count_windows incorrectly.
9558 2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
9560 Avoid some int overflows in window.c
9561 * src/print.c (print_object):
9562 * src/window.c (sequence_number):
9563 * src/window.h (struct window.sequence_number):
9564 Don't assume window sequence number fits in int.
9565 * src/window.c (window_select_count):
9566 * src/window.h (struct window.use_time, window_select_count):
9567 Don't assume window use time fits in int.
9568 * src/window.c (Fsplit_window_internal):
9569 Don't assume user-supplied integer, or sum, fits in int.
9570 (Fset_window_configuration, count_windows, get_leaf_windows)
9571 (save_window_save, Fcurrent_window_configuration):
9572 Use ptrdiff_t for object counts.
9573 (Fset_window_configuration): Omit unused local 'n'.
9574 (count_windows): Simplify by writing in terms of get_leaf_windows.
9575 (get_leaf_windows): Don't store through FLAT if it's null.
9576 (extract_dimension): New static function.
9577 (set_window_margins, set_window_fringes, set_window_scroll_bars):
9578 Use it to avoid undefined behavior when converting user-supplied
9581 2015-04-13 Glenn Morris <rgm@gnu.org>
9584 * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
9585 * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
9587 2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
9589 [Gnus] Catch the invalid-operation that idna.el will issue
9590 * lisp/gnus/gnus-art.el (gnus-use-idna):
9591 * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
9592 * lisp/gnus/message.el (message-use-idna):
9593 Catch the invalid-operation that idna.el will issue.
9595 2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
9597 * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
9599 2015-04-13 Sam Steingold <sds@gnu.org>
9601 package--ensure-init-file: widen before looking for "(package-initialize)"
9603 2015-04-13 Dmitry Gutov <dgutov@yandex.ru>
9605 Change diff-switches default to `-u'
9607 * doc/emacs/files.texi (Comparing Files): Document the new default
9608 value of `diff-switches'.
9609 * doc/emacs/trouble.texi (Sending Patches): Document the preference
9610 for unified diff format. Escape the plus in the suggested `-F' regexp
9612 * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
9614 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
9616 (gnus-group--setup-tool-bar-update): Fix last change
9617 * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
9618 cursor-sensor-functions should be a list of functions.
9620 2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
9622 Use gmm-called-interactively-p in Gnus
9623 * lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
9625 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
9627 * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
9629 * lisp/cus-start.el (read-buffer-function): Don't advertize
9630 iswitchb-read-buffer any more.
9631 (iswitchb): Don't tweak this obsolete group any more.
9633 2015-04-13 Artur Malabarba <bruce.connor.am@gmail.com>
9635 * lisp/emacs-lisp/package.el: Fix package--ensure-init-file
9637 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
9638 Adding a string after a constructor's argument list will use
9639 that string as the constructor function docstring. If this string
9640 is absent but the struct itself was given a docstring, use that as
9641 the constructor's docstring.
9644 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
9646 Deprecate `intangible' and `point-entered' properties
9647 * lisp/emacs-lisp/cursor-sensor.el: New file.
9648 * lisp/simple.el (pre-redisplay-functions): New hook.
9649 (redisplay--pre-redisplay-functions): New function.
9650 (pre-redisplay-function): Use it.
9651 (minibuffer-avoid-prompt): Mark obsolete.
9652 (redisplay--update-region-highlight): Adapt it to work as a function on
9653 pre-redisplay-functions.
9654 * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
9655 (minibuffer-prompt-properties): Use it. Use cursor-intangible rather
9656 than point-entered to make the prompt intangible.
9657 * lisp/forms.el: Move `provide' calls to the end.
9658 (forms-mode): Don't use `run-hooks' on a local var.
9659 (forms--make-format, forms--make-format-elt-using-text-properties):
9660 Use cursor-intangible rather than `intangible'.
9661 (forms-mode): Enable cursor-intangible-mode.
9662 * lisp/isearch.el (isearch-mode): Use defvar-local.
9663 (cursor-sensor-inhibit): Declare.
9664 (isearch-mode): Set cursor-sensor-inhibit.
9665 (isearch-done): Set it back.
9666 (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
9667 (isearch-close-unnecessary-overlays): Don't bother with `intangible'
9669 * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
9670 (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
9672 (ses-goto-print, ses-print-cell, ses-adjust-print-width)
9673 (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
9674 inhibit-point-motion-hooks any more.
9675 (ses--cell-at-pos, ses--curcell): New functions, extracted from
9677 (ses-set-curcell): Use them.
9678 (ses-print-cell, ses-setup): Use cursor-intangible instead of
9679 `intangible'. Make sure cursor-intangible isn't sticky at BOB.
9680 (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
9681 Use ses--cell-at-pos.
9682 (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
9683 extracted from ses-command-hook. Make them work with multiple windows
9684 displaying the same buffer.
9685 (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
9686 Enable cursor-intangible-mode.
9687 (ses-command-hook): Remove cell highlight and mode-line update code.
9688 (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
9689 Update for new name of text-property holding the cell name.
9690 (ses-rename-cell): Don't mess with mode-line-process.
9691 * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
9692 cursor-sensor-functions property instead of point-entered.
9693 (erc-insert-timestamp-right, erc-format-timestamp):
9694 Use cursor-intangible rather than `intangible'.
9695 (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
9696 remove-from-invisibility-spec. Enable cursor-intangible-mode and
9697 cursor-sensor-mode if needed.
9698 (erc-echo-timestamp): Adapt to calling convention of
9699 cursor-sensor-functions.
9700 (erc-insert-timestamp-right): Remove unused vars `current-window' and
9702 * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
9703 (gnus-update-group-mark-positions): Remove unused `topic' var.
9704 (gnus-group-insert-group-line): Remove unused var `header'.
9705 (gnus-group--setup-tool-bar-update): New function.
9706 (gnus-group-insert-group-line): Use it.
9707 (gnus-group-update-eval-form): Declare local
9708 dynamically-bound variables.
9709 (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
9710 * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
9711 (gnus-group-prepare-topics, gnus-topic-update-topic)
9712 (gnus-topic-change-level, gnus-topic-catchup-articles)
9713 (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
9714 Use inhibit-read-only.
9715 (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
9716 (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
9717 * lisp/textmodes/reftex-index.el (reftex-display-index):
9718 Use cursor-intangible-mode if available.
9719 (reftex-index-post-command-hook): Check cursor-intangible.
9720 * lisp/textmodes/reftex-toc.el (reftex-toc):
9721 Use cursor-intangible-mode if available.
9722 (reftex-toc-recenter, reftex-toc-post-command-hook):
9723 Check cursor-intangible.
9724 * lisp/textmodes/sgml-mode.el: Use lexical-binding.
9725 (sgml-tag): Use cursor-sensor-functions instead of point-entered.
9726 (sgml-tags-invisible): Use with-silent-modifications and
9727 inhibit-read-only. Enable cursor-sensor-mode.
9728 (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
9729 calling convention of cursor-sensor-functions.
9730 * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
9731 (table-point-entered-cell-hook, table-point-left-cell-hook):
9733 (table-cell-entered-state): Remove var.
9734 (table--put-cell-point-entered/left-property)
9735 (table--remove-cell-properties):
9736 Use cursor-sensor-functions rather than point-entered/left.
9737 (table--point-entered/left-cell-function): Merge
9738 table--point-entered-cell-function and table--point-left-cell-function
9739 and adjust to calling convention of cursor-sensor-functions.
9741 Update ldef-boots.el
9743 * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
9745 * doc/misc/eieio.texi: Don't advertize now obsolete constructs
9747 Collapse successive char deletions in the undo log
9748 * src/cmds.c (remove_excessive_undo_boundaries): New function,
9749 extracted from Fself_insert_command.
9750 (Fdelete_char, Fself_insert_command): Use it.
9751 * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
9752 * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
9754 xterm and OSC 52: Add NEWS entry, and tweak the code
9755 * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
9757 (terminal-init-xterm-activate-set-selection): Set a terminal property.
9758 (xterm--set-selection): Use it instead of checking the value of
9759 `terminal-initted'. Don't use string-bytes.
9761 2015-04-13 Philipp Stephani <p.stephani2@gmail.com>
9763 xterm.el: Implement OSC-52 functionality for setting the X selection
9764 * lisp/term/xterm.el (xterm-max-cut-length): New var.
9765 (xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
9766 (terminal-init-xterm, xterm--version-handler): Use them.
9768 2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
9770 Remove left over code from when we used an obsolete/loaddefs.el file
9771 * lisp/subr.el (do-after-load-evaluation): Remove left over code from when
9772 we used an obsolete/loaddefs.el file.
9774 * cedet/semantic/fw.el: Use declare.
9775 * cedet/semantic/fw.el (semantic-exit-on-input)
9776 (semanticdb-without-unloaded-file-searches): Use declare.
9777 (semantic-fw-add-edebug-spec): Remove.
9779 (completion-lisp-mode-hook): Use completion-separator-chars
9780 * lisp/completion.el (completion-lisp-mode-hook):
9781 Use completion-separator-chars rather than local key binding.
9783 * src/*.c: Set deactivate_mark buffer-locally
9785 * src/insdel.c (prepare_to_modify_buffer_1):
9786 * src/fileio.c (Finsert_file_contents): Set deactivate_mark
9789 2015-04-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
9791 python.el: Keep symmetry on sexp navigation with parens
9793 * lisp/progmodes/python.el
9794 (python-nav--forward-sexp): Add argument skip-parens-p.
9795 (python-nav-forward-sexp, python-nav-backward-sexp)
9796 (python-nav-forward-sexp-safe)
9797 (python-nav-backward-sexp-safe): Use it.
9798 * test/automated/python-tests.el
9799 (python-nav-forward-sexp-1): Fix test.
9801 2015-04-12 João Távora <joaotavora@gmail.com>
9803 Don't use `setq-local' in Gnus code
9804 This might break upstream builds with older Emacsen
9805 * lisp/gnus/message.el (message-mode): Use `set' and
9806 `make-local-variable' instead of `setq-local'.
9808 2015-04-12 Paul Eggert <eggert@cs.ucla.edu>
9810 Update Makefile.in's .PHONY dependencies
9811 * Makefile.in (change-history-commit, master-branch-is-current)
9812 (no-ChangeLog): Now phony.
9814 Remove configure's --with-mmdf option
9815 * configure.ac (MAIL_USE_MMDF): Remove.
9816 * etc/NEWS: Document this.
9817 * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
9820 * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
9821 That way, 'make install' won't think it's a man page.
9822 Reported by Ashish SHUKLA in:
9823 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
9825 Improve 'make change-history' prereq tests
9826 * Makefile.in (gen_origin): Fix to match what's in the master branch.
9827 (no-ChangeLog, master-branch-is-current): New rules.
9828 (change-history): Depend on them, to avoid similar future problems.
9829 Escape the local-variables string to pacify Emacs when editing
9832 2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
9834 * test/automated/package-test.el (with-package-test): Kill Packages buffer
9836 * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
9837 (package-menu--prompt-transaction-p): Prompt for "Delete" first,
9838 "Upgrade" last, and use capitalized instead of all-caps.
9840 * lisp/emacs-lisp/package.el: Completely silence async operations
9841 (package--make-autoloads-and-stuff): Silence autoloads.
9842 (package--save-selected-packages): New function, silences
9843 `customize-save-variable'.
9844 (package--user-selected-p, package-install-from-buffer)
9845 (package-delete, package-install): Use it.
9846 (package-install-from-archive)
9847 (package-menu--perform-transaction): Silence.
9848 (package-menu-execute): Feedback when operation starts.
9850 Use delay-mode-hooks when visiting the init-file
9851 * lisp/emacs-lisp/package.el (package--ensure-init-file):
9853 * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
9855 * lisp/files.el: Only message when saving if save-silently is nil
9856 (save-silently): New variable.
9857 (files--message): New function.
9858 (find-file-noselect, save-buffer, basic-save-buffer)
9859 (basic-save-buffer-2, save-some-buffers, not-modified)
9860 (append-to-file): Use them.
9862 2015-04-12 Johan Bockgård <bojohan@gnu.org>
9864 Support debug declarations in pcase macros
9865 * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
9866 (pcase-UPAT): Use it. Remove "`".
9867 (pcase--edebug-match-macro): New function.
9868 (pcase-defmacro): Support debug declarations.
9869 * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
9870 * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
9871 * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
9873 pcase.el: Edebug support for `app' and vector patterns
9874 * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
9875 (pcase-UPAT): Use it. Support `app' patterns.
9876 (pcase-QPAT): Support vector patterns.
9878 edebug.el: Disambiguate vector specifications
9879 * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
9880 `(vector ...)' as a vector specification, not as a sublist.
9882 (gnus-summary-refer-thread): Don't clobber unread articles
9883 This fixes a bug where `A T' causes "random" articles to become marked
9885 * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
9886 gnus-newsgroup-unreads remains sorted.
9888 mouse-sel.el: Fix mouse-sel-get-selection-function
9889 * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
9890 Use gui--last-selected-text-primary instead of no longer existing
9891 gui-last-selected-text.
9893 * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
9895 * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
9897 2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
9899 * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
9901 * lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
9903 * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
9904 (byte-compile--interactive): New var.
9905 (byte-compile--message): New function.
9906 (byte-compile-log-1, byte-force-recompile)
9907 (byte-recompile-directory, byte-recompile-file)
9908 (byte-compile-file, compile-defun)
9909 (byte-compile-file-form-defmumble, byte-compile)
9910 (byte-compile-file-form-defalias, display-call-tree): Use it.
9912 * lisp/files.el: Don't message when nothing happened
9913 (save-some-buffers, basic-save-buffer): Before messaging to say
9914 "nothing was saved" check if (called-interactively-p 'any).
9916 2015-04-12 João Távora <joaotavora@gmail.com>
9918 Summary: Improve sexp-based movement in message-mode
9919 Works by giving citations and smileys a different syntax. This helps
9920 modes like `show-paren-mode', `electric-pair-mode', and C-M-*
9921 sexp-based movement.
9922 * lisp/gnus/message.el (message--syntax-propertize): New function.
9923 (message-mode): Set syntax-related vars.
9924 (message-smileys): New variable.
9925 * test/automated/message-mode-tests.el: New file
9927 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
9929 Use bool for boolean in window.c
9930 * src/window.c: Omit unnecessary static function decls.
9931 (adjust_window_count, select_window, Fselect_window)
9932 (window_body_width, Fwindow_body_height, Fwindow_body_width)
9933 (set_window_hscroll, check_window_containing, Fwindow_at)
9934 (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
9935 (unshow_buffer, replace_window, recombine_windows)
9936 (add_window_to_list, candidate_window_p, next_window)
9937 (Fnext_window, Fprevious_window, window_loop, check_all_windows)
9938 (Fget_buffer_window, Fdelete_other_windows_internal)
9939 (replace_buffer_in_windows_safely, set_window_buffer)
9940 (Fset_window_buffer, Fforce_window_update)
9941 (temp_output_buffer_show, make_parent_window)
9942 (window_resize_check, window_resize_apply, Fwindow_resize_apply)
9943 (resize_frame_windows, Fsplit_window_internal)
9944 (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
9945 (Fresize_mini_window_internal, mark_window_cursors_off)
9946 (window_scroll, window_scroll_pixel_based)
9947 (window_scroll_line_based, scroll_command, Fscroll_other_window)
9948 (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
9949 (Fmove_to_window_line, Fset_window_configuration)
9950 (delete_all_child_windows, apply_window_adjustment)
9951 (set_window_fringes, set_window_scroll_bars)
9952 (Fset_window_vscroll, foreach_window, foreach_window_1)
9953 (compare_window_configurations, Fcompare_window_configurations):
9954 Prefer 'bool', 'true', and 'false' for booleans.
9955 * src/window.h (WINDOW_MODE_LINE_LINES)
9956 (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
9958 2015-04-11 Artur Malabarba <bruce.connor.am@gmail.com>
9960 Speed up byte-compilation and autoload generation by avoiding mode-hooks
9961 This prevents emacs-lisp-mode-hook from being run everytime an
9962 autoload file is generated, which can account for a fraction of
9963 package installation time depending on the hooks the user has
9965 * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
9966 * lisp/emacs-lisp/autoload.el (autoload-find-file)
9967 (autoload-find-generated-file): Use delay-mode-hooks.
9969 * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
9970 (package-menu-refresh): Respect async and do new package checking.
9971 (list-packages): Use `package-menu-refresh' instead of repeating code.
9973 * lisp/emacs-lisp/package.el: Improve package-menu-quick-help
9974 (package--quick-help-keys): New variable.
9975 (package--prettify-quick-help-key): New function.
9976 (package-menu-quick-help): Use it.
9978 * lisp/emacs-lisp/package.el: Fix initially wrong compat table
9979 (package--build-compatibility-table): require finder
9981 * test/automated/package-test.el: Fix new test
9983 * lisp/emacs-lisp/package.el: Silence async operations
9984 (package--silence): New variable.
9985 (package--message): New function.
9986 (package-import-keyring, package-refresh-contents)
9987 (package-compute-transaction, package-install, package-delete)
9988 (package-menu--perform-transaction, package-menu-execute): Use it.
9990 * test/automated/package-test.el: Test async functionality
9991 (package-test-update-archives-async): New test
9993 2015-04-11 Daiki Ueno <ueno@gnu.org>
9995 Utilize `make-process' in epg.el
9996 * lisp/epg.el (epg-error-output): Abolish.
9997 (epg-context): New slot `error-buffer'.
9998 (epg--start): Use `make-process' and `make-pipe-process'.
9999 (epg--process-filter): Remove code separating stderr from stdout.
10000 (epg-wait-for-completion): Simplify `error-output' handling.
10001 (epg-reset): Dispose error buffer.
10003 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
10005 * .gitignore: Ignore doc temps and outputs.
10007 Port commit-msg to MSYS Bash+Gawk
10008 See Eli Zaretskii in:
10009 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
10010 * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
10011 (cent_sign, print_at_sign, at_sign): Revert previous change.
10012 (print_at_sign): Prepend "BEGIN".
10013 (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
10015 Port commit-msg to broken MS-Windows shell
10016 * build-aux/git-hooks/commit-msg (cent_sign):
10017 Just use UTF-8 here rather than ASCII + printf, as the latter fails
10018 on a broken MS-Windows shell. Reported by Eli Zaretskii in:
10019 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
10021 2015-04-11 Chris Zheng <chriszheng99@gmail.com> (tiny change)
10023 Support GnuTLS v3.4 and later on MS-Windows
10024 * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
10025 * lisp/term/w32-win.el (dynamic-library-alist): Determine which
10026 GnuTLS DLL to load according to value of libgnutls-version.
10029 2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
10031 Minor quoting etc. fixes to misc manuals
10032 Fix some minor quoting and spacing issues. Distinguish more
10033 clearly among grave accent and apostrophe (which are ASCII) and
10034 single quote (which is not). Prefer the standard terms
10035 "apostrophe" and "grave accent" to alternative names that can be
10036 confusing. Use apostrophes to single-quote ASCII text.
10037 * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
10038 rather than approximating it in ASCII with grave accent.
10040 2015-04-11 Daiki Ueno <ueno@gnu.org>
10042 Respect more keyword args in `make-process'
10043 * process.c (Fmake_process): Respect `:sentinel' and `:filter'
10044 keywords as documented.
10046 2015-04-10 Dmitry Gutov <dgutov@yandex.ru>
10048 Extract ChangeLog entries when committing a directory
10049 * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
10050 * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
10051 Add a FIXME comment.
10052 (log-edit-changelog-entries): Extract from
10053 `log-edit-changelog-entries', handle FILE being a directory
10054 (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
10056 2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
10058 Fix problems found by --enable-gcc-warnings
10059 * src/process.c (create_process, Fmake_pipe_process)
10060 (Fmake_network_process): Omit unused locals.
10062 Fix commit-msg to handle scissors lines
10063 * build-aux/git-hooks/commit-msg:
10064 Ignore every line after a scissors line, such as a line generated
10065 by 'git commit -v'. Problem reported by Johan Bockgård in:
10066 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
10068 port commit-msg to Gawk 3.0.4 (1999)
10069 * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
10070 (print_at_sign, at_sign): New vars. Use them to avoid problems
10071 Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS. See:
10072 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
10074 Have commit-msg report commit failure
10075 * build-aux/git-hooks/commit-msg: If the commit is aborted,
10076 say so. Simplify by doing this at the end. Problem reported
10077 by Eli Zaretskii in:
10078 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
10080 2015-04-10 Thomas Fitzsimmons <fitzsim@fitzsim.org>
10082 Clean up LDAP Configuration section of EUDC manual
10083 * doc/misc/eudc.texi: Combine indices.
10084 (LDAP Configuration): Use command markup. Add index entries.
10085 Change formatting. Wrap long lines. Add noindent markup.
10087 2015-04-10 Daiki Ueno <ueno@gnu.org>
10089 Add facility to collect stderr of async subprocess
10090 * src/w32.h (register_aux_fd): New function declaration.
10091 * src/w32.c (register_aux_fd): New function.
10092 * src/process.h (struct Lisp_Process): New member stderrproc.
10093 * src/process.c (PIPECONN_P): New macro.
10094 (PIPECONN1_P): New macro.
10095 (Fdelete_process, Fprocess_status, Fset_process_buffer)
10096 (Fset_process_filter, Fset_process_sentinel, Fstop_process)
10097 (Fcontinue_process): Handle pipe process specially.
10098 (create_process): Respect p->stderrproc.
10099 (Fmake_pipe_process): New function.
10100 (Fmake_process): Add new keyword argument :stderr.
10101 (wait_reading_process_output): Specially handle a pipe process when
10103 (syms_of_process): Register Qpipe and Smake_pipe_process.
10104 * doc/lispref/processes.texi (Asynchronous Processes): Document
10105 `make-pipe-process' and `:stderr' keyword of `make-process'.
10106 * lisp/subr.el (start-process): Suggest to use `make-process' handle
10107 standard error separately.
10108 * test/automated/process-tests.el (process-test-stderr-buffer)
10109 (process-test-stderr-filter): New tests.
10110 * etc/NEWS: Mention new process type `pipe' and its usage with the
10111 `:stderr' keyword of `make-process'.
10113 2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
10115 Minor quoting etc. fixes to lispref manual
10116 * doc/lispref/tips.texi (Documentation Tips):
10117 Distinguish more clearly among grave accent, apostrophe,
10119 * doc/lispref/README, doc/lispref/buffers.texi:
10120 * doc/lispref/commands.texi, doc/lispref/control.texi:
10121 * doc/lispref/customize.texi, doc/lispref/display.texi:
10122 * doc/lispref/elisp.texi, doc/lispref/files.texi:
10123 * doc/lispref/frames.texi, doc/lispref/hash.texi:
10124 * doc/lispref/help.texi, doc/lispref/internals.texi:
10125 * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
10126 * doc/lispref/markers.texi, doc/lispref/modes.texi:
10127 * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
10128 * doc/lispref/os.texi, doc/lispref/positions.texi:
10129 * doc/lispref/strings.texi, doc/lispref/syntax.texi:
10130 * doc/lispref/text.texi, doc/lispref/tips.texi:
10131 * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
10132 Use American-style double quoting in ordinary text,
10133 and quote 'like this' when single-quoting in ASCII text.
10134 Also, fix some minor spacing issues.
10136 2015-04-10 Michael Albinus <michael.albinus@gmx.de>
10138 Handle symlinked test directory in tramp-tests.el
10139 * test/automated/tramp-tests.el (tramp-test18-file-attributes)
10140 (tramp--test-check-files): Use `file-truename' for directories.
10142 2015-04-10 Eli Zaretskii <eliz@gnu.org>
10144 Fix 'recenter' when visual-line-mode is turned on
10145 * src/window.c (Frecenter): Use the same code for GUI and TTY
10146 frames alike; use vmotion only for "initial" frames. This is
10147 because vmotion doesn't support visual-line-mode. Rewrite the
10148 'iarg >= 0' case to use move_it_* functions instead of using
10149 vmotion, for the same reason. Fix the clipping of the argument
10150 value to support scroll-margin in all cases and avoid unwarranted
10151 recentering. Reported by Milan Stanojević <milanst@gmail.com> in
10152 http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
10155 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10157 * abbrev.el (define-abbrev-table): Refine last change.
10159 cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
10160 * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
10161 use of c[ad]+r", so as to keep the "cl-" prefix on all
10162 cl-lib definitions.
10164 * vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
10166 * lisp/cedet/semantic: Remove some dead code
10167 * lisp/cedet/semantic/util-modes.el
10168 (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
10170 * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
10171 not supported any more.
10172 (semantic-safe): Use `declare'.
10173 * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
10174 (semantic-tag-intangible-p): Remove unused functions.
10175 * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
10176 Remove unused function.
10178 * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
10179 (gnus-article-hide-text, gnus-article-unhide-text)
10180 (gnus-article-unhide-text-type): Remove special handling of
10181 `intangible' since that property is not used any more.
10182 (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
10184 2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
10186 Use the VC root in `log-edit-listfun'
10187 * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
10188 `log-edit-listfun'.
10190 2015-04-09 Jay Belanger <jay.p.belanger@gmail.com>
10192 Fix description of Unix time, mention new function.
10193 * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
10195 * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
10196 (Basic Operations on Units): Mention `calc-convert-exact-units'.
10198 2015-04-09 Artur Malabarba <bruce.connor.am@gmail.com>
10200 * lisp/emacs-lisp/package.el: Use mode-line-process for notification
10202 2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
10204 (log-edit-insert-changelog-entries): Don't add newline after the last entry
10205 * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
10206 Don't add newline after the last entry.
10208 2015-04-09 Simen Heggestøyl <simenheg@gmail.com>
10210 css-mode.el: Add "not" pseudo-class
10212 * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
10213 list of CSS pseudo-classes.
10215 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10217 etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
10219 2015-04-09 Michael Albinus <michael.albinus@gmx.de>
10221 Stop messing with the EMACS env var
10222 * misc.texi (Interactive Shell): Remove description of EMACS env var.
10224 2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
10226 Adapt 'make change-history' to coding cookie
10227 * Makefile.in (change-history): Adjust to change of format of
10228 ChangeLog file, which now has a coding cookie before an indented
10231 2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
10233 Adapt 'make change-history' to coding cookie
10234 * Makefile.in (change-history): Adjust to change of format of
10235 ChangeLog file, which now has a coding cookie before an indented
10238 gitlog-to-changelog coding cookie and mv -i
10239 * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
10240 for copyright notice prototype, so that we get a proper "coding:"
10241 cookie. Use 'mv -i' to avoid unconditionally overwriting an
10242 existing ChangeLog. Problems reported by Eli Zaretskii in:
10243 http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
10246 * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
10247 2015-04-09 gitlog-to-changelog: port to MS-Windows
10249 2015-04-09 Boruch Baum <boruch_baum@gmx.com> (tiny change)
10251 * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
10254 2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10256 Stop messing with the EMACS env var
10258 * lisp/net/tramp-sh.el (tramp-remote-process-environment):
10259 * lisp/comint.el (comint-exec-1):
10260 * lisp/term.el (term-exec-1): Don't set EMACS envvar.
10261 * lisp/progmodes/compile.el (compilation-start): Same and bring
10262 INSIDE_EMACS's format in line with other users.
10264 css-mode.el (css-smie-rules): Fix indentation after complex selectors
10266 * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
10267 inner structure of selectors.
10269 2015-04-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
10271 python.el: Indent docstring lines to base-indent
10273 Thanks to immerrr <immerrr@gmail.com> for reporting and providing
10275 * lisp/progmodes/python.el
10276 (python-indent-context): Add :inside-docstring context.
10277 (python-indent--calculate-indentation): Handle :inside-docstring.
10278 (python-indent-region): Re-indent docstrings.
10279 * test/automated/python-tests.el (python-indent-region-5)
10280 (python-indent-inside-string-2): Fix tests.
10282 python.el: Increase native completion robustness
10284 Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
10285 this and providing useful ideas.
10286 * lisp/progmodes/python.el
10287 (python-shell-completion-native-output-timeout): Increase value.
10288 (python-shell-completion-native-try-output-timeout): New var.
10289 (python-shell-completion-native-try): Use it.
10290 (python-shell-completion-native-setup): New readline setup avoids
10291 polluting current context, ensures output when no-completions are
10292 available and includes output end marker.
10293 (python-shell-completion-native-get-completions): Trigger with one
10294 tab only. Call accept-process-output until output end is found or
10295 python-shell-completion-native-output-timeout is exceeded.
10297 2015-04-08 Samer Masterson <samer@samertm.com>
10299 * lisp/eshell: Make backslash a no-op in front of normal chars
10301 * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
10302 (eshell-parse-backslash): Return escaped character after backslash
10303 if it is special. Otherwise, if the backslash is not in a quoted
10304 string, ignore the backslash and return the character after; if
10305 the backslash is in a quoted string, return the backslash and the
10307 * test/automated/eshell.el (eshell-test/escape-nonspecial)
10308 (eshell-test/escape-nonspecial-unicode)
10309 (eshell-test/escape-nonspecial-quoted)
10310 (eshell-test/escape-special-quoted): Add tests for new
10311 `eshell-parse-backslash' behavior.
10313 2015-04-08 Gustav Hållberg <gustav@gmail.com> (tiny change)
10315 * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
10316 after the file name.
10319 2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
10321 Minor quoting etc. fixes to Emacs manual
10322 * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
10323 * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
10324 * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
10325 * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
10326 * doc/emacs/indent.texi, doc/emacs/macos.texi:
10327 * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
10328 * doc/emacs/programs.texi, doc/emacs/rmail.texi:
10329 * doc/emacs/search.texi, doc/emacs/trouble.texi:
10330 * doc/emacs/vc1-xtra.texi:
10331 Use American-style double quoting in ordinary text,
10332 and quote 'like this' when single-quoting in ASCII text.
10333 Also, fix some minor spacing issues.
10335 Minor quoting etc. fixes to elisp intro
10336 * doc/lispintro/emacs-lisp-intro.texi: Consistently use
10337 American-style double quoting in ordinary text. In ASCII text,
10338 consistently quote 'like this' instead of `like this', unless
10339 Emacs requires the latter.
10341 2015-04-08 Dmitry Gutov <dgutov@yandex.ru>
10343 * CONTRIBUTE: Mention log-edit-insert-changelog.
10345 * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
10347 2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
10349 * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
10351 2015-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10353 (eieio-copy-parents-into-subclass): Fix inheritance of initargs
10355 * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
10356 Fix inheritance of initargs.
10358 2015-04-08 Artur Malabarba <bruce.connor.am@gmail.com>
10360 * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
10361 while dowloading information.
10363 * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
10364 (package--ensure-init-file): Check file contents before visiting.
10365 (package-initialize): Call it.
10366 (package-install-from-buffer, package-install): Don't call it.
10368 2015-04-08 Eli Zaretskii <eliz@gnu.org>
10370 * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
10373 2015-04-08 Michael Albinus <michael.albinus@gmx.de>
10375 Fix nasty scoping bug in tramp-cache.el
10376 * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
10378 2015-04-08 Tassilo Horn <tsdh@gnu.org>
10380 Add notice to visual commands section
10381 * doc/misc/eshell.texi (Input/Output): Add notice that some tools
10382 such as git call less with its -F option which omits pagination if
10383 the contents is less than one page long. This interferes with
10384 eshell's visual (sub-)commands.
10386 2015-04-07 Dmitry Gutov <dgutov@yandex.ru>
10388 ffap: Support environment variable expansion in file names
10390 * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
10391 environment variable expansion in file names.
10393 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
10395 Prefer double-quote to accent-grave in man pages
10397 2015-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
10400 * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
10402 2015-04-07 Ivan Shmakov <ivan@siamics.net>
10404 Update etc/PROBLEMS.
10405 * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
10406 ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
10407 'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
10408 respectively); other minor updates and tweaks. (Bug#20011)
10410 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
10412 Add doc strings for some Isearch state vars
10413 * lisp/misearch.el (multi-isearch-buffer-list)
10414 (multi-isearch-file-list): Add doc strings.
10417 2015-04-07 Alan Mackenzie <acm@muc.de>
10419 Always mark "<" and ">" in #include directives with text properties.
10420 * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
10421 matcher" with an invocation of c-make-font-lock-search-function to allow
10422 fontification when there's no trailing space on an "#include <..>" line.
10424 2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
10426 Generate a ChangeLog file from commit logs
10427 * .gitignore: Add 'ChangeLog'.
10428 * build-aux/gitlog-to-changelog: New file, from Gnulib.
10429 * build-aux/gitlog-to-emacslog: New file.
10430 * CONTRIBUTE: Document the revised workflow.
10431 * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
10432 instead of just special cases.
10433 (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
10434 (ChangeLog, unchanged-history-files, change-history)
10435 (change-history-commit): New rules.
10436 * admin/admin.el (make-manuals-dist--1):
10437 Don't worry about doc/ChangeLog.
10438 * admin/authors.el: Add a FIXME.
10439 * admin/make-tarball.txt:
10440 * lisp/calendar/icalendar.el:
10441 * lisp/gnus/deuglify.el:
10442 * lisp/obsolete/gulp.el:
10444 Adjust to renamed ChangeLog history files.
10445 * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
10446 * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
10447 Remove obsolete discussion of merging ChangeLog files.
10448 New section "Maintaining ChangeLog history".
10449 * build-aux/git-hooks/pre-commit:
10450 Reject attempts to commit files named 'ChangeLog'.
10451 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10452 * make-dist: Make and distribute top-level ChangeLog if there's a
10453 .git directory. Distribute the new ChangeLog history files
10454 instead of scattered ChangeLog files. Distribute the new files
10455 gitlog-to-changelog and gitlog-to-emacslog.
10458 Rename ChangeLogs for gitlog-to-changelog
10459 This patch was implemented via the following shell commands:
10460 find * -name ChangeLog |
10461 sed 's,.*,git mv & &.1,
10462 s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
10463 s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
10464 s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
10465 s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
10466 s, src/ChangeLog\.1$, src/ChangeLog.13,' |
10468 git commit -am"[this commit message]"
10470 This file records repository revisions from
10471 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
10472 commit a664f6a5d586e1f3fdbf31d0cf2fdaa6429a58fe (inclusive).
10473 See ChangeLog.1 for earlier changes.
10475 ;; Local Variables:
10479 Copyright (C) 2015 Free Software Foundation, Inc.
10481 This file is part of GNU Emacs.
10483 GNU Emacs is free software: you can redistribute it and/or modify
10484 it under the terms of the GNU General Public License as published by
10485 the Free Software Foundation, either version 3 of the License, or
10486 (at your option) any later version.
10488 GNU Emacs is distributed in the hope that it will be useful,
10489 but WITHOUT ANY WARRANTY; without even the implied warranty of
10490 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10491 GNU General Public License for more details.
10493 You should have received a copy of the GNU General Public License
10494 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.