[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r115736: * lisp/progmodes/python.el (python-nav-begi
From: |
Fabián Ezequiel Gallina |
Subject: |
[Emacs-diffs] trunk r115736: * lisp/progmodes/python.el (python-nav-beginning-of-statement): Speed |
Date: |
Tue, 24 Dec 2013 19:49:12 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 115736
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/15295
committer: Fabián Ezequiel Gallina <address@hidden>
branch nick: trunk
timestamp: Tue 2013-12-24 16:48:40 -0300
message:
* lisp/progmodes/python.el (python-nav-beginning-of-statement): Speed
up.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/progmodes/python.el python.el-20091113204419-o5vbwnq5f7feedwu-3008
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-12-24 18:07:55 +0000
+++ b/lisp/ChangeLog 2013-12-24 19:48:40 +0000
@@ -1,3 +1,8 @@
+2013-12-24 Fabián Ezequiel Gallina <address@hidden>
+
+ * progmodes/python.el (python-nav-beginning-of-statement): Speed
+ up (Bug#15295).
+
2013-12-24 Lars Ingebrigtsen <address@hidden>
* net/eww.el (eww-bookmark-browse): Use `quit-window' to restore
=== modified file 'lisp/progmodes/python.el'
--- a/lisp/progmodes/python.el 2013-12-13 00:56:12 +0000
+++ b/lisp/progmodes/python.el 2013-12-24 19:48:40 +0000
@@ -1279,15 +1279,21 @@
(defun python-nav-beginning-of-statement ()
"Move to start of current statement."
(interactive "^")
- (while (and (or (back-to-indentation) t)
- (not (bobp))
- (when (or
- (save-excursion
- (forward-line -1)
- (python-info-line-ends-backslash-p))
- (python-syntax-context 'string)
- (python-syntax-context 'paren))
- (forward-line -1))))
+ (back-to-indentation)
+ (let* ((ppss (syntax-ppss))
+ (context-point
+ (or
+ (python-syntax-context 'paren ppss)
+ (python-syntax-context 'string ppss))))
+ (cond ((bobp))
+ (context-point
+ (goto-char context-point)
+ (python-nav-beginning-of-statement))
+ ((save-excursion
+ (forward-line -1)
+ (python-info-line-ends-backslash-p))
+ (forward-line -1)
+ (python-nav-beginning-of-statement))))
(point-marker))
(defun python-nav-end-of-statement (&optional noend)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r115736: * lisp/progmodes/python.el (python-nav-beginning-of-statement): Speed,
Fabián Ezequiel Gallina <=