Lars Ingebrigtsen [Tue, 30 Jul 2019 14:20:40 +0000 (16:20 +0200)]
Have newsticker use iso8601 to parse dates
* lisp/net/newst-backend.el (newsticker--decode-iso8601-date): Use
iso8601 to parse.
Michael Albinus [Wed, 31 Jul 2019 19:22:48 +0000 (21:22 +0200)]
Call file notification actions properly in filenotify-tests.el
* test/lisp/filenotify-tests.el (file-notify--test-wait-for-events):
Rename from `file-notify--wait-for-events'. Adapt all callees.
(file-notify--test-cleanup): Reset also `file-notify--test-event'
and `file-notify--test-file nil'.
(file-notify--test-event-desc, file-notify--test-event-action):
New accessor functions.
(file-notify-test02-rm-watch, file-notify--test-event-test)
(file-notify--test-with-actions-check)
(file-notify--test-with-actions-explainer): Use them.
(file-notify--test-with-actions-check)
(file-notify--test-with-actions-explainer)
(file-notify--test-with-actions): Rename them from *-events-*.
Rename also internal variables accordingly. Adapt all callees.
Michael Albinus [Wed, 31 Jul 2019 19:22:05 +0000 (21:22 +0200)]
Distinguish different file notification events
* lisp/filenotify.el (file-notify--watch): Add docstring.
(file-notify-descriptors, file-notify--rm-descriptor)
(file-notify--pending-rename): Adapt docstring.
(file-notify): New defstruct.
(file-notify-handle-event): Rename argument to OBJECT. Use
accessor functions of the defstruct.
Paul Eggert [Wed, 31 Jul 2019 17:40:44 +0000 (10:40 -0700)]
Avoid intern calls for builtin syms
* src/casefiddle.c (Fdowncase_region):
* src/eval.c (Fdefvaralias):
Use builtin symbol rather than calling intern.
Paul Eggert [Wed, 31 Jul 2019 17:38:34 +0000 (10:38 -0700)]
Fix Fload infile problem
* src/lread.c (Fload): Close window of vulnerability
where the wrong stream could have been closed.
Stefan Monnier [Wed, 31 Jul 2019 15:48:43 +0000 (11:48 -0400)]
* src/lread.c (close_infile_unwind): Remove leftover debug code
Stefan Monnier [Wed, 31 Jul 2019 15:19:39 +0000 (11:19 -0400)]
* src/lread.c (infile): Set/reset it like a dynamically scoped variable
I've seen segfaults where `infile` is nil when we get to
readbyte_from_file, presumably because Fload set it to NULL (via
close_infile_unwind) just before returning to its caller which was
probably itself within another read/load and for some reason
readevalloop didn't get to re-set `infile` like it used to do at every
iteration. I was not able to really track down the bug, but the way
`infile` was set/reset seemed fragile and managing it like a standard
dynamically-scoped var seems both safer (and more efficient since we
don't need readevalloop to constantly re-set it).
(readchar): Assert that `infile` is set if using a function the depends on it.
(readbyte_from_file): Assert that `infile` is set.
(close_infile_unwind): Reset `infile` to its previous value rather than
to NULL.
(Fload): Remember the previous value of `infile` before chaning it.
(readevalloop): Don't set `infile` any more.
Paul Eggert [Wed, 31 Jul 2019 13:56:14 +0000 (06:56 -0700)]
Clarify (lognot bignum)
* doc/lispref/numbers.texi (Bitwise Operations):
Say that (= (lognot n) (- -1 n)).
Michael Albinus [Wed, 31 Jul 2019 12:54:08 +0000 (14:54 +0200)]
Fix an error in tramp-sh-inotifywait-process-filter
* lisp/net/tramp-sh.el (tramp-sh-inotifywait-process-filter):
Add default FILE to returned event, if inotifywait doesn't tell us.
Noam Postavsky [Wed, 31 Jul 2019 12:33:28 +0000 (08:33 -0400)]
Remove no-longer relevant xref
* doc/lispref/positions.texi (List Motion): Remove xref, the text it
references was removed in 2018-02-15 "Document
open-paren-in-column-0-is-defun-start being of less importance".
Glenn Morris [Wed, 31 Jul 2019 04:42:34 +0000 (21:42 -0700)]
Merge from origin/emacs-26
8fbe462 (origin/emacs-26) ; * doc/lispref/positions.texi (List Motion...
1d9efc0 Add index for "\( in strings" (Bug#25195)
304e96f Fix doc-string of 'fit-window-to-buffer' (Bug#36848)
d4c4987 Update view-mode docstring
d6ca1fc ; * lisp/term.el: Add missing / to esc seq commentary.
b3e2073 Fix subproc listening when setting filter to non-t (Bug#36591)
f671950 * etc/NEWS.25: Belatedly announce rcirc-reconnect-delay.
7f42277 Mention term.el's \032 dir tracking in commentary (Bug#19524)
16a529e Remove upload functionality of package-x from the elisp manual
78e6c2a * etc/AUTHORS: Update.
086a56e Clarify Gravatar docs
0592467 * doc/lispref/display.texi (Defining Faces): Say a face can't...
# Conflicts:
# doc/emacs/programs.texi
# etc/AUTHORS
# lisp/term.el
Noam Postavsky [Wed, 31 Jul 2019 01:13:04 +0000 (21:13 -0400)]
* lisp/emacs-lisp/let-alist.el: Bump version to 1.0.6 (Bug#23244).
Stefan Monnier [Tue, 30 Jul 2019 20:37:01 +0000 (16:37 -0400)]
* lisp/gnus/message.el: Reduce redundancy with send-mail-function
(message-send-mail-function) <function>: Remove `local-library` tests
for libs distributed with Emacs.
(message-use-send-mail-function): New function.
(message-default-send-mail-function): Default to it, and remove cases
already handled by it.
(message--default-send-mail-function): New function.
(message-send-mail-function) <variable>: Use it as new default.
(message-sendmail-f-is-evil): Obey mail-specify-envelope-from if available.
(message-check, message-with-reply-buffer): Use `declare`.
(message-smtpmail-send-it): smtpmail accepts mail-header-separator,
so simplify and declare obsolete.
(message-send-mail-with-mailclient): Declare obsolete.
(message-check-news-body-syntax): Don't presume that the checksum is
a fixnum.
Juri Linkov [Tue, 30 Jul 2019 20:35:42 +0000 (23:35 +0300)]
* lisp/bindings.el (mode-line-defining-kbd-macro): New defvar.
(minor-mode-alist): Use it for `defining-kbd-macro'. (Bug#36564)
Stefan Monnier [Tue, 30 Jul 2019 20:14:10 +0000 (16:14 -0400)]
* lisp/mail/sendmail.el (sendmail-send-it): Add FIXMEs.
Remove redundant :groups in the file, as well.
Stephen Leake [Tue, 30 Jul 2019 18:03:15 +0000 (11:03 -0700)]
Stephen Leake [Tue, 30 Jul 2019 18:02:03 +0000 (11:02 -0700)]
Improve doc strings for some -search-path variables
* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-search-path):
Improve doc string.
* lisp/progmodes/compile.el (compilation-search-path): Improve doc
string.
* lisp/progmodes/grep.el (grep-search-path): Improve doc string.
Eli Zaretskii [Tue, 30 Jul 2019 14:50:32 +0000 (17:50 +0300)]
; * doc/lispref/positions.texi (List Motion): Fix last change.
Lars Ingebrigtsen [Tue, 30 Jul 2019 14:07:38 +0000 (16:07 +0200)]
Make `C-u RET' on URLs in Gnus buffers use the secondary browser
* lisp/gnus/gnus-art.el (gnus-button-alist): Make `C-u RET' on
URLs use the secondary browse-url browser.
Lars Ingebrigtsen [Tue, 30 Jul 2019 14:06:51 +0000 (16:06 +0200)]
Tweak `browse-url-add-buttons' for better button.el comp
* lisp/net/browse-url.el (browse-url-add-buttons): Make browse-url
buttons be understood by `forward-button' and the like.
Lars Ingebrigtsen [Tue, 30 Jul 2019 14:06:00 +0000 (16:06 +0200)]
Add a new conveniency function to browse-url
* lisp/net/browse-url.el (browse-url-button-open-url): Add a new
conveniency function.
Dmitry Gutov [Tue, 30 Jul 2019 13:59:32 +0000 (16:59 +0300)]
Support filename matches in etags xref backend
* lisp/progmodes/etags.el (etags--xref-find-definitions):
Support filename matches (bug#32510).
Dmitry Gutov [Tue, 30 Jul 2019 13:56:43 +0000 (16:56 +0300)]
; Re-enable all Flymake tests on Hydra
To see if the recent improvements fixed something
Dmitry Gutov [Tue, 30 Jul 2019 13:55:33 +0000 (16:55 +0300)]
Guard against flymake-no-changes-timeout being nil
* test/lisp/progmodes/flymake-tests.el
(flymake-tests--wait-for-backends): Guard against
flymake-no-changes-timeout being nil (in personal configurations)
to help when running tests interactively.
Lars Ingebrigtsen [Tue, 30 Jul 2019 13:36:03 +0000 (15:36 +0200)]
Call out the Gnus widget->button makeover in NEWS
Lars Ingebrigtsen [Tue, 30 Jul 2019 13:24:55 +0000 (15:24 +0200)]
Convert Emacs article buffers from widget.el to button.el
* lisp/gnus/gnus-art.el (gnus-mime-button-map)
(gnus-url-button-commands, gnus-insert-mime-button)
(gnus-mime-display-alternative)
(gnus-article-extend-url-button, gnus-article-add-button)
(gnus-insert-prev-page-button, gnus-insert-next-page-button)
(gnus-mime-security-button-map)
(gnus-insert-mime-security-button): Ditto.
* lisp/gnus/gnus-html.el (gnus-html-displayed-image-map)
(gnus-html-wash-images, gnus-html-put-image): Ditto.
* lisp/gnus/gnus-icalendar.el (gnus-icalendar-insert-button): Ditto.
* lisp/gnus/gnus-sum.el (gnus-summary-widget-forward)
(gnus-summary-button-forward, gnus-summary-widget-backward)
(gnus-summary-button-backward, gnus-collect-urls-primary-text)
(gnus-collect-urls, gnus-summary-browse-url): Stop using widgets
and star using button.el buttons instead.
* lisp/gnus/mm-decode.el (mm-shr, mm-handle-filename): Don't
convert shr buttons into widgets.
Lars Ingebrigtsen [Tue, 30 Jul 2019 13:23:22 +0000 (15:23 +0200)]
Mark shr buttons as button.el buffers
* lisp/net/shr.el (shr-urlify): Mark buttons as button.el buffers
for easier reuse in buttonified buffers.
Lars Ingebrigtsen [Tue, 30 Jul 2019 13:22:01 +0000 (15:22 +0200)]
Convert ` to ' in two recent NEWS entries
Lars Ingebrigtsen [Tue, 30 Jul 2019 13:21:29 +0000 (15:21 +0200)]
Extend button.el to take callback data
* doc/lispref/display.texi (Button Buffer Commands)
(Button Buffer Commands): Document this.
* lisp/button.el (backward-button, forward-button): Accept a
NO-ERROR parameter.
(button-activate): Make it possible to have specific data in the
callback action.
Noam Postavsky [Sun, 28 Jul 2019 16:15:33 +0000 (12:15 -0400)]
Add index for "\( in strings" (Bug#25195)
* doc/emacs/programs.texi (Left Margin Paren): Add index for "\( in
strings".
* doc/lispref/positions.texi (List Motion): Add index, and cross
reference.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:34:53 +0000 (13:34 +0200)]
Re-fix dired-pop-to-buffer obsoletion reference
* lisp/dired.el (dired-pop-to-buffer): Re-fix obsoletion reference
(bug#26243).
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:18:36 +0000 (13:18 +0200)]
Revert "Make `ispell-change-dictionary' only list installed dictionaries"
This reverts commit
848712b481e16f5c96fed6344c2f7d71a8d52ed1.
There could be dictionaries available (set via command-line options for the
speller, for instance) that would not be returned.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:11:38 +0000 (13:11 +0200)]
Use decoded time accessors in ediff-mult
* lisp/vc/ediff-mult.el (ediff-format-date): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:11:14 +0000 (13:11 +0200)]
Use decoded time accessors in pop3
* lisp/net/pop3.el (pop3-make-date): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:10:42 +0000 (13:10 +0200)]
Use decoded time accessors in esh-util
* lisp/eshell/esh-util.el (eshell-parse-ange-ls): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:10:03 +0000 (13:10 +0200)]
Use decoded time accessors in in em-ls
* lisp/eshell/em-ls.el (eshell-ls-file): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:08:49 +0000 (13:08 +0200)]
Use decoded time accessors in timer
* lisp/emacs-lisp/timer.el (run-at-time): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:08:21 +0000 (13:08 +0200)]
Use decoded time accessors in timeclock
* lisp/calendar/timeclock.el (timeclock-day-base): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:07:49 +0000 (13:07 +0200)]
Use decoded time accessors in time-date
* lisp/calendar/time-date.el (time-to-days): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:07:17 +0000 (13:07 +0200)]
Use decoded time accessors in appt
* lisp/calendar/appt.el (appt-check, appt-make-list): Use decoded
time accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:06:35 +0000 (13:06 +0200)]
Fix syntax error in previus calc-forms change
* lisp/calc/calc-forms.el (calc-time): Fix previous decoded time
change.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:06:06 +0000 (13:06 +0200)]
Use decoded time accessors in calendar
* lisp/calendar/icalendar.el (icalendar--add-decoded-times)
(icalendar--convert-sexp-to-ical):
* lisp/calendar/calendar.el (calendar-current-date):
* lisp/calendar/cal-dst.el (calendar-dst-find-data)
(calendar-dst-find-startend): Use decoded time accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:05:17 +0000 (13:05 +0200)]
Use decoded time accessors in Gnus
* lisp/gnus/nnimap.el (nnimap-find-expired-articles):
* lisp/gnus/nndiary.el (nndiary-compute-reminders)
(nndiary-last-occurrence, nndiary-next-occurrence):
* lisp/gnus/message.el (message-make-expires-date):
* lisp/gnus/gnus-util.el (gnus-seconds-today)
(gnus-seconds-month, gnus-seconds-year):
* lisp/gnus/gnus-demon.el (gnus-demon-time-to-step):
* lisp/gnus/gnus-art.el (article-make-date-line): Use decoded time
accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:03:22 +0000 (13:03 +0200)]
Use decoded time accessors in calc
* lisp/calc/calc-forms.el (calc-time, math-this-year)
(calcFunc-now): Use decoded time accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 11:02:41 +0000 (13:02 +0200)]
Use decoded time accessors in proced
* lisp/proced.el (proced-format-start): Use decoded time accessors.
Lars Ingebrigtsen [Tue, 30 Jul 2019 10:09:12 +0000 (12:09 +0200)]
Make description of text properties on the form `(string ...)' work
* lisp/descr-text.el (describe-property-list): Don't special-case
for symbols that have widget properties here (bug#22957). It's
not documented that this function should do that, and looking at
the code, it doesn't seem like this function is actually used for
doing that, either. This makes describing some text properties
that are on the form `(string ...)' work.
Lars Ingebrigtsen [Tue, 30 Jul 2019 10:04:21 +0000 (12:04 +0200)]
Use the elisp xref backend in profiler buffers
* lisp/profiler.el (profiler--xref-backend): New function (bug#23455).
(profiler-report-mode): Use it to use the elisp xref handler when
hitting `M-.' in profiler buffers.
Lars Ingebrigtsen [Tue, 30 Jul 2019 09:56:03 +0000 (11:56 +0200)]
Adjust time-date tests to tweaked format
Martin Rudalics [Tue, 30 Jul 2019 07:23:22 +0000 (09:23 +0200)]
Fix doc-string of 'fit-window-to-buffer' (Bug#36848)
* lisp/window.el (fit-window-to-buffer): Fix doc-string.
Suggested by Drew Adams <drew.adams@oracle.com>
Juri Linkov [Mon, 29 Jul 2019 22:46:15 +0000 (01:46 +0300)]
Highlight keyboard macro recording mode with read color in the mode-line
* lisp/bindings.el (minor-mode-alist): Propertize " Def"
with 'error' face for defining-kbd-macro. (Bug#36564)
Stefan Monnier [Mon, 29 Jul 2019 18:59:26 +0000 (14:59 -0400)]
* lisp/progmodes/vhdl-mode.el: Use cl-lib when available
(vhdl--pushnew): New macro. Use it instead of `pushnew`.
(emacs-major-version): Don't bother checking (featurep 'xemacs)
since that is always (< emacs-major-version 25) as well.
Juri Linkov [Mon, 29 Jul 2019 18:18:34 +0000 (21:18 +0300)]
* lisp/info.el (Info-toc-insert): Suppress same section names as node names.
Add indentation to section lines. (Bug#23142)
Stefan Monnier [Mon, 29 Jul 2019 15:57:49 +0000 (11:57 -0400)]
* lisp/simple.el (decoded-time): Use `cl-defstruct`
Stefan Monnier [Mon, 29 Jul 2019 15:56:11 +0000 (11:56 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add slot option :documentation
Use it to improve the docstring of the accessor functions.
* doc/misc/cl.texi: Rename menu entry to "CL-Lib".
(Structures): Add ':documentation' and mention ':type' as well,
which we don't completely ignore any more.
Lars Ingebrigtsen [Mon, 29 Jul 2019 13:45:48 +0000 (15:45 +0200)]
Tweak how mm-display-external handles windows
* lisp/gnus/mm-decode.el (mm-display-external): Don't delete other
buffers when displaying parts (bug#22861) because that should be
up to the user, probably.
Lars Ingebrigtsen [Mon, 29 Jul 2019 12:46:37 +0000 (14:46 +0200)]
Add further documentation about semicolon use
* doc/lispref/tips.texi (Comment Tips): Document the sub-heading
convention (bug#23060) as explained by Stefan on StackExchange.
Lars Ingebrigtsen [Mon, 29 Jul 2019 12:22:31 +0000 (14:22 +0200)]
Add an ISO 8601 parsing library
* doc/lispref/os.texi (Time Parsing): Document it.
* lisp/calendar/iso8601.el: New file.
* test/lisp/calendar/iso8601-tests.el: Test ISO8601 parsing functions.
Lars Ingebrigtsen [Mon, 29 Jul 2019 12:15:03 +0000 (14:15 +0200)]
Add support for dealing with decoded time structures
* doc/lispref/os.texi (Time Conversion): Document the new
functions that work on decoded time.
(Time Calculations): Document new date/time functions.
* lisp/simple.el (decoded-time-second, decoded-time-minute)
(decoded-time-hour, decoded-time-day, decoded-time-month)
(decoded-time-year, decoded-time-weekday, decoded-time-dst)
(decoded-time-zone): New accessor functions for decoded time values.
* lisp/calendar/time-date.el (date-days-in-month)
(date-ordinal-to-time): New functions.
(decoded-time--alter-month, decoded-time--alter-day)
(decoded-time--alter-second, make-decoded-time): New functions
added to manipulate decoded time structures.
* src/timefns.c (Fdecode_time): Mention the new accessors.
* test/lisp/calendar/time-date-tests.el: New file to test the
decoded time functions and the other new functions.
Lars Ingebrigtsen [Mon, 29 Jul 2019 12:03:37 +0000 (14:03 +0200)]
Fix compilation warning in mh-*.el
* lisp/mh-e/mh-speed.el (mh-speed-parse-flists-output):
* lisp/mh-e/mh-search.el (mh-index-parse-search-regexp): Avoid
warning about `values-list' by using `cl-values-list' insead.
Lars Ingebrigtsen [Sun, 28 Jul 2019 22:41:56 +0000 (00:41 +0200)]
Avoid error when killing rcirc buffer
* lisp/net/rcirc.el (rcirc-kill-buffer-hook): Delete the process
in the buffer when killing server buffers to avoid triggering
errors from the sentinel (bug#23168).
Juri Linkov [Sun, 28 Jul 2019 22:55:34 +0000 (01:55 +0300)]
* lisp/char-fold.el: Rename char-fold-make-table to char-fold--make-table.
Juri Linkov [Sun, 28 Jul 2019 22:45:36 +0000 (01:45 +0300)]
Move some uncontroversial char-folding pairs from test data to default values
* lisp/char-fold.el (char-fold--default-include)
(char-fold--default-exclude): Add some default values.
* test/lisp/char-fold-tests.el (char-fold--test-without-customization)
(char-fold--test-with-customization): Move some test data to
default values. Add more data for tests to pass. (Bug#35689)
Lars Ingebrigtsen [Sun, 28 Jul 2019 22:07:34 +0000 (00:07 +0200)]
Rename the new `browse-url-external-browser' variable
* lisp/net/shr.el (shr-external-browser, shr-browse-url):
* lisp/net/eww.el (eww-browse-with-external-browser)
(eww-follow-link):
* lisp/net/browse-url.el
(browse-url-secondary-browser-function)
(browse-url-button-open):
* lisp/gnus/gnus-sum.el (gnus-summary-browse-url): Rename from
`browse-url-external-browser' to
`browse-url-secondary-browser-function'.
Lars Ingebrigtsen [Sun, 28 Jul 2019 21:28:18 +0000 (23:28 +0200)]
Make let-alist work with vectors
* lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search):
Descend into vectors, too, looking for dotted variables (bug#23244).
Test case:
(let-alist '((a . 1) (b . 2))
`[,(+ .a) ,(+ .a .b .b)])
Lars Ingebrigtsen [Sun, 28 Jul 2019 20:48:18 +0000 (22:48 +0200)]
Make the image keymaps not extend after the image
* lisp/image.el (insert-image): Make all the properties
rear-nonsticky. Before this change, the keymap would extend after
the image.
Lars Ingebrigtsen [Sun, 28 Jul 2019 20:14:30 +0000 (22:14 +0200)]
Fix when calling prettify-symbols-mode more than once
* lisp/progmodes/prog-mode.el (prettify-symbols-mode): Allow
calling this mode several times without the earlier symbol alist
shadowing the newer (bug#23255).
Lars Ingebrigtsen [Sun, 28 Jul 2019 15:31:56 +0000 (17:31 +0200)]
Abbreviate directory names the same way as file names in C-x C-b
* lisp/buff-menu.el (Buffer-menu--pretty-file-name): Abbreviate
directory file names, too (bug#23355).
Andreas Schwab [Sun, 28 Jul 2019 15:43:34 +0000 (17:43 +0200)]
* admin/notes/git-workflow: Replace git-new-workdir with git
worktree and remove draft marker.
Lars Ingebrigtsen [Sun, 28 Jul 2019 15:22:16 +0000 (17:22 +0200)]
Tweak tango-dark-theme
* etc/themes/tango-dark-theme.el: Add a lighter background color
to `header-line' (bug#23359).
Lars Ingebrigtsen [Sun, 28 Jul 2019 14:48:15 +0000 (16:48 +0200)]
Scale images in iimage-mode
* lisp/iimage.el (iimage-mode-buffer): Scale images down to the
width/height of the buffer (bug#23434). Also add `image-map' to
the images so that they can be further scaled.
Vincent Belaïche [Sun, 28 Jul 2019 14:46:10 +0000 (16:46 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Vincent Belaïche [Sun, 28 Jul 2019 14:45:22 +0000 (16:45 +0200)]
Make atomic cell update in data area.
* lisp/ses.el (ses-write-cells): Set inhibit-quit to t during the data
area write.
Eli Zaretskii [Sun, 28 Jul 2019 14:31:17 +0000 (17:31 +0300)]
; * lisp/emacs-lisp/derived.el (define-derived-mode): Doc fix.
Lars Ingebrigtsen [Sun, 28 Jul 2019 14:01:45 +0000 (16:01 +0200)]
Make URLs in package descriptions into links
* lisp/emacs-lisp/package.el (describe-package-1): Make the URLs
in package descriptions into links (bug#23480).
Lars Ingebrigtsen [Sun, 28 Jul 2019 13:55:31 +0000 (15:55 +0200)]
Enable browse-url to buttonize buffers
This patch also moves the internal/external browser logic from
shr to browse-url, where it belongs more naturally.
* doc/misc/eww.texi (Basics): Adjust to browse-url-external-browser.
* doc/misc/gnus.texi (Article Commands): Ditto.
* lisp/gnus/gnus-art.el (gnus-button-url-regexp): Default to
`browse-url-button-regexp', which has taken over the definition
previously enjoyed by this variable.
* lisp/gnus/gnus-sum.el (gnus-summary-browse-url): Adjust usage.
* lisp/net/browse-url.el (browse-url--browser-defcustom-type): New
internal variable...
(browse-url-browser-function, browse-url-external-browser): Used
by these two; the latter of which is a new variable.
(browse-url-botton-regexp): New variable.
(browse-url-button-map): New keymap.
(browse-url-button): New face.
(browse-url-add-buttons): New function to add clickable browse-url
buttons to almost any buffer.
(browse-url-button-open): New command.
(browse-url-button-copy): New command.
* lisp/net/eww.el (eww-browse-with-external-browser)
(eww-follow-link): Adjust usage.
* lisp/net/shr.el (shr-external-browser): Make an obsolete alias
of `browse-url-external-browser'.
(shr-browse-url): Adjust usage.
Alan Mackenzie [Sun, 28 Jul 2019 13:30:38 +0000 (13:30 +0000)]
CC Mode. Fix (c-beginning-of-defun -1) getting stuck with structs.
In particular, with an initialization such as struct foo {..} bar = {...};
* lisp/progmodes/cc-cmds.el (c-forward-to-nth-EOF-{): Rename to
c-forward-to-nth-EOF-\;-or-}, and when the starting (or ending) position is in
the "variable" part of a struct/class/union/enum/etc., move to after the
terminating semicolon. Adjust the counting such that N only gets decremented
on a successful movement over {..}.
(c-beginning-of-defun, c-end-of-defun): Rename the calls to
c-forward-to-nth-EOF-}, as above.
Michael Albinus [Sun, 28 Jul 2019 12:29:15 +0000 (14:29 +0200)]
; Make etc/NEWS consistent
Lars Ingebrigtsen [Sun, 28 Jul 2019 12:14:46 +0000 (14:14 +0200)]
Make cl-values-list signal an error if its argument isn't a list
* lisp/emacs-lisp/cl-lib.el (cl-values-list): Signal an error if
LIST isn't a list (bug#23597).
Lars Ingebrigtsen [Sun, 28 Jul 2019 11:54:44 +0000 (13:54 +0200)]
Have emacsbug only warn the user when sending to the bug address
* lisp/mail/emacsbug.el (report-emacs-bug-hook): Only ask for
confirmation if we're really sending the bug report to the bug
address. If the user is sending it somewhere else (to themselves,
for instance), the warning is misleading.
Lars Ingebrigtsen [Sun, 28 Jul 2019 11:50:36 +0000 (13:50 +0200)]
Allow the user to send a bug report after initially saying "no"
* lisp/mail/emacsbug.el (report-emacs-bug-hook): Don't remove the
address in the To: header (or the hook) after the user has said
"no" (bug#23799). This made it impossible for the user to do
touch-ups and then resent the bug report.
Lars Ingebrigtsen [Sun, 28 Jul 2019 10:49:30 +0000 (12:49 +0200)]
Always set the state of the "Show hidden files" gtk button
* src/gtkutil.c (xg_get_file_with_chooser): Always set the state
of the "Show hidden files" button (bug#23977). If not, the
visible state and the actual state get out of sync.
Lars Ingebrigtsen [Sun, 28 Jul 2019 10:26:01 +0000 (12:26 +0200)]
Make `ispell-change-dictionary' only list installed dictionaries
* lisp/textmodes/ispell.el (ispell-find-aspell-dictionaries): If
the backend (i.e., aspell/hunspell) provided a list of languages,
don't add the base list (bug#24050).
(ispell-set-spellchecker-params): Ditto.
Lars Ingebrigtsen [Sun, 28 Jul 2019 09:48:32 +0000 (11:48 +0200)]
Clean up conf-mode-syntax-table slightly
* lisp/textmodes/conf-mode.el (conf-mode-syntax-table): Remove
superfluous backslash in ?\'.
Lars Ingebrigtsen [Sun, 28 Jul 2019 10:00:24 +0000 (12:00 +0200)]
Mark block/char devices the same as sockets in dired
* lisp/dired.el (dired-re-socket): Also mark block and char
devices with the socket face (bug#24547).
Lars Ingebrigtsen [Sun, 28 Jul 2019 09:40:30 +0000 (11:40 +0200)]
`unknown' test case now works
Lars Ingebrigtsen [Sun, 28 Jul 2019 09:39:22 +0000 (11:39 +0200)]
Fix testcover.el usage of edebug.el symbols
* lisp/emacs-lisp/testcover.el (testcover-before)
(testcover-after, testcover-mark)
(testcover-analyze-coverage-edebug-after): Adjust usage of
`unknown' to `edebug-unknown' in testcover.el in addition to
edebug.el (bug#25471).
Stefan Monnier [Sat, 27 Jul 2019 21:53:46 +0000 (17:53 -0400)]
* lisp/emacs-lisp/autoload.el: Make progress info more informative.
(update-directory-autoloads): Include the name of the target file.
Stefan Monnier [Sat, 27 Jul 2019 21:28:10 +0000 (17:28 -0400)]
* lisp/emacs-lisp/bytecomp.el (byte-compile-out-toplevel): Fix bug#34757
This fix was provided by Pip Cet <pipcet@gmail.com>. It tightens the
code that tries to recognize a bytecode sequence as being a simple
function call (to then decompile it), which occasionally misfired.
I added some minor changes found while investigating this issue.
(byte-compile): Handle corner case where byte-compile-top-level returns
a non-self-evaluating expression.
(byte-compile-out-toplevel): Remove support for `progn` and `t` values
of output-type which aren't used anywhere.
Alan Third [Tue, 16 Jul 2019 20:32:23 +0000 (21:32 +0100)]
Fix stretch glyphs overlap with line above (bug#36633)
* src/nsterm.m (ns_dumpglyphs_stretch): Move overwriting of the
clipping rectangle to after performing clipping.
Paul Eggert [Sat, 27 Jul 2019 17:24:19 +0000 (10:24 -0700)]
Fix arithmetic overflow in GC consing count
* src/alloc.c (allow_garbage_collection):
Redo expression to avoid signed arithmetic overflow
in an intermediate expression when CONSING is negative.
Alan Mackenzie [Sat, 27 Jul 2019 16:28:48 +0000 (16:28 +0000)]
Java Mode: Fix handling of nested generics ending in >>>.
This fixes bug #24671.
* lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): remove,
transforming into ...
(c-multichar->-op-not->>->>>-regexp) New lang const/var.
* lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): use the new
c-multichar->-op-not->>->>>-regexp in place of the old
c-multichar->-op-not->>-regexp.
Eric Abrahamsen [Sat, 27 Jul 2019 16:11:04 +0000 (09:11 -0700)]
Adjust location of Gnus group split setup process
Updating group splits requires the gnus-newsrc-hashtb to be
initialized. Previously this failed silently, now it errors.
* lisp/gnus/gnus-mlspl.el (gnus-group-split-setup): Don't call the
update when loading the user's init file, that's too early. Use
appropriate hooks depending on AUTO-UPDATE.
* doc/misc/gnus.texi (Group Mail Splitting): Change mention in docs.
Lars Ingebrigtsen [Sat, 27 Jul 2019 14:55:30 +0000 (16:55 +0200)]
Touch of latin-ltx input method for long arrows
* lisp/leim/quail/latin-ltx.el: Map all the \\long.*arrow inputs
to the long characters instead of the normal ones (i.e., LONG
RIGHTWARDS ARROW instead of RIGHTWARDS ARROW) (bug#24302).
Eli Zaretskii [Sat, 27 Jul 2019 14:52:47 +0000 (17:52 +0300)]
Fix documentation of 'redisplay-highlight-region-function'
* lisp/simple.el (redisplay-highlight-region-function): Fix
last change. (Bug#24701)
Lars Ingebrigtsen [Sat, 27 Jul 2019 14:50:25 +0000 (16:50 +0200)]
Tweak font-locking in conf-mode for "#foo { bar" lines
* lisp/textmodes/conf-mode.el (conf-font-lock-keywords): Don't
font-lock comments as keywords (bug#24355).
Lars Ingebrigtsen [Sat, 27 Jul 2019 14:25:39 +0000 (16:25 +0200)]
Make dired fontify pipes and sockets
* lisp/dired.el (dired-socket): New face for pipes and sockets
(bug#24547).
(dired-re-socket): New regexp to match them.
(dired-font-lock-keywords): Use them.
Lars Ingebrigtsen [Sat, 27 Jul 2019 13:59:32 +0000 (15:59 +0200)]
Add a doc string to redisplay-highlight-region-function
* lisp/simple.el (redisplay-highlight-region-function): Add a doc
string (bug#24701).
Stefan Monnier [Sat, 27 Jul 2019 13:57:18 +0000 (09:57 -0400)]
* lisp/progmodes/compile.el: Fix bug#36803.
Make sure all mode-lines are updated when compilation-in-progress
is changed since it's visible globally.
(compilation--update-in-progress-mode-line): New function.
(compilation-start, compilation-sentinel): Use it.
Alan Mackenzie [Sat, 27 Jul 2019 12:55:53 +0000 (12:55 +0000)]
CC Mode: Stop /**/ spuriously fontifying as a doc comment under gtkdoc
Also fix infinite loops by correcting two regexps.
* lisp/progmodes/cc-langs.el (c-last-c-comment-end-on-line-re)
(c-last-open-c-comment-start-on-line-re): Correct the regexp fragments
"\\*+[^/]" to "\\*+\\([^*/]\\|$\\)".
* lisp/progmodes/cc-fonts.el (gtkdoc-font-lock-keywords): Disallow /**/ for
doc comment fontification.
Lars Ingebrigtsen [Sat, 27 Jul 2019 12:38:40 +0000 (14:38 +0200)]
Doc fix for package-menu-filter
* lisp/emacs-lisp/package.el (package-menu-filter): Document the
use of arc:ARCHIVE and status:STATUS (bug#24883).