]> code.delx.au - gnu-emacs/commitdiff
* lisp/comint.el (comint-line-beginning-position): Revert searching for
authorJuri Linkov <juri@linkov.net>
Thu, 19 Feb 2015 19:28:41 +0000 (21:28 +0200)
committerJuri Linkov <juri@linkov.net>
Thu, 19 Feb 2015 19:28:41 +0000 (21:28 +0200)
the prompt when comint-use-prompt-regexp is non-nil because it
doesn't distinguish input from output.  Check the field property
`output' for the case when comint-use-prompt-regexp is nil.

Fixes: debbugs:19710
lisp/ChangeLog
lisp/comint.el

index 6373df64e91c076805c3d6b979cf532df9112432..22e952a91e6bac9125cd88abcc44ed5ad8c2a9ad 100644 (file)
@@ -1,3 +1,11 @@
+2015-02-19  Juri Linkov  <juri@linkov.net>
+
+       * comint.el (comint-line-beginning-position): Revert searching for
+       the prompt when comint-use-prompt-regexp is non-nil because it
+       doesn't distinguish input from output.  Check the field property
+       `output' for the case when comint-use-prompt-regexp is nil.
+       (Bug#19710)
+
 2015-02-15  Jérémy Compostella  <jeremy.compostella@gmail.com>
 
        * net/tramp-sh.el (tramp-remote-process-environment): Disable paging
index c81551acd5fc70dc057f081eb852cd0b9cc23208..68b8edbb8ca428a2c3ada055a239c1de26898bb1 100644 (file)
@@ -2267,8 +2267,6 @@ a buffer local variable."
       ;; Use comint-prompt-regexp
       (save-excursion
        (beginning-of-line)
-       (unless (looking-at comint-prompt-regexp)
-         (re-search-backward comint-prompt-regexp nil t))
        (comint-skip-prompt)
        (point))
     ;; Use input fields.  Note that, unlike the behavior of
@@ -2278,7 +2276,10 @@ a buffer local variable."
     ;; if there are two fields on a line, then the first one is the
     ;; prompt, and the second one is an input field, and is front-sticky
     ;; (as input fields should be).
-    (constrain-to-field (field-beginning) (line-end-position))))
+    (constrain-to-field (if (eq (field-at-pos (point)) 'output)
+                            (line-beginning-position)
+                          (field-beginning))
+                        (line-end-position))))
 
 (defun comint-bol (&optional arg)
   "Go to the beginning of line, then skip past the prompt, if any.