[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/slime bd1ec52c61: Fix top-level defvar detection in slime-
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/slime bd1ec52c61: Fix top-level defvar detection in slime-eval-defun |
Date: |
Fri, 5 Jul 2024 13:01:06 -0400 (EDT) |
branch: elpa/slime
commit bd1ec52c6162325e3674281c5cba06c835935743
Author: Hraban Luyat <hraban@0brg.net>
Commit: Stas Boukarev <stassats@gmail.com>
Fix top-level defvar detection in slime-eval-defun
Using ‘(string-match "^..." ..)’ would match against the beginning of every
line, not just the start of the string. This trips over docstrings which
have
a (defvar..), e.g. in example usage.
Compare the old and new implementation on:
(defun foo (x)
"Foo something
Example:
(defvar y 10)
(foo y)
=> 100
"
(* x x))
I think ‘string-prefix-p’ goes back at least to 24.1, if even earlier
support is
needed maybe we should use a different regex instead?
---
slime.el | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/slime.el b/slime.el
index 839ebc82db..9832937d87 100644
--- a/slime.el
+++ b/slime.el
@@ -4118,7 +4118,7 @@ inserted in the current buffer."
Use `slime-re-evaluate-defvar' if the from starts with '(defvar'"
(interactive)
(let ((form (slime-defun-at-point)))
- (cond ((string-match "^(defvar " form)
+ (cond ((string-prefix-p "(defvar " form t)
(slime-re-evaluate-defvar form))
(t
(slime-interactive-eval form)))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [nongnu] elpa/slime bd1ec52c61: Fix top-level defvar detection in slime-eval-defun,
ELPA Syncer <=