mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-03 22:20:52 -08:00
python.el: Fix shell font-lock multiline input.
Fixes: debbugs:19744 * lisp/progmodes/python.el (python-shell-font-lock-post-command-hook): Handle multiline input.
This commit is contained in:
parent
52df70a887
commit
67dfbd6057
2 changed files with 14 additions and 4 deletions
|
|
@ -1,3 +1,11 @@
|
|||
2015-02-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
|
||||
|
||||
python.el: Fix shell font-lock multiline input. (Bug#19744)
|
||||
|
||||
* progmodes/python.el
|
||||
(python-shell-font-lock-post-command-hook): Handle multiline
|
||||
input.
|
||||
|
||||
2015-02-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
|
||||
|
||||
python.el: Make shell font-lock respect markers. (Bug#19650)
|
||||
|
|
|
|||
|
|
@ -2359,13 +2359,15 @@ goes wrong and syntax highlighting in the shell gets messed up."
|
|||
(let ((input (buffer-substring-no-properties
|
||||
(cdr (python-util-comint-last-prompt)) (point-max)))
|
||||
(pos (point))
|
||||
(buffer-undo-list t))
|
||||
(buffer-undo-list t)
|
||||
(font-lock-buffer-pos nil))
|
||||
;; Keep all markers untouched, this prevents `hippie-expand' and
|
||||
;; others from getting confused. Bug#19650.
|
||||
(insert-before-markers
|
||||
(python-shell-font-lock-with-font-lock-buffer
|
||||
(delete-region (line-beginning-position)
|
||||
(line-end-position))
|
||||
(point-max))
|
||||
(setq font-lock-buffer-pos (point))
|
||||
(insert input)
|
||||
;; Ensure buffer is fontified, keeping it
|
||||
;; compatible with Emacs < 24.4.
|
||||
|
|
@ -2376,8 +2378,8 @@ goes wrong and syntax highlighting in the shell gets messed up."
|
|||
;; they are not overwritten by comint buffer's font lock.
|
||||
(python-util-text-properties-replace-name
|
||||
'face 'font-lock-face)
|
||||
(buffer-substring (line-beginning-position)
|
||||
(line-end-position))))
|
||||
(buffer-substring font-lock-buffer-pos
|
||||
(point-max))))
|
||||
;; Remove non-fontified original text.
|
||||
(delete-region pos (cdr (python-util-comint-last-prompt)))
|
||||
;; Point should be already at pos, this is for extra safety.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue