2006-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
+ * progmodes/python.el (python-continuation-line-p)
+ (python-beginning-of-statement): syntax-ppss may return
+ a negative depth.
+
* time-stamp.el (time-stamp-start, time-stamp-end)
(time-stamp-inserts-lines): Tighten up a bit the safety predicate.
comments and strings, or that the bracket/paren nesting depth is nonzero."
(or (and (eq ?\\ (char-before (line-end-position 0)))
(not (syntax-ppss-context (syntax-ppss))))
- (/= 0 (syntax-ppss-depth
- (save-excursion ; syntax-ppss with arg changes point
- (syntax-ppss (line-beginning-position)))))))
+ (< 0 (syntax-ppss-depth
+ (save-excursion ; syntax-ppss with arg changes point
+ (syntax-ppss (line-beginning-position)))))))
(defun python-comment-line-p ()
"Return non-nil iff current line has only a comment."
(python-beginning-of-string)
;; Skip forward out of nested brackets.
(condition-case () ; beware invalid syntax
- (progn (backward-up-list (syntax-ppss-depth (syntax-ppss))) t)
+ (let ((depth (syntax-ppss-depth (syntax-ppss))))
+ ;; Beware negative depths.
+ (if (> depth 0) (backward-up-list depth))
+ t)
(error (throw 'foo nil))))))
(back-to-indentation))
(if (featurep 'hippie-exp)
(set (make-local-variable 'hippie-expand-try-functions-list)
(cons 'python-try-complete hippie-expand-try-functions-list)))
- (unless font-lock-mode (font-lock-mode 1))
(when python-guess-indent (python-guess-indent))
(set (make-local-variable 'python-command) python-python-command)
(unless (boundp 'python-mode-running) ; kill the recursion from jython-mode