aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes/python.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/progmodes/python.el')
-rw-r--r--lisp/progmodes/python.el24
1 files changed, 15 insertions, 9 deletions
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index aeee179c7e7..07a8bba6b18 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -1279,15 +1279,21 @@ nested definitions."
1279(defun python-nav-beginning-of-statement () 1279(defun python-nav-beginning-of-statement ()
1280 "Move to start of current statement." 1280 "Move to start of current statement."
1281 (interactive "^") 1281 (interactive "^")
1282 (while (and (or (back-to-indentation) t) 1282 (back-to-indentation)
1283 (not (bobp)) 1283 (let* ((ppss (syntax-ppss))
1284 (when (or 1284 (context-point
1285 (save-excursion 1285 (or
1286 (forward-line -1) 1286 (python-syntax-context 'paren ppss)
1287 (python-info-line-ends-backslash-p)) 1287 (python-syntax-context 'string ppss))))
1288 (python-syntax-context 'string) 1288 (cond ((bobp))
1289 (python-syntax-context 'paren)) 1289 (context-point
1290 (forward-line -1)))) 1290 (goto-char context-point)
1291 (python-nav-beginning-of-statement))
1292 ((save-excursion
1293 (forward-line -1)
1294 (python-info-line-ends-backslash-p))
1295 (forward-line -1)
1296 (python-nav-beginning-of-statement))))
1291 (point-marker)) 1297 (point-marker))
1292 1298
1293(defun python-nav-end-of-statement (&optional noend) 1299(defun python-nav-end-of-statement (&optional noend)