]> git.eshelyaron.com Git - emacs.git/log
emacs.git
5 years agoIssue a message on `C-x o' and there's no other window
Lars Ingebrigtsen [Sat, 17 Aug 2019 23:35:54 +0000 (16:35 -0700)]
Issue a message on `C-x o' and there's no other window

* lisp/window.el (other-window): Issue a message when the user
types `C-x o' and there's no other window to select (bug#10999).

5 years agoIssue a message on `C-x 1' when there's nothing to do
Lars Ingebrigtsen [Sat, 17 Aug 2019 23:31:55 +0000 (16:31 -0700)]
Issue a message on `C-x 1' when there's nothing to do

* lisp/window.el (delete-other-windows): Make `C-x 1' issue a
message when there's no other windows to delete (bug#10999).

5 years agoDoc clarification in two comment-* functions
Lars Ingebrigtsen [Sat, 17 Aug 2019 21:52:15 +0000 (14:52 -0700)]
Doc clarification in two comment-* functions

* lisp/newcomment.el (comment-padright, comment-padleft): Note
that `comment-normalize-vars' must be called first (bug#11944).

5 years agoAdd FIXMEs for subsecond support
Paul Eggert [Sat, 17 Aug 2019 22:39:18 +0000 (15:39 -0700)]
Add FIXMEs for subsecond support

This adds FIXMEs to areas where Lisp code should support
subsecond information in broken-down timestamps.
It also fixes some unnecessary truncation of timestamps, and
ports the code to a hypothetical future Emacs version where
(decode-time) returns subsecond timestamps by default.
* lisp/calc/calc-forms.el (calc-time, math-iso-dt-to-date)
(calcFunc-now):
* lisp/calendar/icalendar.el (icalendar--add-decoded-times):
* lisp/calendar/iso8601.el (iso8601-parse-interval):
Truncate seconds to an integer, and add a FIXME about
subseconds support.
* lisp/calendar/icalendar.el (icalendar--decode-isodatetime)
(icalendar--decode-isoduration):
Add a FIXME about subseconds support.
* lisp/gnus/gnus-delay.el (gnus-delay-article):
Don’t truncate seconds to an integer, as there’s no need
to do that here.
* lisp/gnus/gnus-util.el (gnus-seconds-today)
(gnus-seconds-month, gnus-seconds-year):
* lisp/gnus/message.el (message-make-expires-date):
* lisp/org/org-timer.el (org-timer-show-remaining-time):
* lisp/vc/ediff-mult.el (ediff-format-date):
Truncate seconds to an integer, as that’s what’s wanted here.
* lisp/midnight.el (midnight-next):
Ceiling seconds to an integer, as that’s what wanted here.

5 years ago* lisp/frameset.el (frameset-restore): Make sure last-focus frame has focus.
Juri Linkov [Sat, 17 Aug 2019 22:40:32 +0000 (01:40 +0300)]
* lisp/frameset.el (frameset-restore): Make sure last-focus frame has focus.

Call select-frame-set-input-focus to restore focus on the frame
that had last-focus-update frame parameter before saving frameset.
(Bug#36894)

5 years agoDoc clarification for call-interactively
Lars Ingebrigtsen [Sat, 17 Aug 2019 21:17:47 +0000 (14:17 -0700)]
Doc clarification for call-interactively

* src/callint.c (Fcall_interactively): Be explicit about what we
mean by "inquire" in the doc string (bug#15653).

5 years agoPort test harness to Solaris 10
Paul Eggert [Sat, 17 Aug 2019 16:15:32 +0000 (09:15 -0700)]
Port test harness to Solaris 10

* test/Makefile.in (ELFILES): Port to Solaris 10, where
‘find’ does not support ‘-path’.

5 years agoUpdate from Gnulib
Paul Eggert [Sat, 17 Aug 2019 10:27:58 +0000 (03:27 -0700)]
Update from Gnulib

This incorporates:
2019-08-17 intprops: port to Oracle Developer Studio 12.6
2019-08-14 intprops: support uchar, ushort _WRAPV dests
* lib/intprops.h: Copy from Gnulib.

5 years agoImprove support of the ancient Egyptian script
Eli Zaretskii [Sat, 17 Aug 2019 10:02:29 +0000 (13:02 +0300)]
Improve support of the ancient Egyptian script

* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Add Egyptian.  (Bug#15420)

5 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Sat, 17 Aug 2019 09:25:32 +0000 (12:25 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

5 years agoHave time-add etc. respect CURRENT_TIME_LIST too
Paul Eggert [Sat, 17 Aug 2019 09:21:25 +0000 (02:21 -0700)]
Have time-add etc. respect CURRENT_TIME_LIST too

* src/timefns.c (time_arith) [!CURRENT_TIME_LIST]:
Don’t generate a list, since CURRENT_TIME_LIST is false.

5 years agoFix a recent documentation change
Eli Zaretskii [Sat, 17 Aug 2019 06:28:52 +0000 (09:28 +0300)]
Fix a recent documentation change

* doc/emacs/windows.texi (Other Window): Add a cross-reference
to "Rebinding".  (Bug#12431)

5 years agoMore-compatible subsecond calendrical timestamps
Paul Eggert [Sat, 17 Aug 2019 05:09:04 +0000 (22:09 -0700)]
More-compatible subsecond calendrical timestamps

Instead of appending a subseconds member to the result of
‘decode-time’, this keeps the format unchanged unless you give
a new optional argument to ‘decode-time’.  Also, the augmented
format now puts the subsecond info in the SECONDS element, so
the total number of elements is unchanged; this is more
compatible with code that expects the traditional 9 elements,
such as ‘(pcase decoded-time (`(,SEC ,MIN ,HOUR ,DAY ,MON
,YEAR ,DOW ,DST ,ZONE) ...) ...)’.
* doc/lispref/os.texi, doc/misc/emacs-mime.texi, etc/NEWS:
* lisp/net/soap-client.el (soap-decode-date-time):
* lisp/simple.el (decoded-time):
Document the new behavior.
* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
* lisp/calendar/iso8601.el (iso8601-parse)
(iso8601-parse-time, iso8601-parse-duration)
(iso8601--decoded-time):
* lisp/calendar/parse-time.el (parse-time-string):
* lisp/calendar/time-date.el (decoded-time-add)
(decoded-time--alter-second):
* lisp/org/org.el (org-parse-time-string):
* lisp/simple.el (decoded-time):
* src/timefns.c (Fdecode_time, Fencode_time):
* test/lisp/calendar/icalendar-tests.el:
(icalendar--decode-isodatetime):
* test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years)
(test-iso8601-date-dates, test-iso8601-date-obsolete)
(test-iso8601-date-weeks, test-iso8601-date-ordinals)
(test-iso8601-time, test-iso8601-combined)
(test-iso8601-duration, test-iso8601-intervals)
(standard-test-dates, standard-test-time-of-day-fractions)
(standard-test-time-of-day-beginning-of-day)
(standard-test-time-of-day-utc)
(standard-test-time-of-day-zone)
(standard-test-date-and-time-of-day, standard-test-interval):
* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
* test/src/timefns-tests.el (format-time-string-with-zone)
(encode-time-dst-numeric-zone):
Revert recent changes that added a SUBSECS member to
calendrical timestamps, since that component is no longer
present (the info, if any, is now in the SECONDS member).
* lisp/calendar/time-date.el (decoded-time-add)
(decoded-time--alter-second):
Support fractional seconds in the new form.  Simplify.
* src/timefns.c (Fdecode_time): Support new arg FORM.
(Fencode_time): Support subsecond resolution.
* test/src/timefns-tests.el (format-time-string-with-zone)
(decode-then-encode-time): Test subsecond calendrical timestamps.

