1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-28 19:42:02 +00:00

* lisp/progmodes/python.el (python-shell-buffer-substring): Handle

cornercase when region sent starts at point-min.
This commit is contained in:
Fabián Ezequiel Gallina 2014-12-27 17:22:29 -03:00
parent a5f38fa1cc
commit 433af0a060
4 changed files with 39 additions and 10 deletions

View File

@ -1,3 +1,8 @@
2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
* progmodes/python.el (python-shell-buffer-substring): Handle
cornercase when region sent starts at point-min.
2014-12-27 Eli Zaretskii <eliz@gnu.org>
* language/misc-lang.el (composition-function-table): Add Syriac

View File

@ -2523,17 +2523,16 @@ the python shell:
4. Wraps indented regions under an \"if True:\" block so the
interpreter evaluates them correctly."
(let* ((substring (buffer-substring-no-properties start end))
(buffer-substring-p (save-restriction
(widen)
(not (equal (list (point-min) (point-max))
(list start end)))))
(starts-at-point-min-p (save-restriction
(widen)
(= (point-min) start)))
(encoding (python-info-encoding))
(fillstr (concat
(when buffer-substring-p
(format "# -*- coding: %s -*-\n" encoding))
(make-string
(- (line-number-at-pos start)
(if buffer-substring-p 2 1)) ?\n)))
(fillstr (when (not starts-at-point-min-p)
(concat
(format "# -*- coding: %s -*-\n" encoding)
(make-string
;; Substract 2 because of the coding cookie.
(- (line-number-at-pos start) 2) ?\n))))
(toplevel-block-p (save-excursion
(goto-char start)
(or (zerop (line-number-at-pos start))

View File

@ -1,3 +1,7 @@
2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
(python-shell-buffer-substring-9): New test.
2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
* automated/python-tests.el (python-shell-buffer-substring-1)

View File

@ -2651,6 +2651,27 @@ class Foo(models.Model):
pass
"))))
(ert-deftest python-shell-buffer-substring-9 ()
"Check substring starting from `point-min'."
(python-tests-with-temp-buffer
"# coding: utf-8
class Foo(models.Model):
pass
class Bar(models.Model):
pass
"
(should (string= (python-shell-buffer-substring
(point-min)
(python-tests-look-at "class Bar(models.Model):"))
"# coding: utf-8
class Foo(models.Model):
pass
"))))
;;; Shell completion