Preserve face text properties in comint prompt.
commit792d44b3c31d2a682607ab8b79ae7d26b7402f41
authorWolfgang Jenkner <wjenkner@inode.at>
Fri, 27 Mar 2015 01:54:39 +0000 (27 02:54 +0100)
committerWolfgang Jenkner <wjenkner@inode.at>
Fri, 27 Mar 2015 02:47:08 +0000 (27 03:47 +0100)
treedacaaf290f706944a8585d7932cf23cacbca24fc
parent1d02107dab6f844a7c537bb5e98aff4e5f061246
Preserve face text properties in comint prompt.

Fixes: debbugs:20084

* lisp/font-lock.el (font-lock--remove-face-from-text-property): New
function.  Adapted from the previously commented out
remove-single-text-property.
Remove previously unused and commented out auxiliary function
remove-text-property and obsolete comment.
* lisp/comint.el (comint-output-filter): Use it to remove
comint-highlight-prompt.
(comint-snapshot-last-prompt, comint-output-filter): Use
font-lock-prepend-text-property for comint-highlight-prompt.
* test/automated/textprop-tests.el: New file.
(textprop-tests-font-lock--remove-face-from-text-property): New test.

Thus, the original face text property of a prompt "candidate" (the
last line of an output chunk not ending with a newline) is
preserved.  This amends the fix for bug#14744.
lisp/ChangeLog
lisp/comint.el
lisp/font-lock.el
test/ChangeLog
test/automated/textprop-tests.el [new file with mode: 0644]