1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-30 02:33:03 -07:00
Commit graph

155589 commits

Author SHA1 Message Date
Tino Calancha
2eb0b7835d Fix shell-command-dont-erase-buffer feature
* lisp/simple.el (shell-command-dont-erase-buffer):
The default, nil, is backward compatible, i.e. it erases the buffer
only if the output buffer is not the current one; the new value 'erase
always erases the output buffer.
Update docstring.

(shell-command-save-pos-or-erase):
Add optional arg output-to-current-buffer.
Rename it so that it's not internal.  All callers updated.

(shell-command-set-point-after-cmd): Rename it so that it's not internal.
All callers updated.
Adjust it to cover a side case.

(shell-command): Adjust logic to match the specification (Bug#39067).
Enable the feature when the output buffer is the current one.

(shell-command-on-region): Little tweak to follow
`shell-command-dont-erase-buffer' specification.

* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
Add helper macro.
(simple-tests-shell-command-39067)
(simple-tests-shell-command-dont-erase-buffer): Add tests.

* doc/emacs/misc.texi (Single Shell): Update manual.

* etc/NEWS (Single shell commands): Announce the change.
2020-01-19 11:13:02 +01:00
Paul Eggert
35a1a007bb Remove Gnulib putenv code
It’s not needed, since Emacs always uses the system putenv and all
platforms have putenv.  This improves on the fix for Bug#19874.
Suggested by Bruno Haible.
* admin/merge-gnulib (GNULIB_MODULES): Remove putenv.
* configure.ac: Remove workarounds for Gnulib putenv module.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/putenv.c, m4/putenv.m4: Remove.
2020-01-18 20:55:09 -08:00
Paul Eggert
52baaca152 Update from Gnulib
This incorporates:
2020-01-18 Rename ~~gnulib.m4 to zzgnulib.m4
2020-01-18 Fix "m4_require: circular dependency of AC_LANG_COMPILER(C)"
2020-01-18 Ensure Automake does not drop ~~gnulib.m4
2020-01-18 Fix major regression from 2020-01-10
* m4/00gnulib.m4, m4/gnulib-common.m4: Copy from Gnulib.
* m4/gnulib-comp.m4: Regenerate.
* m4/zzgnulib.m4: New file, from Gnulib.
2020-01-18 20:55:09 -08:00
Rüdiger Sonderfeld
0e57792395 Add space before messsage in byte compiler warnings
According to the GNU coding standards (info "(standards) Errors"):
> If you want to mention the column number, use one of these formats:
>      SOURCE-FILE-NAME:LINENO:COLUMN: MESSAGE
>      SOURCE-FILE-NAME:LINENO.COLUMN: MESSAGE

* lisp/emacs-lisp/bytecomp.el (byte-compile-warning-prefix): Add space
before message in byte compiler warnings to comply with the GNU coding
standards.  (Bug#18969)
2020-01-19 02:02:28 +01:00
Stefan Kangas
c134978a76 Remove reference to Emacs 19 from FAQ
* doc/misc/efaq.texi (Emacs ignores X resources): Remove reference to
Emacs 19.
2020-01-19 01:26:16 +01:00
Stefan Kangas
fabf0065c5 Doc fixes in package.el
* lisp/emacs-lisp/package.el (package-process-define-package)
(package-generate-description-file): Doc fixes.
(package-generate-autoloads, package--write-file-no-coding)
(package--archive-file-exists-p, package-desc-status): Add doc
strings.
2020-01-19 00:51:58 +01:00
Eric Abrahamsen
5118394e5b Ensure that gnus-summary-attach-article finds the right articles
* lisp/gnus/gnus-msg.el (gnus-summary-attach-article): Before
iterating over the articles to attach, first close any open
article. Using `set-buffer' required `gnus-summary-select-article' to
re-set the buffer every time, meaning we never got off the original
article.

(cherry picked from commit 447bb1313a)
2020-01-18 13:55:18 -08:00
Paul Eggert
b222e1aaf9 Don’t assume sizeof (size_t) == 4 in allocators
This removes some old 32-bit assumptions in Emacs allocator tuning,
and improves performance of ‘make compile-always’ by about 7% on a
couple of 64-bit GNU/Linux platforms I tried it on.  It should not
affect performance on 32-bit platforms.
* src/alloc.c (MALLOC_SIZE_NEAR): New macro.
(MALLOC_ALIGNMENT): New constant.
(INTERVAL_BLOCK_SIZE, SBLOCK_SIZE, STRING_BLOCK_SIZE): Use the new
macro.  Make these enum constants since they need not be macros.
2020-01-18 13:21:20 -08:00
Eric Abrahamsen
447bb1313a Ensure that gnus-summary-attach-article finds the right articles
* lisp/gnus/gnus-msg.el (gnus-summary-attach-article): Before
iterating over the articles to attach, first close any open
article. Using `set-buffer' required `gnus-summary-select-article' to
re-set the buffer every time, meaning we never got off the original
article.
2020-01-18 11:08:11 -08:00
Stefan Kangas
f3d30b5303 Remove some doc references to old Emacs versions
* doc/misc/efaq.texi (Horizontal scrolling): Remove section
only relevant to Emacs 21 or older.
(Repeating commands, Editing MS-DOS files):
* lisp/progmodes/gdb-mi.el:
* lisp/woman.el: Doc fix - remove some references to Emacs 20 and older.
2020-01-18 19:56:54 +01:00
Stefan Monnier
a4610c3dca * src/fns.c (sxhash_obj): Fix crash on sub-char-tables
Also, look inside overlays, like `internal_equal`.

(internal_equal): Cosmetic tweak.
2020-01-18 13:13:21 -05:00
Alan Third
1787b86b89 Add ability to find ObjC method names
* lisp/progmodes/cc-cmds.el (c-defun-name-1): Add Objective-C method
name ability.
2020-01-18 15:35:17 +00:00
Alan Third
1e291a05f3 Don't error on non-toolkit NS scrollbars (bug#37042)
* configure.ac (HAVE_NS): Don't error, but warn, on non-toolkit
scrollbars.
2020-01-18 15:35:17 +00:00
Pieter van Oostrum
4217bc229b Fix infloop in shell.el
* test/lisp/shell-tests.el (shell-tests-completion-before-semi):
Amend the shell.el tests to catch errors such as bug#39057.

* lisp/shell.el (shell--parse-pcomplete-arguments): Skip the
semi-colon as well.  This avoids inflooping when a semi-colon is
typed by the user.  (Bug#39057)

Copyright-paperwork-exempt: yes
2020-01-18 11:54:03 +02:00
Stefan Kangas
43e79d42f9 Remove XEmacs and old Emacs compat code from ebnf2ps.el
* lisp/progmodes/ebnf2ps.el (ebnf-color-p)
(ebnf-style-database): Remove XEmacs and old Emacs compat code.
2020-01-18 09:15:49 +01:00
Paul Eggert
ac121d8c8f Make Faset nonrecursive
* src/data.c (Faset): Refactor Faset so that it’s not recursive.
This helps the compiler and makes the code a bit clearer.
2020-01-18 00:02:12 -08:00
Paul Eggert
c1b6d5c5b9 Improve performance when a string's byte count changes
* src/alloc.c (allocate_string_data): Now static.
Remove code for when Faset calls this function when S
already has data assigned, as that can no longer happen.
(resize_string_data): New function, which avoids relocation in
more cases than the old code did, by not bothering to relocate
when the size changes falls within the alignment slop.
* src/data.c (Faset): Use resize_string_data.
Change a while to a do-while since it must iterate at least once.
2020-01-18 00:02:12 -08:00
Amin Bandali
74b151195d
Fix erc-notifications-notify for non-PRIVMSGs, broken in last commit
* lisp/erc/erc-desktop-notifications.el (erc-notifications-notify):
Take optional argument `privp', to be non-nil when notifying for a
PRIVMSG.  This is to work around bug introduced in last commit, as
`erc-get-buffer' may return nil for non-PRIVMSG cases.
(erc-notifications-PRIVMSG): Call erc-notifications-notify with
non-nil `privp', as described above.
2020-01-17 23:56:00 -05:00
Amin Bandali
db4436eaf9
Fix the notification action for PRIVMSG in erc-notifications-notify
* lisp/erc/erc-desktop-notifications.el (erc-notifications-notify):
explicitly request the buffer for `nick', rather than relying on
(current-buffer) returning it.  That works fine for the very first
PRIVMSG sent by `nick', but ERC seems to handle subsequent PRIVMSGs
differently, where (current-buffer) would return the server buffer
rather than the existing buffer for PRIVMSGs from `nick'.
2020-01-17 22:44:49 -05:00
Amin Bandali
36a4068105
ERC: New maintainer.
* admin/MAINTAINERS: Add entries for Amin Bandali, new maintainer for
ERC, and interested in maintaining Eshell.
* lisp/erc/*: New maintainer.
2020-01-17 21:45:10 -05:00
Stefan Kangas
bce3d89a60 Remove XEmacs compat code from allout.el
* lisp/allout.el (allout-overlay-preparations)
(allout-overlay-interior-modification-handler)
(allout-before-change-handler, allout-beginning-of-line)
(allout-solicit-alternate-bullet, allout-annotate-hidden)
(allout-hide-by-annotation, allout-yank-processing)
(allout-flag-region, allout-toggle-subtree-encryption)
(allout-mark-marker, allout-substring-no-properties)
(allout-select-safe-coding-system)
(allout-previous-single-char-property-change)
(allout-next-single-char-property-change)
(top-level): Remove XEmacs compat code.
2020-01-18 02:59:56 +01:00
Paul Eggert
2391d3f45d ; spelling fixes 2020-01-17 14:24:15 -08:00
Alan Mackenzie
8d2fecdf6c Introduce element &error into edebug specification lists for macros
This fixes bug #37540.

* lisp/emacs-lisp/edebug.el (top level): New entry for &error in alist used to
associate elements with their handling functions.
(edebug-match-&error): New function.
(nested-backquote-form): Use the new element &error to abort instrumentation
on encountering a three deep nesting of backquotes (without intervening
commas).

* doc/lispref/edebug.texi (Specification List): Add an entry for &error.

* etc/NEWS: Add an entry for &error.
2020-01-17 21:53:13 +00:00
Dmitry Gutov
e898442be3 Honor tags-case-fold-search during xref identifer completion
* etc/NEWS: New entry.

* lisp/progmodes/etags.el (tags-case-fold-search):
Mark as safe-local.
(find-tag--completion-ignore-case):
Extract from tags-completion-at-point-function, find-tag-tag and
etags--xref-find-definitions.
(xref-backend-identifier-completion-ignore-case):
New method. Use it here as well.

* lisp/progmodes/xref.el
(xref-backend-identifier-completion-ignore-case): New generic.
(xref--read-identifier): Use it here.
2020-01-18 00:23:46 +03:00
Glenn Morris
d97a77c481 Merge from origin/emacs-27
4df0c1c6c4 (origin/emacs-27) ; * src/lread.c (force_new_style_backquo...
069741b2f7 ; * etc/NEWS: Mention latest changes in checkdoc.  (Bug#38...
a785be29bf Fix wording and punctuation of a recent commit
0d3d3be35c Merge branch 'emacs-27' of git.savannah.gnu.org:/srv/git/e...
5da372e17e ; Minor edit in anti.texi

# Conflicts:
#	etc/NEWS
2020-01-17 07:50:28 -08:00
Glenn Morris
8c376493fc ; Merge from origin/emacs-27
The following commit was skipped:

6338f69102 Add unattended spell-checking to checkdoc
2020-01-17 07:50:23 -08:00
Glenn Morris
1149b699aa Merge from origin/emacs-27
5da372e17e ; Minor edit in anti.texi
2020-01-17 07:50:23 -08:00
Glenn Morris
9fcfe059c7 ; Merge from origin/emacs-27
The following commit was skipped:

4453acbdc9 Fix the error message from makefile-move-to-macro
2020-01-17 07:50:23 -08:00
Glenn Morris
213840acf2 Merge from origin/emacs-27
8d091f7fc2 ; Fix recent markup change
b78426526c ; * lisp/obsolete/vc-arch.el: Add missing "Obsolete-since"...
3fb37dc9a4 ; * lisp/ezimage.el: Fix typo.
778923afe5 Document feature requests in the Emacs manual
2020-01-17 07:50:23 -08:00
Simen Heggestøyl
4df0c1c6c4 ; * src/lread.c (force_new_style_backquotes): Fix reference. 2020-01-17 14:53:13 +01:00
Eli Zaretskii
069741b2f7 ; * etc/NEWS: Mention latest changes in checkdoc. (Bug#38583) 2020-01-17 11:47:19 +02:00
Eli Zaretskii
a785be29bf Fix wording and punctuation of a recent commit
* lisp/textmodes/ispell.el (ispell-correct-p): Doc fix.
* lisp/emacs-lisp/checkdoc.el (checkdoc-ispell-init): Fix
capitalization and punctuation of comments.
2020-01-17 11:35:35 +02:00
Eli Zaretskii
0d3d3be35c Merge branch 'emacs-27' of git.savannah.gnu.org:/srv/git/emacs into emacs-27 2020-01-17 11:30:55 +02:00
Damien Cassou
6338f69102 Add unattended spell-checking to checkdoc
This commit makes checkdoc capable of spell-checking even when the
user isn't using it interactively.  When TAKE-NOTES is non-nil,
checkdoc will run spell-checking (with ispell) and report spelling
mistakes.

Fixes: (bug#38583).

* lisp/textmodes/ispell.el (ispell-word): Extract part of it to
`ispell--run-on-word`.
(ispell--run-on-word): New function, extracted from `ispell-word`.
(ispell-error-checking-word): New function.
(ispell-correct-p): New function.  Use `ispell--run-on-word` and
`ispell-error-checking-word`.
* lisp/emacs-lisp/checkdoc.el (checkdoc-current-buffer): Pass
TAKE-NOTES to `checkdoc-start`.
(checkdoc-continue): Pass TAKE-NOTES to `checkdoc-this-string-valid`.
(checkdoc-this-string-valid): Add optional argument TAKE-NOTES and
pass it to `checkdoc-this-string-valid-engine`.
(checkdoc-this-string-valid-engine): Add optional argument TAKE-NOTES
and pass it to `checkdoc-ispell-docstring-engine`.
(checkdoc-ispell-init): Call `ispell-set-spellchecker-params` and
`ispell-accept-buffer-local-defs`.  These calls are required to
properly use ispell.  The problem went unnoticed until now because
checkdoc was only using ispell through the high-level command
`ispell-word` which takes care of all the initialization for the user.
(checkdoc-ispell-docstring-engine): Add optional argument TAKE-NOTES
to force reporting of spell-checking errors.  Throw error
when (checkdoc-ispell-init) fails configuring ispell.  Replace a
few (if cond nil body) with (unless cond body). Replace (let ((var
nil))) with (let (var)).  Replace (if (not (eq checkdoc-autofix-flag
'never)) body) with just body because `checkdoc-autofix-flag` is
checked at the beginning of the function.

(cherry picked from commit 25adbc4a5e)
2020-01-17 11:29:06 +02:00
Robert Pluim
5da372e17e ; Minor edit in anti.texi 2020-01-17 09:35:48 +01:00
Lin Sun
4453acbdc9 Fix the error message from makefile-move-to-macro
* lisp/cedet/ede/makefile-edit.el (makefile-macro-file-list):
regexp-quote the param in makefile-move-to-macro (Bug#39094).

(cherry picked from commit a36495da1e)
2020-01-17 10:15:23 +02:00
Robert Pluim
8d091f7fc2 ; Fix recent markup change
* doc/emacs/custom.texi (Find Init): Fix variable markup.
2020-01-17 08:53:29 +01:00
Glenn Morris
b615c1fa8c * lisp/progmodes/vhdl-mode.el (speedbar-load-hook): Silence compiler. 2020-01-16 23:14:00 -08:00
Glenn Morris
680021ebde Make more load-hooks obsolete
* lisp/align.el (align-load-hook):
* lisp/autorevert.el (auto-revert-load-hook):
* lisp/bookmark.el (bookmark-load-hook):
* lisp/cmuscheme.el (cmuscheme-load-hook):
* lisp/dired.el (dired-load-hook):
* lisp/expand.el (expand-load-hook):
* lisp/ibuffer.el (ibuffer-load-hook):
* lisp/msb.el (msb-after-load-hook):
* lisp/recentf.el (recentf-load-hook):
* lisp/speedbar.el (speedbar-load-hook):
* lisp/strokes.el (strokes-load-hook):
* lisp/calc/calc.el (calc-load-hook):
* lisp/calendar/timeclock.el (timeclock-load-hook):
* lisp/emulation/viper-init.el (viper-load-hook):
* lisp/progmodes/cwarn.el (cwarn-load-hook):
* lisp/progmodes/idlwave.el (idlwave-load-hook):
* lisp/progmodes/inf-lisp.el (inferior-lisp-load-hook):
* lisp/progmodes/meta-mode.el (meta-mode-load-hook):
* lisp/textmodes/reftex-vars.el (reftex-load-hook):
* lisp/textmodes/table.el (table-load-hook):
* lisp/url/url-vars.el (url-load-hook):
* lisp/vc/ediff-init.el (ediff-load-hook):
Obsolete for with-eval-after-load.
2020-01-16 23:06:04 -08:00
Stefan Kangas
b78426526c ; * lisp/obsolete/vc-arch.el: Add missing "Obsolete-since" tag. 2020-01-17 07:03:41 +01:00
Stefan Kangas
6dbe2c932a Make sb-image.el obsolete (Bug#37837)
* lisp/sb-image.el: Move from here...
* lisp/obsolete/sb-image.el: ...to here.

* lisp/speedbar.el (ezimage): Require instead of 'sb-image'.
(speedbar-use-images, speedbar-expand-image-button-alist)
(speedbar-insert-image-button-maybe, speedbar-image-dump): Move
here from 'sb-image.el'.
2020-01-17 06:55:45 +01:00
Glenn Morris
278f1f9c0a * doc/misc/ido.texi (Ignoring): Reword per Texinfo warning. 2020-01-16 21:55:14 -08:00
Glenn Morris
e135414b27 Replace doc references to load-hooks
with-eval-after-load is a cleaner, standard feature that works
for every file
* doc/misc/calc.texi (Hooks):
* doc/misc/dired-x.texi (Installation)
(Optional Installation File At Point, Omitting Files in Dired)
(Omitting Examples, Find File At Point):
* doc/misc/ediff.texi (Hooks, Selective Browsing)
(Highlighting Difference Regions):
* doc/misc/efaq.texi (Disabling backups):
* doc/misc/gnus.texi (Startup Variables):
* doc/misc/idlwave.texi (Structure Tag Completion, Misc Options):
* doc/misc/org.texi (Handling Links):
* doc/misc/reftex.texi (Key Bindings, Keymaps and Hooks):
* doc/misc/sem-user.texi (Speedbar):
* doc/misc/speedbar.texi (Hooks, Minor Display Modes):
* doc/misc/viper.texi (Rudimentary Changes):
Replace load-hooks with with-eval-after-load
2020-01-16 21:53:37 -08:00
Stefan Kangas
3fb37dc9a4 ; * lisp/ezimage.el: Fix typo. 2020-01-17 06:34:00 +01:00
Glenn Morris
e32bae6177 Replace add-hook load-hook with with-eval-after-load
* lisp/info.el (Info-install-speedbar-variables):
* lisp/cedet/ede.el (speedbar):
* lisp/cedet/semantic/imenu.el (speedbar):
* lisp/emacs-lisp/eieio-opt.el (eieio-class-speedbar-key-map):
* lisp/emacs-lisp/eieio-speedbar.el (eieio-speedbar-create):
* lisp/erc/erc-speedbar.el (erc-install-speedbar-variables):
* lisp/mail/rmail.el (rmail-install-speedbar-variables):
* lisp/progmodes/gud.el (gud-install-speedbar-variables):
Use with-eval-after-load.
2020-01-16 21:21:29 -08:00
Glenn Morris
98c6416bfd * lisp/obsolete/cust-print.el (print-circle): Doc tweak. 2020-01-16 21:15:28 -08:00
Glenn Morris
ee0e3a792b edebug: remove ancient code for ancient XEmacs support libs
* lisp/emacs-lisp/edebug.el (edebug--require-cl-read): Remove.
(edebug-setup-hook, cl-read-load-hooks): Don't modify.
(edebug-unload-function): Don't modify cl-read-load-hooks.
2020-01-16 21:15:02 -08:00
Lin Sun
a36495da1e Fix the error message from makefile-move-to-macro
* lisp/cedet/ede/makefile-edit.el (makefile-macro-file-list):
regexp-quote the param in makefile-move-to-macro (Bug#39094).
2020-01-16 16:09:59 -08:00
Stefan Kangas
f18c78e611 Remove a FIXME from package.el
* lisp/emacs-lisp/package.el (package-unpack): Remove FIXME about
maybe deleting the package directory.  It was decided that this was
undesirable.  (Bug#7756)
2020-01-17 00:48:02 +01:00
Stefan Kangas
025d6ac1d9 Add index entry "syntax highlighting" to the elisp manual
* doc/lispref/modes.texi (Font Lock Mode): Add an index entry for
"syntax highlighting".  (Bug#24827)
2020-01-17 00:03:52 +01:00