summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2026-06-01 11:52:53 +0100
committerSean Whitton <spwhitton@spwhitton.name>2026-06-01 11:52:53 +0100
commitb64d1639799fb0f3ec812325eea6384b3231c5e9 (patch)
treea8cdd4722053f9dd21f01d489d2ed4cbbb1a1eee /lisp
parent75d8e5773dede1d6c429bd08a4b8d5a0d87fe87b (diff)
parent2c2f1c00accb7672bea7fa98d5314bfb11edfd7f (diff)
Merge from origin/emacs-31
2c2f1c00acc ; * lisp/vc/vc-dir.el (vc-dir-update): Add an assertion. 51f823a3afa ; * etc/NEWS: Fix annotation. 271cc5c76c0 More tests for fill-paragraph-handle-comment.erts cc9f35c54ba ; * etc/PROBLEMS: Minor fixes of last change. 2727a6f4e8d ; Document problems caused by validation of *.eln files o... f1dd84bec99 ; * lisp/play/doctor.el (doctor-death): Fix Samaritans UR... 0bfbe06090c Update to Org 9.8.5 aac5e0457ae Eglot: replace eglot-prefer-plaintext with eglot-document... ec3d662de0b Make HTML button elements tab-stoppable in eww (bug#81107) # Conflicts: # etc/NEWS
Diffstat (limited to 'lisp')
-rw-r--r--lisp/net/eww.el8
-rw-r--r--lisp/org/org-agenda.el2
-rw-r--r--lisp/org/org-clock.el16
-rw-r--r--lisp/org/org-colview.el1
-rw-r--r--lisp/org/org-table.el8
-rw-r--r--lisp/org/org-timer.el2
-rw-r--r--lisp/org/org-version.el4
-rw-r--r--lisp/org/org.el2
-rw-r--r--lisp/org/ox-koma-letter.el1
-rw-r--r--lisp/org/ox-latex.el2
-rw-r--r--lisp/org/ox-odt.el2
-rw-r--r--lisp/play/doctor.el2
-rw-r--r--lisp/progmodes/eglot.el35
-rw-r--r--lisp/vc/vc-dir.el3
14 files changed, 56 insertions, 32 deletions
diff --git a/lisp/net/eww.el b/lisp/net/eww.el
index 9acbaa52fa9..542afa41180 100644
--- a/lisp/net/eww.el
+++ b/lisp/net/eww.el
@@ -1771,7 +1771,10 @@ just re-display the HTML already fetched."
(put-text-property start (point) 'keymap eww-submit-map)
;; Pretend to touch-screen.el that this is a button.
(put-text-property start (point) 'button t)
- (insert " ")))
+ (insert " ")
+ (put-text-property start (1+ start) 'help-echo "Button")
+ ;; Mark this as an element we can TAB to.
+ (put-text-property start (1+ start) 'shr-tab-stop t)))
(defun eww-form-checkbox (dom)
(let ((start (point)))
@@ -1991,7 +1994,8 @@ See URL `https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input'.")
:value (or (dom-attr dom 'value) "")))))))
(t
(eww-form-text dom)))
- (unless (= start (point))
+ (unless (or (= start (point))
+ (equal type "submit"))
(put-text-property start (1+ start) 'help-echo "Input field")
;; Mark this as an element we can TAB to.
(put-text-property start (1+ start) 'shr-tab-stop t))))
diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el
index dd86a716ac7..481eba50313 100644
--- a/lisp/org/org-agenda.el
+++ b/lisp/org/org-agenda.el
@@ -7875,7 +7875,7 @@ in the agenda."
"Rebuild possibly ALL agenda view(s) in the current buffer."
(interactive "P")
(defvar org-agenda-tag-filter-while-redo) ;FIXME: Where is this var used?
- (let* ((p (or (and (looking-at "\\'") (1- (point))) (point)))
+ (let* ((p (or (and (/= 1 (point)) (looking-at "\\'") (1- (point))) (point)))
(cpa (unless (eq all t) current-prefix-arg))
(org-agenda-doing-sticky-redo org-agenda-sticky)
(org-agenda-sticky nil)
diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el
index ce2d23a9b97..b803d0fe874 100644
--- a/lisp/org/org-clock.el
+++ b/lisp/org/org-clock.el
@@ -1991,13 +1991,15 @@ Optional argument N tells to change by that many units."
(user-error "No active clock"))
(save-excursion ; Do not replace this with `with-current-buffer'.
(with-no-warnings (set-buffer (org-clocking-buffer)))
- (goto-char org-clock-marker)
- (if (looking-back (concat "^[ \t]*" org-clock-string ".*")
- (line-beginning-position))
- (progn (delete-region (1- (line-beginning-position)) (line-end-position))
- (org-remove-empty-drawer-at (point)))
- (message "Clock gone, cancel the timer anyway")
- (sit-for 2)))
+ (save-restriction
+ (widen)
+ (goto-char org-clock-marker)
+ (if (looking-back (concat "^[ \t]*" org-clock-string ".*")
+ (line-beginning-position))
+ (progn (delete-region (1- (line-beginning-position)) (line-end-position))
+ (org-remove-empty-drawer-at (point)))
+ (message "Clock gone, cancel the timer anyway")
+ (sit-for 2))))
(move-marker org-clock-marker nil)
(move-marker org-clock-hd-marker nil)
(setq org-clock-current-task nil)
diff --git a/lisp/org/org-colview.el b/lisp/org/org-colview.el
index 8b97aa2ad01..6eed2351ceb 100644
--- a/lisp/org/org-colview.el
+++ b/lisp/org/org-colview.el
@@ -3,6 +3,7 @@
;; Copyright (C) 2004-2026 Free Software Foundation, Inc.
;; Author: Carsten Dominik <carsten.dominik@gmail.com>
+;; Maintainer: Slawomir Grochowski <slawomir.grochowski@gmail.com>
;; Keywords: outlines, hypermedia, calendar, text
;; URL: https://orgmode.org
;;
diff --git a/lisp/org/org-table.el b/lisp/org/org-table.el
index ba33f6724a0..32cea3e4b0b 100644
--- a/lisp/org/org-table.el
+++ b/lisp/org/org-table.el
@@ -2953,6 +2953,8 @@ known that the table will be realigned a little later anyway."
(log-first-time (current-time))
(log-last-time log-first-time)
(cnt 0)
+ (table-beg org-table-current-begin-pos)
+ (table-end (org-table-end))
beg end eqlcol eqlfield)
;; Insert constants in all formulas.
(when eqlist
@@ -2989,8 +2991,8 @@ existing formula for column %s"
;; Get the correct line range to process.
(if all
(progn
- (setq end (copy-marker (org-table-end)))
- (goto-char (setq beg org-table-current-begin-pos))
+ (setq end (copy-marker table-end))
+ (goto-char (setq beg table-beg))
(cond
((re-search-forward org-table-calculate-mark-regexp end t)
;; This is a table with marked lines, compute selected
@@ -3005,7 +3007,7 @@ existing formula for column %s"
(t nil)))
(setq beg (line-beginning-position)
end (copy-marker (line-beginning-position 2))))
- (org-combine-change-calls beg end
+ (org-combine-change-calls table-beg table-end
(goto-char beg)
;; Mark named fields untouchable. Also check if several
;; field/range formulas try to set the same field.
diff --git a/lisp/org/org-timer.el b/lisp/org/org-timer.el
index 8c9df9d379f..d6d7cfaa43b 100644
--- a/lisp/org/org-timer.el
+++ b/lisp/org/org-timer.el
@@ -436,7 +436,7 @@ using three \\[universal-argument] prefix arguments."
(and (not (equal opt '(64)))
effort-minutes
(number-to-string effort-minutes))
- (and (consp opt) default-timer)
+ (and (consp opt) (not (equal opt '(64))) default-timer)
(and (stringp opt) opt)
(read-from-minibuffer
"How much time left? (minutes or h:mm:ss) "
diff --git a/lisp/org/org-version.el b/lisp/org/org-version.el
index b6a6d1d4eec..f0a212f2ef0 100644
--- a/lisp/org/org-version.el
+++ b/lisp/org/org-version.el
@@ -5,13 +5,13 @@
(defun org-release ()
"The release version of Org.
Inserted by installing Org mode or when a release is made."
- (let ((org-release "9.8.3"))
+ (let ((org-release "9.8.5"))
org-release))
;;;###autoload
(defun org-git-version ()
"The Git version of Org mode.
Inserted by installing Org or when a release is made."
- (let ((org-git-version "release_9.8.3"))
+ (let ((org-git-version "release_9.8.5"))
org-git-version))
(provide 'org-version)
diff --git a/lisp/org/org.el b/lisp/org/org.el
index 84b4f245f8e..ba31ad67bd1 100644
--- a/lisp/org/org.el
+++ b/lisp/org/org.el
@@ -9,7 +9,7 @@
;; URL: https://orgmode.org
;; Package-Requires: ((emacs "28.2"))
-;; Version: 9.8.3
+;; Version: 9.8.5
;; This file is part of GNU Emacs.
;;
diff --git a/lisp/org/ox-koma-letter.el b/lisp/org/ox-koma-letter.el
index 61b624e870d..3a17dceb2fb 100644
--- a/lisp/org/ox-koma-letter.el
+++ b/lisp/org/ox-koma-letter.el
@@ -6,7 +6,6 @@
;; Alan Schmitt <alan.schmitt AT polytechnique DOT org>
;; Viktor Rosenfeld <listuser36 AT gmail DOT com>
;; Rasmus Pank Roulund <emacs AT pank DOT eu>
-;; Maintainer: Marco Wahl <marcowahlsoft@gmail.com>
;; Keywords: org, text, tex
;; This file is part of GNU Emacs.
diff --git a/lisp/org/ox-latex.el b/lisp/org/ox-latex.el
index b4d1ada8d5e..1feddac37cd 100644
--- a/lisp/org/ox-latex.el
+++ b/lisp/org/ox-latex.el
@@ -3,7 +3,7 @@
;; Copyright (C) 2011-2026 Free Software Foundation, Inc.
;; Author: Nicolas Goaziou <n.goaziou at gmail dot com>
-;; Maintainer: Daniel Fleischer <danflscr@gmail.com>
+;; Maintainer: Pedro A. Aranda<paaguti aT gmail DoT com>
;; Keywords: outlines, hypermedia, calendar, text
;; This file is part of GNU Emacs.
diff --git a/lisp/org/ox-odt.el b/lisp/org/ox-odt.el
index 232a643738f..03a47c86995 100644
--- a/lisp/org/ox-odt.el
+++ b/lisp/org/ox-odt.el
@@ -2869,7 +2869,7 @@ Style is a symbol among `quoted', `centered' and nil."
(org-element-lineage
paragraph
'(center-block quote-block section)))
- (center-block 'center)
+ (center-block 'centered)
(quote-block 'quoted)))
(defun org-odt--format-paragraph (paragraph contents info default center quote)
diff --git a/lisp/play/doctor.el b/lisp/play/doctor.el
index 54bdf799f95..7808278518d 100644
--- a/lisp/play/doctor.el
+++ b/lisp/play/doctor.el
@@ -1606,7 +1606,7 @@ Hack on previous word, setting global variable DOCTOR-OWNER to correct result."
(setq doctor--suicide-flag t)
(doctor-type '( If you are really suicidal\, you might
want to contact the Samaritans via
- e-mail: jo@samaritans.org \.
+ https://www.samaritans.org/how-we-can-help/contact-samaritan/ \.
or find a Befrienders crisis center at
https://www.befrienders.org/\ \.
you can also find other suicide crisis lines at
diff --git a/lisp/progmodes/eglot.el b/lisp/progmodes/eglot.el
index e945dfb9739..504a5e12112 100644
--- a/lisp/progmodes/eglot.el
+++ b/lisp/progmodes/eglot.el
@@ -149,6 +149,8 @@
'eglot-managed-mode-hook "1.6")
(define-obsolete-variable-alias 'eglot-confirm-server-initiated-edits
'eglot-confirm-server-edits "1.16")
+(define-obsolete-variable-alias 'eglot-prefer-plaintext
+ 'eglot-documentation-renderer "1.24")
(make-obsolete-variable 'eglot-events-buffer-size
'eglot-events-buffer-config "1.16")
(define-obsolete-function-alias 'eglot--uri-to-path #'eglot-uri-to-path "1.16")
@@ -535,10 +537,21 @@ or file operation kinds not in the alist."
"If non-nil, activate Eglot in cross-referenced non-project files."
:type 'boolean)
-(defcustom eglot-prefer-plaintext nil
- "If non-nil, always request plaintext responses to hover requests."
- :type 'boolean
- :package-version '(Eglot . "1.17.30"))
+(defcustom eglot-documentation-renderer (cond ((eglot--builtin-mdown-p)
+ 'markdown-ts-view-mode)
+ ((fboundp 'gfm-view-mode)
+ 'gfm-view-mode)
+ (t
+ nil))
+ "Control rendering of LSP documentation fragments.
+If set to a major mode symbol `gfm-view-mode' or `markdown-ts-view-mode'
+request markdown-snippets and use the corresponding Markdown renderer.
+If t, always request and render plain text snippets. If set to nil,
+decide dynamically."
+ :type '(choice (const :tag "Plain text" t)
+ (const :tag "Auto-detect" nil)
+ (function :tag "Renderer"))
+ :package-version '(Eglot . "1.24"))
(defcustom eglot-report-progress t
"If non-nil, show progress of long running LSP server work.
@@ -733,7 +746,7 @@ This can be useful when using docker to run a language server.")
(treesit-grammar-location 'markdown)))
(defun eglot--accepted-formats ()
- (if (and (not eglot-prefer-plaintext)
+ (if (and (not (eq t eglot-documentation-renderer))
(or (fboundp 'gfm-view-mode) (eglot--builtin-mdown-p)))
["markdown" "plaintext"]
["plaintext"]))
@@ -2263,12 +2276,14 @@ If MODE, force MODE to be used for fontifying MARKUP."
finally return (buffer-string)))
(calc2 (forced-mode)
(cond
- (forced-mode `(,forced-mode))
- ((eglot--builtin-mdown-p) `(,#'markdown-ts-view-mode))
- ((fboundp 'gfm-view-mode) `(,#'gfm-view-mode ,#'gfm-extract))
- (t `(#'text-mode))))
+ (forced-mode forced-mode)
+ ((fboundp eglot-documentation-renderer) eglot-documentation-renderer)
+ ((eglot--builtin-mdown-p) #'markdown-ts-view-mode)
+ ((fboundp 'gfm-view-mode) #'gfm-view-mode)
+ (t #'text-mode)))
(calc (s &optional (forced-mode mode) &aux (x (calc2 forced-mode)))
- (setq string s render (car x) extract (or (cadr x) #'buffer-string))))
+ (setq string s render x
+ extract (if (eq x 'gfm-view-mode) #'gfm-extract #'buffer-string))))
(cond ((stringp markup) (calc markup)) ; plain string
((setq lang (plist-get markup :language)) ; deprecated MarkedString
(calc (format "```%s\n%s\n```" lang (plist-get markup :value))))
diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el
index 98c69b48691..2cb56aac715 100644
--- a/lisp/vc/vc-dir.el
+++ b/lisp/vc/vc-dir.el
@@ -646,7 +646,8 @@ Also update some VC file properties from ENTRIES."
(or (null next)
(vc-dir-fileinfo->directory (ewoc-data next)))))
(ewoc-delete vc-ewoc crt)))
- (setq crt prev))))))
+ (setq crt prev))))
+ (cl-assert (null to-remove))))
;; Update VC file properties.
(pcase-dolist (`(,file ,state ,_extra) entries)
(vc-file-setprop file 'vc-backend