5 years agoBroaden format-seconds to Lisp timestamps
Paul Eggert [Sat, 17 Aug 2019 01:10:14 +0000 (18:10 -0700)]
Broaden format-seconds to Lisp timestamps

* lisp/calendar/time-date.el (format-seconds):
Accept any Lisp timestamp instead of insisting on a number.

5 years agoSubtracting “now” from “now” should yield zero
Paul Eggert [Sat, 17 Aug 2019 01:08:23 +0000 (18:08 -0700)]
Subtracting “now” from “now” should yield zero

* src/timefns.c (time_arith): Arrange for (time-subtract nil
nil) to yield 0, to be consistent with (time-equal-p nil nil).
* test/lisp/calendar/time-date-tests.el (test-time-since): New test.

5 years agoFix time-add rounding bug
Paul Eggert [Fri, 16 Aug 2019 23:25:02 +0000 (16:25 -0700)]
Fix time-add rounding bug

Without this fix, time arithmetic yielded results that were not
mathematically accurate, even though the exact results were
representable; for example, (time-add 0 1e-13) yielded a timestamp
equal to 0 instead of to 1e-13.
* lisp/timezone.el (timezone-time-from-absolute):
Let time-add do its thing rather than using floating point
internally, which has rounding errors.  We now have bignums and so
don’t need floating point to avoid overflow issues.
* src/timefns.c (timeform_sub_ps_p): New function.
(time_arith): If either argument is a float, represent the
result exactly instead of discarding sub-ps info.
* test/lisp/timezone-tests.el (timezone-tests-time-from-absolute):
Don’t assume (HI LO US PS) timestamp format.
* test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid):
Don’t assume that time-add discards sub-ns info.
* test/src/timefns-tests.el (time-rounding-tests):
Add regression test to detect time-add rounding bug.

5 years agoMention `next-multiframe-window' when talking about `other-window'
Lars Ingebrigtsen [Fri, 16 Aug 2019 22:30:40 +0000 (15:30 -0700)]
Mention `next-multiframe-window' when talking about `other-window'

* doc/emacs/windows.texi (Other Window): Mention
the `next-multiframe-window' command here (which is otherwise not
documented in the manual) (bug#12431).

5 years agoAdd missing skeleton entries in autotype.texi
Lars Ingebrigtsen [Fri, 16 Aug 2019 21:39:52 +0000 (14:39 -0700)]
Add missing skeleton entries in autotype.texi

* doc/misc/autotype.texi: Add missing entries found in the doc
string to `skeleton-insert' (bug#12563).

5 years agoMake checkdoc check cl-lib function docstrings
Alex Branham [Fri, 16 Aug 2019 21:00:31 +0000 (14:00 -0700)]
Make checkdoc check cl-lib function docstrings

* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
Remove calls to delete-region to avoid deleting final " (bug#26328).
* lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring)
(checkdoc-defun-info): Include cl-defun, cl-defgeneric,
cl-defmethod.
(checkdoc-this-string-valid-engine): Add cl-lib supported
keywords.
(checkdoc-defun-info): Ensure function parameters are a
"flat" list (bug#37034).

5 years agoAvoid deleting closing quotation mark in checkdoc
Alex Branham [Fri, 16 Aug 2019 20:55:27 +0000 (13:55 -0700)]
Avoid deleting closing quotation mark in checkdoc

* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
Remove calls to delete-region to avoid deleting final " (bug#26328).

5 years agoRevert "package.el: Allow Package-Requires to span multiple lines (Bug#36301)"
Thomas Fitzsimmons [Fri, 16 Aug 2019 16:17:40 +0000 (12:17 -0400)]
Revert "package.el: Allow Package-Requires to span multiple lines (Bug#36301)"

This reverts commit 19c1e4c81c7442dea48253e5961b6e54d78b6f0a.

This commit broke some package tests, reverting for now.

5 years agoMention that text properties are removed in substitute-command-keys
Lars Ingebrigtsen [Fri, 16 Aug 2019 07:04:13 +0000 (00:04 -0700)]
Mention that text properties are removed in substitute-command-keys

* src/doc.c (Fsubstitute_command_keys): Restore the bit in the doc
string that mentions that text properties is removed (bug#17052).

5 years agoAdd some examples in "Adding Generalized Variables"
Lars Ingebrigtsen [Fri, 16 Aug 2019 06:57:57 +0000 (23:57 -0700)]
Add some examples in "Adding Generalized Variables"

* doc/lispref/variables.texi (Adding Generalized Variables): Add
examples for `gv-define-expander' and `gv-letplace' (bug#13343).

5 years agopackage.el: Allow Package-Requires to span multiple lines (Bug#36301)
Thomas Fitzsimmons [Fri, 16 Aug 2019 03:57:55 +0000 (23:57 -0400)]
package.el: Allow Package-Requires to span multiple lines (Bug#36301)

* lisp/emacs-lisp/package.el (lm-header-multiline): Declare
function.
(package-buffer-info): Parse Package-Requires with
lm-header-multiline instead of lm-header.
(Bug#36301)

5 years agoDo not recreate full URL for proxied HTTPS requests (Bug#35969)
Thomas Fitzsimmons [Fri, 16 Aug 2019 03:12:50 +0000 (23:12 -0400)]
Do not recreate full URL for proxied HTTPS requests (Bug#35969)

* lisp/url/url-http.el (url-http-create-request): Do not recreate
full URL for proxied HTTPS requests.
(url-https-proxy-after-change-function): Do not bind
url-http-proxy to nil before calling url-http-create-request.
(Bug#35969)

5 years agoMake diary-european-date-forms elements mutually exclusive
Andreas Merziger [Fri, 16 Aug 2019 01:39:27 +0000 (18:39 -0700)]
Make diary-european-date-forms elements mutually exclusive

* lisp/calendar/calendar.el (diary-european-date-forms): Make the
elements mutually exclusive (bug#13536).

5 years agoFix up previous cl-def* changes in bovine
Lars Ingebrigtsen [Fri, 16 Aug 2019 01:10:22 +0000 (18:10 -0700)]
Fix up previous cl-def* changes in bovine

* lisp/cedet/semantic/bovine/el.el (lambda): cl-defun* doesn't
exist (bug#17005).
(lambda): Add cl-defstruct.
(semantic-up-context): Add cl- forms.

5 years agoReimplement the `fill-flowed' function to respect space stuffing
Lars Ingebrigtsen [Fri, 16 Aug 2019 01:00:08 +0000 (18:00 -0700)]
Reimplement the `fill-flowed' function to respect space stuffing

* lisp/mail/flow-fill.el (fill-flowed): Reimplement the function
to respect space-stuffing (bug#17190).

* test/lisp/mail/flow-fill-tests.el
(fill-flow-tests-fill-flowed-stuffed): New test.
(fill-flow-tests-fill-flowed-decode): Rename the test so that it
actually runs.

5 years agoFix eshell-mode-map initialization
Alex Branham [Wed, 26 Jun 2019 18:59:06 +0000 (13:59 -0500)]
Fix eshell-mode-map initialization

* lisp/eshell/esh-mode.el (eshell-mode-map, eshell-command-map): Set
up normal keymaps and prefix commands rather than re-initializing them
in each eshell buffer

* lisp/eshell/em-cmpl.el (eshell-cmpl-mode-map, eshell-cmpl-mode)
(eshell-cmpl-initialize):
* lisp/eshell/em-hist.el (eshell-hist-mode-map, eshell-hist-mode)
(eshell-hist-initialize):
* lisp/eshell/em-pred.el (eshell-pred-mode-map, eshell-pred-mode)
(eshell-pred-initialize):
* lisp/eshell/em-prompt.el (eshell-prompt-mode-map, eshell-prompt-mode)
(eshell-prompt-initialize):
* lisp/eshell/em-rebind.el (eshell-rebind-mode-map, eshell-rebind-mode)
(eshell-rebind-initialize):
* lisp/eshell/esh-arg.el (eshell-arg-mode-map, eshell-arg-mode)
(eshell-arg-initialize):
* lisp/eshell/esh-proc.el (eshell-proc-mode-map, eshell-proc-mode)
(eshell-proc-initialize):
* lisp/eshell/esh-var.el (eshell-var-mode-map, eshell-var-mode)
(eshell-var-initialize): Create a new minor mode with a keymap and
call it in the module initialization function.

bug#33808
bug#22792

5 years agoRename variables and functions with "auto-load" in their names
Lars Ingebrigtsen [Thu, 15 Aug 2019 23:02:20 +0000 (16:02 -0700)]
Rename variables and functions with "auto-load" in their names

* doc/emacs/building.texi (Lisp Libraries): Adjust documentation.

* lisp/help-fns.el (help--symbol-completion-table): Adjust usage.

* lisp/help-fns.el (help-enable-completion-autoload): Change name
from auto-load and declare an obsolete alias (bug#13418).

* lisp/help.el (help-enable-autoload): Ditto.

* lisp/progmodes/vhdl-mode.el: Ditto.
(vhdl-create-mode-menu, vhdl-mode): Adjust usage.
(vhdl-autoload-project): Rename from auto-load and declare an
obsolete alias.

5 years agoRemove mentions of XEmacs from the Gnus manual and faq
Lars Ingebrigtsen [Thu, 15 Aug 2019 22:27:01 +0000 (15:27 -0700)]
Remove mentions of XEmacs from the Gnus manual and faq

* doc/misc/gnus-faq.texi:
* doc/misc/gnus.texi: Remove references to XEmacs throughout.

5 years agoMention what effect nil has as the prompt for read-event/char/etc
Lars Ingebrigtsen [Thu, 15 Aug 2019 22:04:30 +0000 (15:04 -0700)]
Mention what effect nil has as the prompt for read-event/char/etc

* doc/lispref/commands.texi (Reading One Event): Mention that ""
has the same effect as nil as a prompt.

* src/lread.c (Fread_event, Fread_char_exclusive, Fread_char):
Mention what happens when PROMPT is nil/"" in the doc string
(bug#15012).

5 years agoetc/NEWS: Note that `list-processes' includes port numbers now.
Lars Ingebrigtsen [Thu, 15 Aug 2019 21:55:26 +0000 (14:55 -0700)]
etc/NEWS: Note that `list-processes' includes port numbers now.

5 years agoFix typeof portability issue with bitfields
Paul Eggert [Thu, 15 Aug 2019 17:51:03 +0000 (10:51 -0700)]
Fix typeof portability issue with bitfields

Problem reported by Glenn Morris in:
https://lists.gnu.org/r/emacs-devel/2019-08/msg00300.html
* src/lisp.h (lisp_h_make_fixnum): Use typeof (+(n)) instead
of typeof (n), so that it works with compilers that do
not allow typeof to be applied to a bitfield.

5 years agoFix rounding errors with float timestamps
Paul Eggert [Thu, 15 Aug 2019 17:40:11 +0000 (10:40 -0700)]
Fix rounding errors with float timestamps

When converting from float to (TICKS . HZ) form, do the
conversion exactly.  When converting from (TICKS . HZ) form to
float, round to even precisely.  This way, successfully
converting a float to (TICKS . HZ) and back yields a value
numerically equal to the original.
* src/timefns.c (flt_radix_power_size): New constant.
(flt_radix_power): New static var.
(decode_float_time): Convert the exact numeric value rather
than guessing TIMESPEC_HZ resolution.
(s_ns_to_double): Remove; no longer needed.
(frac_to_double): New function.
(decode_ticks_hz): It is now the caller’s responsibility to
pass a valid TICKS and HZ.  All callers changed.
Use frac_to_double to round (TICKS . HZ) precisely.
(decode_time_components): When decoding nil, use
decode_ticks_hz since it rounds precisely.
(syms_of_timefns): Initialize flt_radix_power.
* test/src/timefns-tests.el (float-time-precision): New test.

5 years agoGive auto-revert-test02-auto-revert-deleted-file a chance on hydra
Michael Albinus [Thu, 15 Aug 2019 14:40:53 +0000 (16:40 +0200)]
Give auto-revert-test02-auto-revert-deleted-file a chance on hydra

* test/lisp/autorevert-tests.el
(auto-revert-test02-auto-revert-deleted-file): Don't skip on hydra.

5 years agoImprove Tramp manual
Michael Albinus [Thu, 15 Aug 2019 12:35:02 +0000 (14:35 +0200)]
Improve Tramp manual

* doc/misc/tramp.texi (GVFS based methods): Explain using `ftp'
and `smb' methods.

5 years agoDebug out-of-range make_fixnum args
Paul Eggert [Thu, 15 Aug 2019 09:18:06 +0000 (02:18 -0700)]
Debug out-of-range make_fixnum args

With --enable-checking, make_fixnum (N) now checks that N is
in fixnum range.  Suggested by Pip Cet in:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00548.html
A new function make_ufixnum (N) is for the rare cases where N
is intended to be unsigned and is in the range 0..INTMASK.
* configure.ac (AC_C_TYPEOF): Add.
(HAVE_STATEMENT_EXPRESSIONS): Resurrect this macro.
* src/fns.c (Frandom, hashfn_eq, hashfn_equal, hashfn_user_defined):
* src/profiler.c (hashfn_profiler):
Use make_ufixnum rather than make_fixum, since the argument is
an unsigned integer in the range 0..INTMASK rather than a signed
integer in the range MOST_NEGATIVE_FIXNUM..MOST_POSITIVE_FIXNUM.
Typically this is for hashes.
* src/lisp.h (lisp_h_make_fixnum_wrap) [USE_LSB_TAG]:
Rename from lisp_h_make_fixnum.
(lisp_h_make_fixnum): Redefine in terms of lisp_h_make_fixnum_wrap.
Check for fixnum overflow on compilers like GCC that
have statement expressions and typeof.
(FIXNUM_OVERFLOW_P): Move up.
(make_fixnum): Check for fixnum overflow.
(make_ufixnum): New function, which checks that the arg
fits into 0..INTMASK range.

5 years agoFix some fixnum overflow problems in ccl.c
Paul Eggert [Thu, 15 Aug 2019 09:16:26 +0000 (02:16 -0700)]
Fix some fixnum overflow problems in ccl.c

* src/ccl.c (ccl_driver, Fccl_execute, Fccl_execute_on_string):
Don’t assume CCL registers fit into fixnums.

5 years agoPort mod-test-nanoseconds to 32-bit Emacs
Paul Eggert [Thu, 15 Aug 2019 09:06:04 +0000 (02:06 -0700)]
Port mod-test-nanoseconds to 32-bit Emacs

* test/src/emacs-module-tests.el (mod-test-nanoseconds):
Don’t assume -1000000000 is a fixnum.

5 years agoInclude port numbers in `M-x list-processes'
Lars Ingebrigtsen [Thu, 15 Aug 2019 07:16:02 +0000 (00:16 -0700)]
Include port numbers in `M-x list-processes'

* lisp/simple.el (list-processes--refresh): Include the port
numbers in the network connection list (bug#13604).

5 years agoAdd some cl- concept index entries
Lars Ingebrigtsen [Thu, 15 Aug 2019 07:05:33 +0000 (00:05 -0700)]
Add some cl- concept index entries

* doc/misc/cl.texi (Argument Lists): Add a couple of concept index
entried (bug#13606).

5 years agoClarify the doc string of complete-with-action
Lars Ingebrigtsen [Thu, 15 Aug 2019 05:43:24 +0000 (22:43 -0700)]
Clarify the doc string of complete-with-action

* lisp/minibuffer.el (complete-with-action): Doc string
clarification (bug#13993).

5 years agoClean up Gnus manual reference to XEmacs variables
Lars Ingebrigtsen [Thu, 15 Aug 2019 05:26:13 +0000 (22:26 -0700)]
Clean up Gnus manual reference to XEmacs variables

* doc/misc/gnus.texi (XVarious): Remove section about XEmacs
variables that have been removed.

5 years agoMinor Scroll Bars clarification
Lars Ingebrigtsen [Thu, 15 Aug 2019 05:07:10 +0000 (22:07 -0700)]
Minor Scroll Bars clarification

* doc/emacs/frames.texi (Scroll Bars): Clarify what we mean by
"customize" here (bug#14321).

5 years agoArrange custom-face-attributes closer to how heavy they are
Lars Ingebrigtsen [Thu, 15 Aug 2019 03:22:36 +0000 (20:22 -0700)]
Arrange custom-face-attributes closer to how heavy they are

* lisp/cus-face.el (custom-face-attributes): Arrange the weights
more in order of how heavy they are (bug#15526).

5 years agoUse gnus-summary-button-forward in gnus-summary-mode-map
Lars Ingebrigtsen [Thu, 15 Aug 2019 03:14:33 +0000 (20:14 -0700)]
Use gnus-summary-button-forward in gnus-summary-mode-map

* lisp/gnus/gnus-sum.el (gnus-summary-mode-map): Use
`gnus-summary-button-forward' instead of the obsolete
`gnus-summary-widget-forward'.

5 years agoRemove INT_ADD_WRAPV bug workarounds
Paul Eggert [Thu, 15 Aug 2019 01:24:02 +0000 (18:24 -0700)]
Remove INT_ADD_WRAPV bug workarounds

* src/alloc.c (free_cons):
* src/casefiddle.c (do_casify_multibyte_string):
* src/editfns.c (styled_format):
* src/image.c (png_load_body):
Remove recent workarounds for INT_ADD_WRAPV bugs since
the bugs have been fixed (Bug#37006).

5 years agoAdd C-b/f/p/n keystrokes in `M-x snake'
Lars Ingebrigtsen [Thu, 15 Aug 2019 01:15:22 +0000 (18:15 -0700)]
Add C-b/f/p/n keystrokes in `M-x snake'

* lisp/play/snake.el (snake-mode-map): Add the C-b/f/p/n in
addition to the cursor keys (bug#16720).

5 years agoUpdate from Gnulib
Paul Eggert [Thu, 15 Aug 2019 01:13:27 +0000 (18:13 -0700)]
Update from Gnulib

This incorporates:
2019-08-14 intprops: pacify picky GCC
2019-08-14 intprops: support unsigned *_WRAPV results
2019-08-12 verify: improve diagnostic quality in recent GCC
* lib/intprops.h, lib/verify.h: Copy from Gnulib.

5 years agoAdd cl-def* forms to bovine/el.el
Lars Ingebrigtsen [Thu, 15 Aug 2019 01:03:41 +0000 (18:03 -0700)]
Add cl-def* forms to bovine/el.el

* lisp/cedet/semantic/bovine/el.el (lambda): Add the cl-def*
variations to allow semantic to find the definitions (bug#17005).

5 years agoDon't alter function name face height in manoj-dark theme
Lars Ingebrigtsen [Thu, 15 Aug 2019 00:59:13 +0000 (17:59 -0700)]
Don't alter function name face height in manoj-dark theme

* etc/themes/manoj-dark-theme.el (manoj-dark): Don't alter the
height of function name faces, because this makes many tabulated
modes not longer line up (bug#17042).

5 years agoRespect the BUFFER parameter in `fill-flowed'
Lars Ingebrigtsen [Thu, 15 Aug 2019 00:16:37 +0000 (17:16 -0700)]
Respect the BUFFER parameter in `fill-flowed'

* lisp/mail/flow-fill.el (fill-flowed): `current-buffer' is always
non-nil, so respect the BUFFER parameter.  Also add a doc string.

5 years agoOutput the maintainer and author(s) in the package description buffer
Lars Ingebrigtsen [Wed, 14 Aug 2019 23:35:16 +0000 (16:35 -0700)]
Output the maintainer and author(s) in the package description buffer

* lisp/emacs-lisp/package.el (describe-package-1): Output
maintainer and author(s) (bug#17573).
(package--print-email-button): New function.

5 years ago; Fix typoes.
Juri Linkov [Wed, 14 Aug 2019 21:06:07 +0000 (00:06 +0300)]
; Fix typoes.

5 years agoFix fetching URLs with stuff that looks like HTTP headers
Eli Zaretskii [Wed, 14 Aug 2019 14:53:14 +0000 (17:53 +0300)]
Fix fetching URLs with stuff that looks like HTTP headers

* lisp/url/url-http.el (url-http-parse-headers): Narrow the
buffer to the headers at the beginning to make sure
url-handle-content-transfer-encoding uses the correct
headers.  (Bug#37023)

5 years agoDon’t increase consing_until_gc when out of memory
Paul Eggert [Tue, 13 Aug 2019 19:28:53 +0000 (12:28 -0700)]
Don’t increase consing_until_gc when out of memory

* src/alloc.c (memory_full): Don’t increase consing_until_gc.
Suggested by Eli Zaretskii (Bug#37006#46).

5 years agoLet consing_until_gc exceed EMACS_INT_MAX
Paul Eggert [Tue, 13 Aug 2019 19:20:40 +0000 (12:20 -0700)]
Let consing_until_gc exceed EMACS_INT_MAX

This builds on the previous patch.
* src/alloc.c (consing_until_gc): Now of type intmax_t,
since gc-cons-threshold can be up to INTMAX_MAX.  All uses changed.
* src/lisp.h (CONSING_CT_MAX, consing_ct): Remove.

5 years agoLet consing_until_gc exceed INTPTR_MAX
Paul Eggert [Tue, 13 Aug 2019 19:11:35 +0000 (12:11 -0700)]
Let consing_until_gc exceed INTPTR_MAX

Suggested by Eli Zaretskii (Bug#37006#46).
* src/alloc.c (consing_until_gc): Now of type consing_ct.
All uses changed, so gc-cons-threshold no longer saturates
against OBJECT_CT_MAX.
(object_ct): Move typedef here from lisp.h.
* src/lisp.h (consing_ct, CONSING_CT_MAX): New type and macro.
(OBJECT_CT_MAX): Remove.  Replace all uses with CONSING_CT_MAX.

5 years agoFix GC threshold typo
Paul Eggert [Tue, 13 Aug 2019 17:03:41 +0000 (10:03 -0700)]
Fix GC threshold typo

Problem reported by Eli Zaretskii (Bug#37006#25).
* src/alloc.c (garbage_collect_1): Fix typo in threshold calc.
Go back to dividing by 10 since the numerator’s a constant now.
Problem introduced in 2019-07-21T02:40:03Z!eggert@cs.ucla.edu.

5 years agoImprove documentation of 'diff-font-lock-prettify'
Eli Zaretskii [Tue, 13 Aug 2019 15:16:51 +0000 (18:16 +0300)]
Improve documentation of 'diff-font-lock-prettify'

* lisp/vc/diff-mode.el (diff-font-lock-prettify): Doc fix.

* etc/NEWS: Minor copyedits.

5 years agoFix initialization of user-defined fringe bitmaps in daemon mode
Eli Zaretskii [Tue, 13 Aug 2019 14:49:51 +0000 (17:49 +0300)]
Fix initialization of user-defined fringe bitmaps in daemon mode

* src/fringe.c (gui_init_fringe): Rename from w32_init_fringe
or x_cr_init_fringe, and make unconditionally compiled; all
callers changed.  Do nothing if the frame's
redisplay_interface doesn't implement the define_fringe_bitmap
method.  Set up any user-defined fringe bitmaps in addition to
the standard bitmaps.
Suggested by Liam Quinlan <liamkquinlan@gmail.com> in
https://lists.gnu.org/archive/html/emacs-devel/2019-08/msg00259.html.

(w32_reset_fringes) [HAVE_NTGUI]: Do nothing if the frame's
redisplay_interface doesn't implement the
destroy_fringe_bitmap method.

* src/w32fns.c (Fx_create_frame): Call gui_init_fringe when
the first GUI frame is created for this session.
* src/dispextern.h (w32_init_fringe): Rename to
gui_init_fringe and make unconditional.
(x_cr_init_fringe): Remove prototype.

5 years ago; Add commentary to recent changes
Eli Zaretskii [Mon, 12 Aug 2019 14:39:09 +0000 (17:39 +0300)]
; Add commentary to recent changes

* src/image.c (png_load_body):
* src/editfns.c (styled_format):
* src/casefiddle.c (do_casify_multibyte_string):
* src/alloc.c (free_cons): Comment why we use a signed
temporary integer variable.  (Bug#37006)

5 years ago* lisp/password-cache.el: adapt test to change in password-in-cache-p
Óscar Fuentes [Mon, 12 Aug 2019 14:22:34 +0000 (16:22 +0200)]
* lisp/password-cache.el: adapt test to change in password-in-cache-p

5 years agoQuote file names properly in Tramp
Michael Albinus [Mon, 12 Aug 2019 14:18:59 +0000 (16:18 +0200)]
Quote file names properly in Tramp

* lisp/net/tramp.el (tramp-handle-file-truename)
(tramp-handle-insert-directory):
* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
(tramp-sh-handle-insert-directory):
* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-truename):
Use `tramp-compat-directory-name-p'.

* lisp/net/tramp.el (tramp-drop-volume-letter)
(tramp-handle-file-truename):
* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
(tramp-sh-handle-file-truename):
* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-truename):
(tramp-sudoedit-handle-make-symbolic-link): Quote properly.

* lisp/net/tramp-compat.el (tramp-compat-file-name-quote)
(tramp-compat-file-name-unquote): Add optional argument TOP.

5 years agoHandle symbolic links properly in Tramp gfvs methods
Michael Albinus [Mon, 12 Aug 2019 14:18:17 +0000 (16:18 +0200)]
Handle symbolic links properly in Tramp gfvs methods

* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-readable-p):
Handle symbolic links.

5 years agoFix caching problem in Tramp smb method
Michael Albinus [Mon, 12 Aug 2019 14:17:39 +0000 (16:17 +0200)]
Fix caching problem in Tramp smb method

* lisp/net/tramp-cache.el (tramp-flush-file-upper-properties):
Add "file-entries",

5 years agoPrefer signed when testing for signed overflow
Paul Eggert [Sun, 11 Aug 2019 23:42:38 +0000 (16:42 -0700)]
Prefer signed when testing for signed overflow

* src/alloc.c (free_cons):
* src/casefiddle.c (do_casify_multibyte_string):
* src/editfns.c (styled_format):
* src/image.c (png_load_body):
Use signed arguments to INT_MULTIPLY_WRAPV etc.  This doesn’t fix
any bugs, but GCC emits better code when all args are signed.
Also, this removes the need for an if in free_cons (Bug#37006).

5 years agopassword-cache: differentiate null values from non-existent entries
Óscar Fuentes [Sun, 11 Aug 2019 23:42:16 +0000 (01:42 +0200)]
password-cache: differentiate null values from non-existent entries

* password-cache.el (password-in-cache-p, password-cache-add):
  properly detect non-existent entry.  (Bug#36834)

5 years agoFix garbage collection
Eli Zaretskii [Sun, 11 Aug 2019 16:23:23 +0000 (19:23 +0300)]
Fix garbage collection

* src/alloc.c (free_cons): Avoid false positives in
INT_ADD_WRAPV.  (Bug#37006)

5 years agoPrompt for new sieve script names in sieve management
Eric Abrahamsen [Sun, 11 Aug 2019 15:26:59 +0000 (08:26 -0700)]
Prompt for new sieve script names in sieve management

* lisp/net/sieve.el (sieve-edit-script): Otherwise the user ends up
with a script named '<new script>.sieve'.

5 years agoRetrieve start time from remote machine, use compat attrib functions
Michael Albinus [Sun, 11 Aug 2019 10:06:57 +0000 (12:06 +0200)]
Retrieve start time from remote machine, use compat attrib functions

* lisp/net/tramp-compat.el (tramp-compat-file-attribute-access-time)
(tramp-compat-file-attribute-status-change-time): New defaliases.

* test/lisp/net/tramp-tests.el (tramp--test-start-time): New defvar.
(tramp--test-file-attributes-equal-p)
(tramp-test19-directory-files-and-attributes): Use it.
(tramp-test18-file-attributes)
(tramp--test-file-attributes-equal-p, tramp-test20-file-modes)
(tramp-test22-file-times, tramp--test-check-files):
Use `tramp-compat-file-attribute-*' functions.

5 years agoSet custom :version for recently modified undo options
Glenn Morris [Sun, 11 Aug 2019 05:59:00 +0000 (22:59 -0700)]
Set custom :version for recently modified undo options

* lisp/cus-start.el (undo-limit, undo-strong-limit, undo-outer-limit):
Bump :version.

5 years ago* doc/emacs/calendar.texi (Time Intervals): Doc fix.
Stefan Kangas [Sat, 10 Aug 2019 20:30:41 +0000 (22:30 +0200)]
* doc/emacs/calendar.texi (Time Intervals): Doc fix.

5 years agoDouble undo limits
Stefan Kangas [Sat, 10 Aug 2019 13:17:33 +0000 (15:17 +0200)]
Double undo limits

* src/undo.c (syms_of_undo) <undo_limit, undo_strong_limit>
<Vundo_outer_limit>: Double undo limits.  (Bug#31104)

5 years agoMerge from origin/emacs-26
Glenn Morris [Sat, 10 Aug 2019 15:44:31 +0000 (08:44 -0700)]
Merge from origin/emacs-26

0860ac0 (origin/emacs-26) Improve documentation of features that use ...
fae1ff6 Fix docstrings in pong
82a2894 Improve doc strings of 'append-to-buffer' and friends
cb0403d Fix octave-mode ElDoc support
691790b Avoid Groff hanging on MS-Windows when invoked by "M-x man"

5 years ago; Merge from origin/emacs-26
Glenn Morris [Sat, 10 Aug 2019 15:44:31 +0000 (08:44 -0700)]
; Merge from origin/emacs-26

The following commit was skipped:

b83f83c Ignore pending_signals when checking for quits.

5 years agoMerge from origin/emacs-26
Glenn Morris [Sat, 10 Aug 2019 15:44:31 +0000 (08:44 -0700)]
Merge from origin/emacs-26

e7818cb Fix nnmail-expiry-wait docs and custom :types
8b7c776 * lisp/simple.el (kill-do-not-save-duplicates): Doc fix.  (Bu...

5 years ago; Merge from origin/emacs-26
Glenn Morris [Sat, 10 Aug 2019 15:44:31 +0000 (08:44 -0700)]
; Merge from origin/emacs-26

The following commits were skipped:

5a5ad99d Improve documentation of debugging Lisp syntax error
0148fc7 (emacs-26) ; Auto-commit of loaddefs files.

5 years agoImprove documentation of features that use the fringes
Eli Zaretskii [Sat, 10 Aug 2019 09:48:03 +0000 (12:48 +0300)]
Improve documentation of features that use the fringes

* doc/emacs/display.texi (Fringes): Add cross-reference to
where indicate-empty-lines is described.
(Useless Whitespace): Add an @anchor for a more accurate
cross-reference in "Fringes".

5 years agoUse a time offset when comparing times of local and remote machines
Michael Albinus [Sat, 10 Aug 2019 09:34:13 +0000 (11:34 +0200)]
Use a time offset when comparing times of local and remote machines

* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
Use a time offset in order to compensate different times on local
and remote machines.

5 years agoFix docstrings in pong
Mauro Aranda [Wed, 7 Aug 2019 14:55:54 +0000 (11:55 -0300)]
Fix docstrings in pong

* lisp/play/pong.el (pong-move-left pong-move-right): Refer to the
right bats and directions of movement.  (Bug#36959)

5 years agoFix pong collision detection
Mauro Aranda [Wed, 7 Aug 2019 00:48:41 +0000 (21:48 -0300)]
Fix pong collision detection

* lisp/play/pong.el (pong-update-game): If the ball hit the bat where
bats are positioned, draw again the bat cell in the old ball
position.  (Bug#20579).
Also, avoid changing the direction of the ball right after hitting the
bats, and improve the collision detection against the borders.

5 years agoSet up defined_color_hook for the initial frame
Alex Gramiak [Fri, 31 May 2019 20:30:31 +0000 (14:30 -0600)]
Set up defined_color_hook for the initial frame

* src/terminal.c (init_initial_terminal): Set up the
defined_color_hook.  This avoids crashes when running
in batch mode with code that manipulates colors.
(Bug#36019)

5 years agoSupport bool-vectors in cl-extra.el
Philippe Schnoebelen [Sun, 28 Jul 2019 06:59:12 +0000 (08:59 +0200)]
Support bool-vectors in cl-extra.el

* lisp/emacs-lisp/cl-extra.el (cl-coerce): Support bool-vector.

Copyright-paperwork-exempt: yes

5 years ago* lisp/frameset.el (frameset--minibufferless-last-p): Add comments (bug#36894)
Juri Linkov [Fri, 9 Aug 2019 18:08:54 +0000 (21:08 +0300)]
* lisp/frameset.el (frameset--minibufferless-last-p): Add comments (bug#36894)

5 years agoFix highlighting in man pages displayed by "M-x man"
Eli Zaretskii [Fri, 9 Aug 2019 13:51:14 +0000 (16:51 +0300)]
Fix highlighting in man pages displayed by "M-x man"

* lisp/man.el (Man-highlight-references0): Handle the case
when a section is divided between 2 or more chunks of text
received from the 'man' program.  (Bug#36927)

5 years agoImprove doc strings of 'append-to-buffer' and friends
Eli Zaretskii [Fri, 9 Aug 2019 07:31:39 +0000 (10:31 +0300)]
Improve doc strings of 'append-to-buffer' and friends

* lisp/simple.el (append-to-buffer, prepend-to-buffer)
(copy-to-buffer): Doc fixes.

5 years agoFix doc strings modified in recent changes
Eli Zaretskii [Fri, 9 Aug 2019 07:02:23 +0000 (10:02 +0300)]
Fix doc strings modified in recent changes

* src/xfns.c (Fx_change_window_property)
(Fx_delete_window_property, Fx_window_property)
(Fx_window_property_attributes): Doc fixes.

5 years agoProvide better target window consistency across x window property functions.
Noah Friedman [Fri, 9 Aug 2019 06:17:56 +0000 (23:17 -0700)]
Provide better target window consistency across x window property functions.

Use the argument name WINDOW-ID instead of SOURCE for same.
Revise docstrings to clarify semantics of FRAME and WINDOW-ID.

(Fx_change_window_property): Use `target_window' instead of `w'.
This is consistent with other related functions.
Finalize its value before blocking input.

(Fx_window_property):
(Fx_window_property_attributes): Use `window_id' instead of `source'.

(Fx_delete_window_property): New optional arg window_id.

5 years ago(Fx_change_window_property): Rename SOURCE arg to WINDOW-ID
Noah Friedman [Fri, 9 Aug 2019 04:52:37 +0000 (21:52 -0700)]
(Fx_change_window_property): Rename SOURCE arg to WINDOW-ID

5 years ago(Fx_change_window_property): Add optional arg SOURCE.
Noah Friedman [Thu, 8 Aug 2019 01:18:32 +0000 (18:18 -0700)]
(Fx_change_window_property): Add optional arg SOURCE.

This provides symmetry with Fx_window_property, so that the window
need not be an actual emacs frame.  This is useful for modifying
properties of parent windows (specified with --parent-id to emacs) or
generally assisting the window manager.

5 years agoUse "python -m pdb" when "pdb" is missing in M-x pdb
Stefan Kangas [Thu, 11 Jul 2019 03:51:18 +0000 (05:51 +0200)]
Use "python -m pdb" when "pdb" is missing in M-x pdb

* lisp/progmodes/gud.el (gud-pdb-command-name): Use "python -m pdb"
when "pdb" is missing.  (Bug#21521)

5 years agoSay how to enable event designators in the eshell manual
Noam Postavsky [Thu, 8 Aug 2019 23:35:53 +0000 (19:35 -0400)]
Say how to enable event designators in the eshell manual

* doc/misc/eshell.texi (History): Mention that event designators need
to be enabled.
* etc/NEWS: Mark corresponding entry as documented in manual.

5 years agoFix octave-mode ElDoc support
Mauro Aranda [Tue, 6 Aug 2019 15:45:28 +0000 (12:45 -0300)]
Fix octave-mode ElDoc support

* lisp/progmodes/octave.el (octave-eldoc-function-signatures): Fix the
regexp used, so no match happens when there is no defined function FN.
Also, tweak the regexp to support GNU Octave 4.2.x and newer.  (Bug#36459)

5 years agoWork on Tramp backward compatibility
Michael Albinus [Thu, 8 Aug 2019 14:47:29 +0000 (16:47 +0200)]
Work on Tramp backward compatibility

* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
(tramp-adb-handle-rename-file):
* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file):
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file):
* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file)
(tramp-smb-handle-rename-file):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
Use `tramp-compat-directory-name-p'.

5 years agoImprove time arithmetic in tramp--test-file-attributes-equal-p
Michael Albinus [Thu, 8 Aug 2019 13:42:45 +0000 (15:42 +0200)]
Improve time arithmetic in tramp--test-file-attributes-equal-p

* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
Improve time arithmetic.

5 years agoSuppress false alarm in Tramp
Michael Albinus [Thu, 8 Aug 2019 13:42:06 +0000 (15:42 +0200)]
Suppress false alarm in Tramp

* lisp/net/tramp.el (tramp-dissect-file-name): Suppress false alarm.

5 years agoAvoid Groff hanging on MS-Windows when invoked by "M-x man"
Eli Zaretskii [Thu, 8 Aug 2019 13:17:51 +0000 (16:17 +0300)]
Avoid Groff hanging on MS-Windows when invoked by "M-x man"

* lisp/man.el (Man-build-man-command): On MS-Windows, redirect
stdin of 'man' to the null device, to make sure Groff exits
immediately after formatting the man page.

5 years agoSuppress interactive-only warnings in undo-tests.el (Bug#36565)
Stefan Kangas [Fri, 2 Aug 2019 14:46:08 +0000 (16:46 +0200)]
Suppress interactive-only warnings in undo-tests.el (Bug#36565)

* test/src/undo-tests.el (undo-test-region-deletion)
(undo-test-region-example, undo-test-marker-adjustment-nominal)
(undo-test-region-t-marker, undo-test-marker-adjustment-moved)
(undo-test-region-mark-adjustment): Suppress interactive-only warnings
by using funcall-interactively.