summaryrefslogtreecommitdiff
path: root/lisp/progmodes/python.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2013-02-18 19:29:28 -0800
committerGlenn Morris <rgm@gnu.org>2013-02-18 19:29:28 -0800
commit872faefb07a9196a583fc8cbe146ab6a2ebc9c2b (patch)
tree5502bf8472fb7d132c03de2240ce403b502f8995 /lisp/progmodes/python.el
parent8ca4f1e02e22f74dc269b01bc4a32e01dd226dae (diff)
parent2af3b9c16e340ad034e57e949f09bbafc00bd52c (diff)
downloademacs-872faefb07a9196a583fc8cbe146ab6a2ebc9c2b.tar.gz
Merge from emacs-24; up to 2012-12-20T16:09:05Z!dmantipov@yandex.ru
Diffstat (limited to 'lisp/progmodes/python.el')
-rw-r--r--lisp/progmodes/python.el25
1 files changed, 12 insertions, 13 deletions
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index eadb06fa61e..da56fe70329 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -708,10 +708,9 @@ START is the buffer position where the sexp starts."
;; After backslash
((setq start (when (not (or (python-syntax-context 'string ppss)
(python-syntax-context 'comment ppss)))
- (let ((line-beg-pos (line-beginning-position)))
- (when (python-info-line-ends-backslash-p
- (1- line-beg-pos))
- (- line-beg-pos 2)))))
+ (let ((line-beg-pos (line-number-at-pos)))
+ (python-info-line-ends-backslash-p
+ (1- line-beg-pos)))))
'after-backslash)
;; After beginning of block
((setq start (save-excursion
@@ -3115,7 +3114,7 @@ With optional argument LINE-NUMBER, check that line instead."
(save-restriction
(widen)
(when line-number
- (goto-char line-number))
+ (python-util-goto-line line-number))
(while (and (not (eobp))
(goto-char (line-end-position))
(python-syntax-context 'paren)
@@ -3131,7 +3130,7 @@ Optional argument LINE-NUMBER forces the line number to check against."
(save-restriction
(widen)
(when line-number
- (goto-char line-number))
+ (python-util-goto-line line-number))
(when (python-info-line-ends-backslash-p)
(while (save-excursion
(goto-char (line-beginning-position))
@@ -3210,7 +3209,9 @@ operator."
(defun python-info-current-line-comment-p ()
"Check if current line is a comment line."
- (char-equal (or (char-after (+ (point) (current-indentation))) ?_) ?#))
+ (char-equal
+ (or (char-after (+ (line-beginning-position) (current-indentation))) ?_)
+ ?#))
(defun python-info-current-line-empty-p ()
"Check if current line is empty, ignoring whitespace."
@@ -3225,12 +3226,10 @@ operator."
;;; Utility functions
-(defun python-util-position (item seq)
- "Find the first occurrence of ITEM in SEQ.
-Return the index of the matching item, or nil if not found."
- (let ((member-result (member item seq)))
- (when member-result
- (- (length seq) (length member-result)))))
+(defun python-util-goto-line (line-number)
+ "Move point to LINE-NUMBER."
+ (goto-char (point-min))
+ (forward-line (1- line-number)))
;; Stolen from org-mode
(defun python-util-clone-local-variables (from-buffer &optional regexp)