Don't get fooled by open parens in column 0 within strings
* lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Skip defun-prompt-regexp and open-paren-in-0 within strings and comments.
This commit is contained in:
parent
a93c8e36f0
commit
57e2ca5c50
1 changed files with 12 additions and 6 deletions
|
@ -339,12 +339,18 @@ is called as a function to find the defun's beginning."
|
|||
|
||||
((or defun-prompt-regexp open-paren-in-column-0-is-defun-start)
|
||||
(and (< arg 0) (not (eobp)) (forward-char 1))
|
||||
(and (re-search-backward (if defun-prompt-regexp
|
||||
(concat (if open-paren-in-column-0-is-defun-start
|
||||
"^\\s(\\|" "")
|
||||
"\\(?:" defun-prompt-regexp "\\)\\s(")
|
||||
"^\\s(")
|
||||
nil 'move arg)
|
||||
(and (let (found)
|
||||
(while
|
||||
(and (setq found
|
||||
(re-search-backward
|
||||
(if defun-prompt-regexp
|
||||
(concat (if open-paren-in-column-0-is-defun-start
|
||||
"^\\s(\\|" "")
|
||||
"\\(?:" defun-prompt-regexp "\\)\\s(")
|
||||
"^\\s(")
|
||||
nil 'move arg))
|
||||
(nth 8 (syntax-ppss))))
|
||||
found)
|
||||
(progn (goto-char (1- (match-end 0)))
|
||||
t)))
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue