1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-19 01:10:57 -08:00
Commit graph

144922 commits

Author SHA1 Message Date
Lars Ingebrigtsen
a6f030fc7b Fix message.el build warning from previous change
* lisp/gnus/message.el (subr-x): Fix build warning from previous
commit.
2021-01-21 18:10:21 +01:00
Ted Zlatanov
5d2ebcd896
* test/infra/gitlab-ci.yml: Revert to always building. 2021-01-21 16:08:57 +00:00
Lars Ingebrigtsen
de761b58f0 Add dired support for compressing .pax files
* lisp/dired-aux.el (dired-compress-files-alist): Add support for
compressing .pax files (bug#40135).
2021-01-21 17:08:28 +01:00
Lars Ingebrigtsen
7d122cf9a3 Tweak previous message-forward-included-mime-headers change
* lisp/gnus/message.el (message-forward-included-mime-headers):
Should probably not include Content-Transfer-Encoding, because we
will reencode anyway.
2021-01-21 16:48:01 +01:00
Lars Ingebrigtsen
a7fb4ab826 Make Message respect header removal instructions more
* doc/misc/message.texi (Forwarding): Document it.

* lisp/gnus/message.el (message-forward-ignored-headers): Improve
documentation.
(message-forward-included-headers): Ditto.
(message-forward-included-mime-headers): New user option.
(message-remove-ignored-headers): Use it to preserve the necessary
MIME headers.
(message-forward-make-body): Remove headers when forwarding as
MIME, too.
2021-01-21 16:44:53 +01:00
Eli Zaretskii
b2d30fd630 A better fix for 'kill-visual-line'
* lisp/simple.el (kill-visual-line): Use the 6th element of the
return value of 'posn-at-point', which provides the coordinates in
terms or row and column, and is thus more reliable for deciding
whether we moved to the next screen line.  (Bug#45837)
2021-01-21 16:21:45 +02:00
Lars Ingebrigtsen
8e7728a5bf Fix thinko in previous footnote.el change
* lisp/mail/footnote.el (footnote--regenerate-alist): Don't error
out when there's no footnotes.
2021-01-21 12:45:29 +01:00
Stefan Monnier
bacc24b5d0 Use lexical-binding in all the cal-*.el files
* lisp/calendar/cal-bahai.el: Use lexical-binding.
(calendar-bahai-date-string): Use `calendar-dlet*`.

* lisp/calendar/cal-china.el: Use lexical-binding.
(calendar-chinese-zodiac-sign-on-or-after)
(calendar-chinese-new-moon-on-or-after): Declare `year`.
(calendar-chinese-from-absolute-for-diary)
(calendar-chinese-to-absolute-for-diary)
(calendar-chinese-mark-date-pattern): Avoid dynbound var `date` as
function argument.

* lisp/calendar/cal-coptic.el: Use lexical-binding.
(calendar-coptic-date-string): Use `calendar-dlet*`.
(calendar-ethiopic-to-absolute, calendar-ethiopic-from-absolute)
(calendar-ethiopic-date-string, calendar-ethiopic-goto-date):
Avoid dynbound var `date` as function argument.

* lisp/calendar/cal-french.el: Use lexical-binding.

* lisp/calendar/cal-hebrew.el: Use lexical-binding.
(holiday-hebrew-hanukkah): Don't use the third form in `dotimes`.

* lisp/calendar/cal-islam.el: Use lexical-binding.
(calendar-islamic-to-absolute): Comment out unused vars `month` and `day`.

* lisp/calendar/cal-move.el:
* lisp/calendar/cal-mayan.el:
* lisp/calendar/cal-iso.el: Use lexical-binding.

* lisp/calendar/cal-persia.el: Use lexical-binding.
(calendar-persian-date-string): Use `calendar-dlet*`.

* lisp/calendar/cal-html.el: Use lexical-binding.
(cal-html-insert-minical): Comment out unused var `date`.
(cal-html-cursor-month, cal-html-cursor-year): Mark `event` arg as unused.

* lisp/calendar/cal-menu.el: Use lexical-binding.
(diary-list-include-blanks): Declare var.

* lisp/calendar/cal-x.el: Use lexical-binding.

* lisp/calendar/cal-tex.el: Use lexical-binding.
(diary-list-include-blanks): Declare var.
(cal-tex-insert-days, cal-tex-cursor-week-iso, cal-tex-week-hours)
(cal-tex-weekly-common, cal-tex-cursor-filofax-2week)
(cal-tex-cursor-filofax-daily, cal-tex-daily-page): Declare `date`
as dynbound for the benefit of `cal-tex-daily-string`.
2021-01-20 23:56:51 -05:00
Stefan Monnier
0c93d0d072 Use calendar-read-sexp instead of the now obsolete calendar-read
* lisp/calendar/diary-lib.el (diary-insert-cyclic-entry):
* lisp/calendar/cal-persia.el (calendar-persian-read-date):
* lisp/calendar/cal-move.el (calendar-goto-day-of-year):
* lisp/calendar/cal-mayan.el (calendar-mayan-read-haab-date)
(calendar-mayan-read-tzolkin-date):
* lisp/calendar/cal-julian.el (calendar-julian-goto-date)
(calendar-astro-goto-day-number):
* lisp/calendar/cal-iso.el (calendar-iso-read-date):
* lisp/calendar/cal-islam.el (calendar-islamic-read-date):
* lisp/calendar/cal-hebrew.el (calendar-hebrew-read-date)
(calendar-hebrew-list-yahrzeits):
* lisp/calendar/cal-french.el (calendar-french-goto-date):
* lisp/calendar/cal-coptic.el (calendar-coptic-read-date):
* lisp/calendar/cal-china.el (calendar-chinese-goto-date):
* lisp/calendar/cal-bahai.el (calendar-bahai-read-date):
* lisp/calendar/holidays.el (list-holidays): Use `calendar-read-sexp`.
2021-01-20 23:55:40 -05:00
Stefan Monnier
0f65baa03b * lisp/calendar/cal-french.el (calendar-french-accents-p): Obsolete function
Always assume accented letters can be used

(calendar-french-month-name-array)
(calendar-french-special-days-array): Use the accented names.
(calendar-french-multibyte-month-name-array)
(calendar-french-multibyte-special-days-array): Make those vars
obsolete aliases.
(calendar-french-month-name-array, calendar-french-day-name-array)
(calendar-french-special-days-array): Mark functions as obsolete.
(calendar-french-date-string, calendar-french-goto-date): Always use
the text with accents.
2021-01-20 23:50:52 -05:00
Stefan Monnier
d8a9828b3b * lisp/calendar/calendar.el (calendar-read-sexp): New function
(calendar-read): Mark as obsolete.
(calendar-read-date): Use it.  Add `default-date` argument.
Provide defaults for the month and day (fixes bug#32105).
2021-01-20 23:47:05 -05:00
Stefan Monnier
b9511362f5 * lisp/emacs-lisp/bytecomp.el (byte-compile--declare-var): Fix warning
Make sure the "declared after first use" is under the control of
the `lexical` option.
2021-01-20 20:17:11 -05:00
Lars Ingebrigtsen
0df23b73e4 Fix recent remember-diary-extract-entries change
* lisp/textmodes/remember.el (remember-diary-extract-entries): Use
`remember-diary-file' over `diary-file'.
2021-01-20 23:30:53 +01:00
Lars Ingebrigtsen
61b716bd30 checkdoc-spellcheck-documentation-flag doc string improvement
* lisp/emacs-lisp/checkdoc.el
(checkdoc-spellcheck-documentation-flag): Mention
`ispell-kill-ispell' (bug#6221).
2021-01-20 22:15:38 +01:00
Lars Ingebrigtsen
1a6ed932d9 Revert "Always send Lisp words to checkdoc-ispell-init"
This reverts commit 93141d5813.

This would make checkdoc words be used in other flyspell
buffers.
2021-01-20 22:11:38 +01:00
Lars Ingebrigtsen
93141d5813 Always send Lisp words to checkdoc-ispell-init
* lisp/emacs-lisp/checkdoc.el (checkdoc-ispell-init): Always send
the Lisp words to the process (bug#6221).  This allows an existing
ispell process to be correctly initialised.
2021-01-20 22:01:08 +01:00
Juri Linkov
5065698c81 Move the ‘declare’ form before the interactive spec in 10 functions.
* lisp/emacs-lisp/package.el (package-menu-hide-package):
* lisp/font-lock.el (font-lock-debug-fontify):
* lisp/image.el (image-jpeg-p):
* lisp/mail/flow-fill.el (fill-flowed-test):
* lisp/mh-e/mh-speed.el (mh-speed-toggle, mh-speed-view):
* lisp/progmodes/project.el (project-async-shell-command)
(project-shell-command, project-compile):
* lisp/progmodes/sh-script.el (sh-assignment):
Fix special forms to follow in this order: docstring, declare, interactive.
2021-01-20 21:19:23 +02:00
Stefan Monnier
0d3635536d * lisp/emacs-lisp/subr-x.el (named-let): New macro 2021-01-20 14:13:15 -05:00
Stefan Monnier
66439d31ad * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Add 2 new opts
This introduces two new optimizations.  They're designed for code like

    (while
        (let (...)
          (if ... (progn blabla t) (progn blabla nil)))
      ...)

and they allow the elimination of the test internal to `while` since
we can immediately know when we return `t` or `nil` what the result
of the test will be.

`cl-labels` tends to generate this kind of code when it applies the
tail-call optimization.
2021-01-20 14:13:15 -05:00
Stefan Monnier
4dfebf25c7 * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Move some opts.
This moves two optimizations from the final pass to the main loop.
Both may enable further optimizations (and the second can be applied
repeatedly but "from the end", so the loop in the final pass only gets
to apply it once).
2021-01-20 14:13:15 -05:00
Stefan Monnier
09bfb12edc * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Re-indent 2021-01-20 14:13:15 -05:00
Lars Ingebrigtsen
434057ad92 Fix footnote-mode problem when reopening an old file
* lisp/mail/footnote.el (footnote--regenerate-alist): New function
(bug#7258).
(footnote-mode): Use it to restore footnotes after opening an old
file with footnotes.
2021-01-20 19:42:21 +01:00
Lars Ingebrigtsen
7fe7efe0bb cua-toggle-global-mark doc string clarification
* lisp/emulation/cua-gmrk.el (cua-toggle-global-mark): Clarify
that also inserted characters are affected (bug#8083).
2021-01-20 18:52:21 +01:00
Michael Albinus
bd423b8699 Fix environment handling in tramp-handle-make-process
* lisp/net/tramp.el (tramp-test-message): Add `tramp-suppress-trace' property.
(tramp-handle-make-process): Handle also 'tramp-remote-process-environment'.
2021-01-20 18:51:52 +01:00
Gabriel do Nascimento Ribeiro
38173af10d Respect remember-save-after-remembering on remember-diary-extract-entries
* lisp/textmodes/remember.el (remember-diary-extract-entries):
Save automatically if `remember-save-after-remembering' is non-nil
(bug#45811).
2021-01-20 17:54:43 +01:00
Gabriel do Nascimento Ribeiro
edf6350e7f Add option remember-text-format-function
* lisp/textmodes/remember.el (remember-text-format-function): New
variable (bug#45809).
(remember-append-to-file): Use it.
2021-01-20 17:53:04 +01:00
Gabriel do Nascimento Ribeiro
72d4522b05 Add option remember-diary-regexp
* lisp/textmodes/remember.el (remember-diary-extract-entries): Use
it (bug#45808).
(remember-diary-regexp): New variable.
2021-01-20 17:45:08 +01:00
Lars Ingebrigtsen
cad2c4b14a Tweak tty-find-type to allow TERM=screen.xterm
* lisp/faces.el (tty-find-type): Allow TERM=screen.xterm to find
term/screen.el (bug#45824).
2021-01-20 17:25:40 +01:00
Lars Ingebrigtsen
f30cf07ecb Make symbol-at-point return nil if there's no symbols in the buffer
* lisp/thingatpt.el (thing-at-point--beginning-of-symbol): Special
op that errors out when there's no symbols in the buffer before
point (bug#14234).
(symbol): Use it.
2021-01-20 16:58:09 +01:00
Lars Ingebrigtsen
ce1a42a6eb Add tests for symbol-at-point (bug#14234) 2021-01-20 16:47:39 +01:00
Stefan Monnier
420661af07 Don't let maybe_quit prevent resetting consing_until_gc (bug#43389)
* src/alloc.c (garbage_collect): Postpone `unblock_input` a bit.
* src/window.c (window_parameter): Avoid `maybe_quit`.
2021-01-20 09:52:07 -05:00
Fabrice Bauzac
849fe71de7
Sort Ibuffer filename/process column as displayed
* lisp/ibuf-ext.el (ibuffer-do-sort-by-filename/process): Use the
same function for sorting and for displaying the
filename/process (Bug#45800).

Copyright-paperwork-exempt: yes
2021-01-20 14:10:09 +00:00
Lars Ingebrigtsen
8b33b76eb9 Revert "Make `symbol-at-point' work in buffers with no symbols"
This reverts commit 40a5df8143.

This fails when a point is after a symbol, and there's
nothing else in the buffer.
2021-01-20 05:44:16 +01:00
Lars Ingebrigtsen
c502cdd2b7 Don't add Content-Type when ceasing an rmail edit
* lisp/mail/rmailedit.el (rmail-cease-edit): Take an optional
parameter to avoid altering the message (bug#13327).
(rmail-abort-edit): Use it.
2021-01-20 05:08:56 +01:00
Lars Ingebrigtsen
40a5df8143 Make `symbol-at-point' work in buffers with no symbols
* lisp/thingatpt.el (thing-at-point--end-of-symbol): New function
(bug#14234).
(symbol): Use it instead of `forward-symbol', because the latter
will move to the end of the buffer even if there is no symbol
there.  Instead error out like `forward-sexp' and friends.
2021-01-20 04:44:18 +01:00
Lars Ingebrigtsen
3bbec2eb2b Fix up example in the Modifying Menus node in the lispref manual
* doc/lispref/keymaps.texi (Modifying Menus): Make the second
example more regular (bug#14257).
2021-01-20 04:17:41 +01:00
Lars Ingebrigtsen
f925aabcce Mention that the mouse will switch on transient-mark-mode in manual
* doc/lispref/markers.texi (The Mark): Mention that the mouse will
enable the `(only)' transient mark mode (bug#14945).
2021-01-20 03:54:18 +01:00
Lars Ingebrigtsen
5aff1bfdaf Make sh-mode use `auto-mode-interpreter-regexp'
* lisp/progmodes/sh-script.el (sh-mode): Use
`auto-mode-interpreter-regexp' instead of open-coding the value
(bug#17158).
2021-01-20 03:25:46 +01:00
Nick Drozd
5536893c6e test/lisp/replace-tests.el: Add nested match group test
* test/lisp/replace-tests.el (replace-regexp-bug45973): Add test
(bug#45973).
2021-01-20 02:46:17 +01:00
Philipp Stephani
8ed97a8d54 Make child signal read pipe non-blocking.
Otherwise Emacs might hang when trying to read the pipe twice in a
row.  This is consistent with the other file descriptors we pass to
'pselect'.

* src/process.c (child_signal_init): Make read end of pipe
non-blocking.
2021-01-19 21:38:46 +01:00
Dmitry Gutov
8725f7690a Declare some project commands interactive-only
* lisp/progmodes/project.el (project-async-shell-command)
(project-shell-command, project-compile):
Declare interactive-only (bug#45765).
2021-01-19 21:50:11 +02:00
Juri Linkov
eec059b124 * lisp/help-fns.el: Move defvar keymap-name-history closer to where it's used. 2021-01-19 20:27:29 +02:00
Juri Linkov
e718d3a849 Better check for nil in search-/query-replace-highlight-submatches (bug#45973)
* lisp/isearch.el (isearch-highlight):
* lisp/replace.el (replace-highlight):
Use integer-or-marker-p to check matches.
2021-01-19 20:13:48 +02:00
Ted Zlatanov
1248c67484
* test/infra/gitlab-ci.yml: Bootstrap only from web, schedule, or C-related. 2021-01-19 18:00:55 +00:00
Mattias Engdegård
bfa140d7cf Calc: use Unicode brackets in Big mode when available (bug#45917)
* lisp/calc/calccomp.el (math--big-bracket-alist)
(math--big-bracket, math--comp-bracket, math--comp-round-bracket):
New.
(math-compose-expr, math-compose-log, math-compose-log10)
(math-compose-choose, math-compose-integ, math-compose-sum)
(math-compose-prod): Use big brackets when available.
2021-01-19 19:00:09 +01:00
Stefan Monnier
039ab602cb * etc/NEWS.19: Add entry for indent-line-to
* lisp/version.el (emacs-major-version, emacs-minor-version):
Remove redundant version info already displayed by `C-h o`.
2021-01-19 12:53:42 -05:00
Michael Albinus
f3b9d5b315 Some Tramp fixes, resulting from test campaign
* doc/misc/tramp.texi (Remote shell setup): Clarifications for
`tramp-actions-before-shell' example.

* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Do not expand
FILENAME explicitely.
(tramp-open-shell): Add "-i" for interactive shells.

* test/lisp/net/tramp-tests.el (tramp-test07-file-exists-p)
(tramp-test14-delete-directory)
(tramp-test43-asynchronous-requests): Skip for MS windows.
2021-01-19 18:45:55 +01:00
Stefan Monnier
deb90c893d * lisp/startup.el: Fix bug#45857, bug#30994, and bug#45913.
(command-line): Don't re-evaluate the `custom-delayed-init-variables`
a second time after reading the `early-init.el` file.
(x-apply-session-resources): Set `blink-cursor-mode` rather than
`no-blinking-cursor`.

* lisp/frame.el (blink-cursor-start): Turn `blink-cursor-mode` off
if `blink-cursor-mode` was set to nil.
(blink-cursor-mode): Default to it being enabled regardless of
`window-system`.

* lisp/custom.el (custom-initialize-delay): Fox docstring now that
autoload.el preserves the `:initialize` info.
2021-01-19 12:10:48 -05:00
Lars Ingebrigtsen
3c58443855 Only show "2x entries" i vc log buffers if needed
* lisp/vc/vc.el (vc-print-log-setup-buttons): Only show the "more"
buttons if we got more or equal to the number of entries we asked
for (bug#18959).
2021-01-19 17:26:01 +01:00
Mattias Engdegård
5369b69bd8 Parse square root sign in embedded Calc mode
* lisp/calc/calc-lang.el (math-read-big-rec): Recognise √ since it may
be used in Big mode.
2021-01-19 16:11:51 +01:00