1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-27 07:41:28 -08:00
Commit graph

137252 commits

Author SHA1 Message Date
Lars Ingebrigtsen
cfabacae02 Include To and Cc headers when forwarding with Message
* lisp/gnus/message.el (message-forward-included-headers): Include
more of the important headers when forwarded: To and Cc.
2019-06-28 15:01:36 +02:00
Michael Albinus
9fec778c07 * lisp/gnus/gnus-art.el (gnus-article-stop-animations):
Use `cancel-function-timers'.
2019-06-28 14:03:58 +02:00
Mattias Engdegård
24a329608d More readable regexp debug output
* src/regex-emacs.c (debug_putchar): New.
(print_fastmap, print_partial_compiled_pattern, print_double_string)
(regex_compile): Use debug_putchar.
(re_match_2_internal): Add newline.
2019-06-28 13:35:17 +02:00
Mattias Engdegård
8217255807 Consistently use stderr for debug output in regexp code
* src/regex-emacs.c (DEBUG_PRINT, print_fastmap, print_compiled_pattern)
(print_double_string, regex_compile): Print to stderr instead of stdout.
2019-06-28 13:27:10 +02:00
Lars Ingebrigtsen
a7682bce3c Don't inhibit quit in Gnus when prefetching articles
* lisp/gnus/gnus-async.el (gnus-async-prefetch-next): Don't
inhibit quit when running `gnus-async-prefetch-article'.
2019-06-28 12:01:46 +02:00
Alex Branham
cb182ce6f8
* lisp/simple.el (undo): Make message less enthusiastic 2019-06-27 19:56:40 -05:00
Ola Nilsson
fa3af359df Allow underscore in defun-prompt-regex names for sh-script
* lisp/progmodes/sh-script.el (defun-prompt-regexp):
Allow underscore in function names.
2019-06-27 20:02:54 -04:00
Paul Eggert
bdbb390ffe Improve ‘equal’ and array doc
* doc/lispref/objects.texi (Array Type): Array sizes are
nonnegative fixnums, not arbitrary integers.
(Equality Predicates): Do not say that ‘eq’ equals ‘=’ on bignums.
Do not imply that ‘equal’ must signal an error on circular lists.
2019-06-27 15:39:34 -07:00
Paul Eggert
2212ab5035 * src/xfaces.c (resolve_face_name): Simplify. 2019-06-27 15:39:34 -07:00
Pip Cet
01d6349b17 Remove unnecessary tortoise checks.
* src/fns.c (Fplist_get, Fplist_put, Flax_plist_get)
(Flax_plist_put, Fplist_member): Remove unnecessary check.
* src/json.c (lisp_to_json_toplevel_1): Remove unnecessary check.
2019-06-27 15:39:34 -07:00
Paul Eggert
4f2b2559ab Work around Cygwin bug with O_PATH
Problem reported by Ken Brown (Bug#36405).
* src/dired.c, src/fileio.c (O_PATH) [__CYGWIN__]: Undef.
2019-06-27 13:05:39 -07:00
Paul Eggert
06d2eb33e1 Omit a few minor unnecessary range checks
Based on Pip Cet’s review (Bug#36370#19).
* src/fileio.c (Fdo_auto_save):
* src/image.c (lookup_image):
* src/textprop.c (Fnext_single_char_property_change):
Prefer XFIXNUM to XFIXNAT for clarity and consistency with
neighboring code, and to avoid unnecessary range checks.
* src/image.c (lookup_image): Omit unnecessary range checks.
2019-06-27 12:35:09 -07:00
Paul Eggert
f59a3f3d61 Improve XFIXNUM cleanup a bit
Based on Pip Cet’s review (Bug#36370#13).
* src/ccl.c (Fccl_execute_on_string): Use clearer indexing.
* src/dosfns.c (Fint86, Fdos_memput):
Avoid runtime checks for negative fixnums when debugging.
This restores the earlier machine code.
* src/lisp.h (XFIXNUM, XUFIXNUM): Use eassert, not eassume.
(XFIXNAT): At the start, merely eassert FIXNUMP rather
than eassuming FIXNATP.  At the end, eassume that the
result is nonnegative.  This restores help to the compiler
that the previous patch mistakenly removed.
2019-06-27 12:35:09 -07:00
Paul Eggert
4893a09c00 Clean up use of XFIXNUM etc.
A few bits of the code were relying on the fact that XFIXNUM,
XFIXNAT, and XUFIXNUM do something even with arguments that
are not fixnums/fixnats.  Separate these rare uses out into
XFIXNUM_RAW and XUFIXNUM_RAW.
Problem and original patch reported by Pip Cet (Bug#36370).
* src/ccl.c (Fccl_execute_on_string):
* src/fileio.c (Finsert_file_contents, a_write)
(Fdo_auto_save):
* src/process.c (conv_lisp_to_sockaddr):
* src/textprop.c (Fnext_single_char_property_change)
(Fprevious_single_char_property_change)
(Fnext_property_change, Fnext_single_property_change)
(Fprevious_property_change)
(Fprevious_single_property_change):
Don’t assume fixnums are nonnegative.
* src/ccl.c (Fccl_execute_on_string):
Fix range-checking bug if AREF (status, i) is out of int range.
* src/data.c (arith_driver): Use XFIXNUM_RAW as we want
efficient garbage if the value is not a fixnum.
* src/dosfns.c (Fint86, Fdos_memput):
Check that args are nonnegative.
* src/image.c (lookup_image): Check that args are in range.
* src/lisp.h (lisp_h_XHASH): Use XUFIXNUM_RAW, since this
is for hashing.
(lisp_h_XFIXNAT, XFIXNAT) [USE_LSB_TAG]: Remove macros.
(lisp_h_XFIXNUM_RAW, XFIXNUM_RAW) [USE_LSB_TAG]: New macros, with
the semantics of the old macros without _RAW.
(XFIXNUM_RAW, XUFIXNUM_RAW): New inline functions, with the
semantics of the old functions without _RAW.
(FIXNUMP): Move definition up to avoid forward use.
(XFIXNUM, XFIXNAT, XUFIXNUM): Use eassume to add a runtime
check (when debugging) that the argument has the proper form.
(XFIXNUM, XFIXNAT): Now inline functions only, since they
refer to their arguments more than once now that they use eassume.
* src/textprop.c (Fprevious_single_char_property_change):
Avoid fixnum overflow with invalid input.
(set_text_properties): Fix unlikely failure
to validate arguments, by using EQ instead of XFIXNAT.
* src/w32term.c (w32_draw_glyph_string):
* src/xterm.c (x_draw_glyph_string):
Treat negative minimums as 0 rather than as garbage patterns.
2019-06-27 12:35:08 -07:00
Paul Eggert
3502d4c1b5 Catch duplicate keywords in image specs
* src/image.c (struct image_keyword.count): Now bool, not int,
since it is either 0 or 1.
(parse_image_spec, xpm_image_p): Use bool for boolean.
(parse_image_spec): Fix a bug introduced in
2011-09-21T17:41:20!eggert@cs.ucla.edu that reported only
triplicate (or more) keywords, not duplicates.
2019-06-27 12:21:53 -07:00
Lars Ingebrigtsen
a91bdeb131 Mention the new emacsclient -a/--eval behaviour 2019-06-27 21:18:42 +02:00
Lars Ingebrigtsen
6fe661342a emacsclient: ignore --eval parameters when starting alternate editor
* lib-src/emacsclient.c (fail): If the user said --eval, don't
pass those arguments to the alternate editor as file names.
Suggested by a patch from Scott Turner (bug#11474).
2019-06-27 21:00:36 +02:00
Vasilij Schneidermann
9997429cb7 Allow for retrieving profiler logs after stopping
* lisp/profiler.el (profiler-cpu-log, profiler-memory-log): New
variables.
(profiler-cpu-profile): Work even if the profiler is no longer
running (bug#22114).
(profiler-memory-profile): Ditto.
(profiler-stop): Save the data.
(profiler-reset): Clear the saved data.
(profiler-report-cpu, profiler-report-memory): Report on the saved
data.
(profiler-report): Save the data here, too.
2019-06-27 21:00:36 +02:00
Dan Nicolaescu
b93e546388 Include the date in the bzr annotation buffer
* lisp/vc/vc-bzr.el (vc-bzr-annotate-command)
(vc-bzr-annotate-time)
(vc-bzr-annotate-extract-revision-at-line): Include a date in the
bzr annotation buffer (bug#5428).
2019-06-27 21:00:36 +02:00
Stefan Kangas
b98b843a5b Add new ispell-change-dictionary-hook (Bug#1110)
* lisp/textmodes/ispell.el (ispell-change-dictionary-hook): New hook.
(ispell-change-dictionary): Call new hook (bug#1110).
2019-06-27 21:00:35 +02:00
Thierry Volpiatto
f9744d23e5 Add a new regexp variable to control boring winner buffers
* doc/emacs/windows.texi (Window Convenience): Mention it.

* lisp/winner.el (winner-boring-buffers-regexp): New variable.

* lisp/winner.el (winner-set): Use it (bug#11151).
2019-06-27 21:00:35 +02:00
Ken Brown
e51f328465 Fix invoking Emacs via a symlink on Cygwin
* src/emacs.c (load_pdump) [CYGWIN]: Strip ".exe" suffix.
2019-06-27 13:43:27 -04:00
Lennart Borgman
c1234ca9c3 Add more fontification to regexp builder mode
* lisp/emacs-lisp/re-builder.el (reb-copy): Work in the presence
of newlines in the regexps.
(reb-change-syntax): Use a dedicated history variable.
(reb-fontify-string-re): Fontify sub-matches.
(reb-regexp-grouping-backslash, reb-regexp-grouping-construct):
New faces.
(reb-string-font-lock-keywords): New variable.
(reb-mark-non-matching-parenthesis): Match parenthesis.
(reb-restart-font-lock): New function.

* lisp/emacs-lisp/re-builder.el (reb-mode-map): Add divider some
dividers (bug#6347).
2019-06-27 19:08:42 +02:00
Lars Ingebrigtsen
2fbcda71a9 Rename displayor to displayer in CEDET
* doc/misc/sem-user.texi (Idle Completions Mode): Rename
displayor->displayer throughout.
(Idle Completions Mode): Ditto.

* lisp/cedet/semantic/complete.el: Rename displayor->displayer
throughout and add aliases for all the methods that used that name.
2019-06-27 18:13:18 +02:00
Dmitry Gutov
8a11e430ec Use default-indent-new-line' instead of indent-new-comment-line'
* lisp/simple.el (default-indent-new-line): Doc string fix.

* lisp/textmodes/refill.el (refill-post-command-function): Make
default-indent-new-line work as indent-new-comment-line.

* lisp/textmodes/refill.el (refill-post-command-function): Bind
`M-C-j' and `M-j' to default-indent-new-line instead of
indent-new-comment-line to allow overriding via
`comment-line-break-function' (bug#12413).
2019-06-27 16:57:47 +02:00
Lars Ingebrigtsen
50ade7afc1 Revert "Apply font-lock in hexl-mode buffers"
This reverts commit 573de396f0.

The change wasn't necessary -- the hexl-mode buffer is automatically fontified.
2019-06-27 16:28:22 +02:00
Aaron S. Hawley
d64c72f50c Allow generating wiki and mediawiki tables
* lisp/textmodes/table.el (table--generate-source-prologue)
(table--generate-source-epilogue)
(table--generate-source-scan-rows)
(table--generate-source-cells-in-a-row): Insert the wiki/mediawiki
separators.

* lisp/textmodes/table.el (table-source-languages): Add support
for wiki and mediawiki tables (bug#13287).

2019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>

	* doc/emacs/text.texi (Table Misc): Mention the new wiki and
	mediawiki formats.
2019-06-27 13:55:04 +02:00
Wilfred Hughes
573de396f0 Apply font-lock in hexl-mode buffers
* lisp/hexl.el (hexl-mode): After setting font-lock-defaults, we
need to call `font-lock-ensure' to apply hexl-mode faces
(bug#24645).
2019-06-27 13:30:36 +02:00
Juanma Barranquero
e3b70e6b2d Add :local specifier to defcustom
* lisp/custom.el (custom-declare-variable): Allow the new :local
parameter (bug#14591).
(defcustom): Document it.
2019-06-27 13:26:45 +02:00
Paul Eggert
1d9bb2ff70 Tweak ‘error’ and ‘user-error’ doc strings
* lisp/net/tramp.el (tramp-user-error):
* lisp/subr.el (user-error):
Say that user errors are sometimes called pilot errors.
* lisp/subr.el (error, user-error):
Reorder wording to discuss mechanism first, then formatting advice,
rather than going back and forth between the two topics.
Tighten up the wording a bit.
2019-06-27 02:37:08 -07:00
Stefan Kangas
f90e0c5661 Clarify error and user-error docstrings
* lisp/subr.el (error, user-error)
* lisp/net/tramp.el (tramp-user-error): Change "pilot error" to "user
error" and improve documentation.
2019-06-27 02:37:08 -07:00
Basil L. Contovounesios
ee75788631 Remove gnus-bug from report-emacs-bug TODO entry
For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg01196.html
https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00967.html

* etc/TODO: Remove gnus-bug from list of obsolete bug-reporting
commands now that it is implemented in terms of report-emacs-bug.
2019-06-27 00:14:36 +01:00
Mattias Engdegård
cda2f52b94 Document bug in `replace-regexp-in-string'
`replace-regexp-in-string' omits the first START characters of the
input string in its return value.  This is a clear bug, but fixing it
probably causes more trouble; document the behaviour instead (bug#36372).

* doc/lispref/searching.texi (Search and Replace)
* lisp/subr.el (replace-regexp-in-string):
Document current behaviour.
2019-06-26 19:39:32 +02:00
Stefan Monnier
85871ae9ce * lisp/textmodes/page-ext.el (sort-pages-buffer): Fix typo
Reported by Marco Wahl <marcowahlsoft@gmail.com>.
Update `Commentary:` to use the new command names.
(pages--ctl-x-ctl-p-map): Fix `mark-page` binding.
(pages-directory-mode-map): Update `add-new-page` => `pages-add-new-page`.
2019-06-26 12:49:01 -04:00
Eli Zaretskii
e35708b454 Support invoking Emacs via a symlink on MS-Windows
* src/w32.c (w32_my_exename): Resolve symlinks in the
executable name, to support searching for the pdumper file
when the executable is found via a symlink.
* src/emacs.c (load_pdump): Add a comment about symlink
resolution on Windows.
2019-06-26 19:23:34 +03:00
Andrzej P
d4a0e41829 Fix redisplay of registers in gdb-mi
* lisp/progmodes/gdb-mi.el (gdb-update): Call
gdb-get-changed-registers before updating the GDB-MI buffers.
(Bug#16366)

Copyright-paperwork-exempt: yes
2019-06-26 19:14:25 +03:00
Lars Ingebrigtsen
8123f8cf9f Restrict indirect lookups in Fdocumentation_property
* src/doc.c (Fdocumentation_property): Only look up indirect
variables if we've been asked for the variable documentation.
2019-06-26 16:41:14 +02:00
Stefan Monnier
01b5eb3e73 Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk 2019-06-26 10:27:36 -04:00
Bruce Stephens
baee135c31 * lisp/calc/calc-ext.el (math-scalarp): Fix typo 2019-06-26 10:26:18 -04:00
Lars Ingebrigtsen
4b83e7d016 Fdocumentation_property: Return doc string for indirect variables
* src/doc.c (Fdocumentation_property): When dealing with indirect
variables (i.e., aliases), also check the symbol being pointed to
for the doc string (bug #17180).
2019-06-26 16:25:24 +02:00
Stefan Monnier
0b4e003766 Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo"
This reverts commit 698ff554ac.
2019-06-26 10:24:59 -04:00
Johan Claesson
699fce296b help-C-file-name shouldn't error out if we can't find the name
* lisp/help-fns.el (help-C-file-name): Make help-C-file-name
return nil instead of signalling an error if we can't find the
file name (bug#17250).

Copyright-paperwork-exempt: yes
2019-06-26 16:06:42 +02:00
Stefan Monnier
4e302630ae * test/lisp/calc/calc-tests.el (test-math-bignum, test-calc-23889): Disable
Not applicable any more with native bignums.
2019-06-26 10:04:52 -04:00
Stefan Monnier
698ff554ac * lisp/calc/calc-ext.el (math-scalarp): Fix typo 2019-06-26 10:03:48 -04:00
Noam Postavsky
9233865b70 Fix (rx-to-string (and (literal STR) (regexp STR)) regression
* lisp/emacs-lisp/rx.el (rx-regexp, rx-literal): Check the cadr of the
form for stringness, not the form itself.
* test/lisp/emacs-lisp/rx-tests.el (rx-to-string-lisp-forms): New test.
2019-06-26 08:50:27 -04:00
Mattias Engdegård
260b6c2c93 Merge consecutive constant `concat' args (bug#14769)
Suggested by Shigeru Fukaya <shigeru.fukaya@gmail.com>

* lisp/emacs-lisp/byte-opt.el (byte-optimize-concat): New.
(concat): Add byte-optimizer.
2019-06-26 11:39:12 +02:00
Stefan Monnier
1bc1672f77 * lisp/calc/calc.el: Take advantage of native bignums.
Remove redundant :group args.

(calc-trail-mode): Use inhibit-read-only.
(math-bignum-digit-length, math-bignum-digit-size)
(math-small-integer-size): Delete constants.
(math-normalize): Use native bignums.
(math-bignum, math-bignum-big): Delete functions.
(math-make-float): The mantissa can't be a calc bignum any more.
(math-neg, math-scale-left, math-scale-right, math-scale-rounding)
(math-add, math-sub, math-mul, math-idivmod, math-quotient)
(math-format-number, math-read-number, math-read-number-simple):
Don't bother handling calc bignums.
(math-div10-bignum, math-scale-left-bignum, math-scale-right-bignum)
(math-add-bignum, math-sub-bignum, math-mul-bignum, math-mul-bignum-digit)
(math-div-bignum, math-div-bignum-digit, math-div-bignum-big)
(math-div-bignum-part, math-div-bignum-try, math-format-bignum)
(math-format-bignum-decimal, math-read-bignum): Delete functions.
(math-numdigs): Don't presume that native ints are small enough to use
a slow algorithm.

* lisp/calc/calc-aent.el (calc-do-quick-calc):
* lisp/calc/calc-vec.el (calcFunc-vunpack):
* lisp/calc/calc-alg.el (math-beforep): Don't bother handling calc bignums.

* lisp/calc/calc-bin.el (math-bignum-logb-digit-size)
(math-bignum-digit-power-of-two): Remove constants.
(calcFunc-and, math-binary-arg, calcFunc-or, calcFunc-xor)
(calcFunc-diff, calcFunc-not, math-clip, math-format-twos-complement):
Use Emacs's builtin bignums.
(math-and-bignum, math-or-bignum, math-xor-bignum, math-diff-bignum)
(math-not-bignum, math-clip-bignum)
(math-format-bignum-radix, math-format-bignum-binary)
(math-format-bignum-octal, math-format-bignum-hex): Delete functions.
(math-format-binary): Fix old copy&paste error.

* lisp/calc/calc-comb.el (calc-prime-factors): Adjust for unused arg.
(math-prime-test): math-fixnum is now the identity.

* lisp/calc/calc-ext.el: Require cl-lib.
(math-oddp): Use cl-oddp.  Don't bother with calc bignums.
(math-integerp, math-natnump, math-ratp, math-realp, math-anglep)
(math-numberp, math-scalarp, math-vectorp, math-objvecp, math-primp)
(math-num-natnump, math-objectp, math-check-integer, math-compare):
Don't bother handling calc bignums.
(math-check-fixnum): Use fixnump.
(math-fixnum, math-fixnum-big, math-bignum-test): Remove functions.
(math--format-integer-fancy): Rename from math-format-bignum-fancy.
Adjust for internal bignums.

* lisp/calc/calc-funcs.el (calcFunc-besJ): Use cl-isqrt.

* lisp/calc/calc-macs.el (Math-zerop, Math-integer-negp)
(Math-integer-posp, Math-negp, Math-posp, Math-integerp)
(Math-natnump, Math-ratp, Math-realp, Math-anglep, Math-numberp)
(Math-scalarp, Math-vectorp, Math-objectp, Math-objvecp)
(Math-integer-neg, Math-primp, Math-num-integerp):
Don't bother handling calc bignums.
(Math-bignum-test): Delete function.

* lisp/calc/calc-math.el (math-use-emacs-fn): Remove unused `fx`.
(math-isqrt, math-sqrt): Use cl-isqrt.  Don't bother handling calc bignums.
(math-isqrt-bignum, math-isqrt-bignum-iter, math-isqrt-small):
Delete function.

* lisp/calc/calc-misc.el (math-fixnump, math-fixnatnump): Use fixnump.
(math-evenp): Use cl-evenp.
(math-zerop, math-negp, math-posp, math-div2): Don't bother handling
calc bignums.
(math-div2-bignum): Delete function.
2019-06-25 23:05:11 -04:00
Noam Postavsky
9552ee4df7 Merge from emacs-26
e62ad04963 Fix sgml-mode handling of quotes within parens (Bug#36347)
06b35b2f92 ; * lisp/frame.el: Enhance add-variable-watcher commentary.
572e34bb6f Rename 'make-symbolic-link' argument NEWNAME to LINKNAME
04477adedc Check that length of data returned by sysctl is non-zero
81535eeadb * test/lisp/progmodes/python-tests.el (python-virt-bin): D...
9d48979ca8 Fix Python tests depending on system-type
fcf6cc3177 Fix problem with wdired test when symlinks cannot be created.
4701e0663e Improve wording of documentation of click events

# Conflicts:
#	lisp/textmodes/sgml-mode.el
#	test/lisp/textmodes/sgml-mode-tests.el
2019-06-25 22:04:13 -04:00
Noam Postavsky
c7a59d87b5 ; Merge from emacs-26
The following commit was skipped:

bea31a3794 Backport: Fix typo in regexp-opt example code
2019-06-25 22:02:27 -04:00
Noam Postavsky
66aa770942 Merge from emacs-26
2b765c650a Remove outdated comment in winner.el (Bug#36185)
2019-06-25 22:02:27 -04:00