aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris2020-04-13 09:02:29 -0700
committerGlenn Morris2020-04-13 09:02:29 -0700
commit0a4b992c422d98fbb351d3b03265eb1029012c1d (patch)
tree8216a67339ed2fecc3d889678278b9a3cb7fb914 /lisp
parentd0b9cf876fa62e3584a062e123a87e28278782cf (diff)
parent1dfc497fac22c199a944ef64233266bd6cd2fee6 (diff)
downloademacs-0a4b992c422d98fbb351d3b03265eb1029012c1d.tar.gz
emacs-0a4b992c422d98fbb351d3b03265eb1029012c1d.zip
Merge from origin/emacs-27
1dfc497fac Minor wording change in Introduction to Programming in Ema... ff09b4eeac Fix 'flymake-show-diagnostics-buffer' when line numbers ar... 63e8d0ea87 Fix last changes describing mail commands 01212a762f Do setup Flymake in file-less Elisp buffers 36873ef2b2 Fix error message for ‘cl-struct-unknown-slot’ (bug#39995) 3f9310b0fe Fix and improve documentation of mail-related features 1482a75efa Fix build failure with Fx_gtk_debug cf57663f2a Mention jit-lock deferred as an alternative to fast-but-im... # Conflicts: # etc/NEWS
Diffstat (limited to 'lisp')
-rw-r--r--lisp/emacs-lisp/cl-macs.el2
-rw-r--r--lisp/mail/sendmail.el2
-rw-r--r--lisp/progmodes/elisp-mode.el6
-rw-r--r--lisp/progmodes/flymake.el65
-rw-r--r--lisp/simple.el8
5 files changed, 47 insertions, 36 deletions
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 45a308ebcac..bb10194a946 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -3118,7 +3118,7 @@ slots skipped by :initial-offset may appear in the list."
3118 descs))) 3118 descs)))
3119 (nreverse descs))) 3119 (nreverse descs)))
3120 3120
3121(define-error 'cl-struct-unknown-slot "struct %S has no slot %S") 3121(define-error 'cl-struct-unknown-slot "struct has no slot")
3122 3122
3123(defun cl-struct-slot-offset (struct-type slot-name) 3123(defun cl-struct-slot-offset (struct-type slot-name)
3124 "Return the offset of slot SLOT-NAME in STRUCT-TYPE. 3124 "Return the offset of slot SLOT-NAME in STRUCT-TYPE.
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el
index 14adb5a195d..65d598c3bac 100644
--- a/lisp/mail/sendmail.el
+++ b/lisp/mail/sendmail.el
@@ -73,7 +73,7 @@ Otherwise, most addresses look like `angles', but they look like
73 :version "27.1") 73 :version "27.1")
74(make-obsolete-variable 74(make-obsolete-variable
75 'mail-from-style 75 'mail-from-style
76 "only the `angles' value is valid according to RFC2822." "27.1" 'set) 76 "only the `angles' value is valid according to RFC5322." "27.1" 'set)
77 77
78;;;###autoload 78;;;###autoload
79(defcustom mail-specify-envelope-from nil 79(defcustom mail-specify-envelope-from nil
diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el
index 20ec370dcb6..f85fd771ca8 100644
--- a/lisp/progmodes/elisp-mode.el
+++ b/lisp/progmodes/elisp-mode.el
@@ -291,9 +291,9 @@ Blank lines separate paragraphs. Semicolons start comments.
291 (unless 291 (unless
292 (let* ((bfname (buffer-file-name)) 292 (let* ((bfname (buffer-file-name))
293 (fname (and (stringp bfname) (file-name-nondirectory bfname)))) 293 (fname (and (stringp bfname) (file-name-nondirectory bfname))))
294 (or (not (stringp fname)) 294 (and (stringp fname)
295 (string-match "\\`\\.#" fname) 295 (or (string-match "\\`\\.#" fname)
296 (string-equal dir-locals-file fname))) 296 (string-equal dir-locals-file fname))))
297 (add-hook 'flymake-diagnostic-functions #'elisp-flymake-checkdoc nil t) 297 (add-hook 'flymake-diagnostic-functions #'elisp-flymake-checkdoc nil t)
298 (add-hook 'flymake-diagnostic-functions 298 (add-hook 'flymake-diagnostic-functions
299 #'elisp-flymake-byte-compile nil t))) 299 #'elisp-flymake-byte-compile nil t)))
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 25a2152f005..7fca9dac1af 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -1321,35 +1321,42 @@ POS can be a buffer position or a button"
1321 (flymake-show-diagnostic (if (button-type pos) (button-start pos) pos)))) 1321 (flymake-show-diagnostic (if (button-type pos) (button-start pos) pos))))
1322 1322
1323(defun flymake--diagnostics-buffer-entries () 1323(defun flymake--diagnostics-buffer-entries ()
1324 (with-current-buffer flymake--diagnostics-buffer-source 1324 ;; Do nothing if 'flymake--diagnostics-buffer-source' has not yet
1325 (cl-loop for diag in 1325 ;; been set to a valid buffer. This could happen when this function
1326 (cl-sort (flymake-diagnostics) #'< :key #'flymake-diagnostic-beg) 1326 ;; is called too early. For example 'global-display-line-numbers-mode'
1327 for (line . col) = 1327 ;; calls us from its mode hook, when the diagnostic buffer has just
1328 (save-excursion 1328 ;; been created by 'flymake-show-diagnostics-buffer', but is not yet
1329 (goto-char (flymake--diag-beg diag)) 1329 ;; set up properly.
1330 (cons (line-number-at-pos) 1330 (when (bufferp flymake--diagnostics-buffer-source)
1331 (- (point) 1331 (with-current-buffer flymake--diagnostics-buffer-source
1332 (line-beginning-position)))) 1332 (cl-loop for diag in
1333 for type = (flymake--diag-type diag) 1333 (cl-sort (flymake-diagnostics) #'< :key #'flymake-diagnostic-beg)
1334 collect 1334 for (line . col) =
1335 (list (list :diagnostic diag 1335 (save-excursion
1336 :line line 1336 (goto-char (flymake--diag-beg diag))
1337 :severity (flymake--lookup-type-property 1337 (cons (line-number-at-pos)
1338 type 1338 (- (point)
1339 'severity (warning-numeric-level :error))) 1339 (line-beginning-position))))
1340 `[,(format "%s" line) 1340 for type = (flymake--diag-type diag)
1341 ,(format "%s" col) 1341 collect
1342 ,(propertize (format "%s" 1342 (list (list :diagnostic diag
1343 (flymake--lookup-type-property 1343 :line line
1344 type 'flymake-type-name type)) 1344 :severity (flymake--lookup-type-property
1345 'face (flymake--lookup-type-property 1345 type
1346 type 'mode-line-face 'flymake-error)) 1346 'severity (warning-numeric-level :error)))
1347 (,(format "%s" (flymake--diag-text diag)) 1347 `[,(format "%s" line)
1348 mouse-face highlight 1348 ,(format "%s" col)
1349 help-echo "mouse-2: visit this diagnostic" 1349 ,(propertize (format "%s"
1350 face nil 1350 (flymake--lookup-type-property
1351 action flymake-goto-diagnostic 1351 type 'flymake-type-name type))
1352 mouse-action flymake-goto-diagnostic)])))) 1352 'face (flymake--lookup-type-property
1353 type 'mode-line-face 'flymake-error))
1354 (,(format "%s" (flymake--diag-text diag))
1355 mouse-face highlight
1356 help-echo "mouse-2: visit this diagnostic"
1357 face nil
1358 action flymake-goto-diagnostic
1359 mouse-action flymake-goto-diagnostic)])))))
1353 1360
1354(define-derived-mode flymake-diagnostics-buffer-mode tabulated-list-mode 1361(define-derived-mode flymake-diagnostics-buffer-mode tabulated-list-mode
1355 "Flymake diagnostics" 1362 "Flymake diagnostics"
diff --git a/lisp/simple.el b/lisp/simple.el
index 91736a60730..7c8ac413d35 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -8057,8 +8057,12 @@ OTHER-HEADERS is an alist specifying additional
8057header fields. Elements look like (HEADER . VALUE) where both 8057header fields. Elements look like (HEADER . VALUE) where both
8058HEADER and VALUE are strings. 8058HEADER and VALUE are strings.
8059 8059
8060CONTINUE, if non-nil, says to continue editing a message already 8060By default, if an unsent message is already being composed, this
8061being composed. Interactively, CONTINUE is the prefix argument. 8061command will ask whether to erase the unsent message, and will not
8062start a new message if the user doesn't allow erasing. However, if
8063CONTINUE is non-nil, it means to continue editing a message already
8064being composed without asking. Interactively, CONTINUE is the prefix
8065argument.
8062 8066
8063SWITCH-FUNCTION, if non-nil, is a function to use to 8067SWITCH-FUNCTION, if non-nil, is a function to use to
8064switch to and display the buffer used for mail composition. 8068switch to and display the buffer used for mail composition.