--- Begin Message ---
Subject: |
25.0.50; python-shell-buffer-substring adds bogus if True: to unindented line |
Date: |
Wed, 05 Aug 2015 13:04:17 +0200 |
Hello!
The function `python-shell-buffer-substring' can get confused when it is
used to send a substring of a line. It tries to add if True: around an
indented piece of code to prevent indentation errors, but it fails at
detecting indented code correctly:
(with-temp-buffer
(insert "def foo():\n"
" print('a')\n")
(re-search-backward "print")
(python-shell-buffer-substring (point) (point-at-eol) t))
=>
"if True:
print('a')"
Note that the "print" line in the resulting code is not indented.
The expected result would be either "print('a')" or
"if True:\n print('a')".
Regards,
Jorgen
--- End Message ---
--- Begin Message ---
Subject: |
24.5; python.el: python-shell-buffer-substring fails under certain circumstances |
Date: |
Sun, 23 Aug 2015 20:01:15 -0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5.50 (gnu/linux) |
Fixed in master at af013e0.
I installed a different patch that seems to be more robust on various
conditions (see tests).
Thanks for such detailed report,
Fabián.
--- End Message ---