]> git.eshelyaron.com Git - emacs.git/commitdiff
(comint-simple-send): Concat newline before sending.
authorJason Rumney <jasonr@gnu.org>
Sun, 22 Jul 2007 22:55:09 +0000 (22:55 +0000)
committerJason Rumney <jasonr@gnu.org>
Sun, 22 Jul 2007 22:55:09 +0000 (22:55 +0000)
(comint-password-prompt-regexp): Recognize plink's passphrase prompt.

lisp/ChangeLog
lisp/comint.el

index 2d63c163eea7c6178d099b8e75eb62b75b3cc49a..6f3da0130307ce8597b6a258e811e047725260f6 100644 (file)
@@ -1,3 +1,12 @@
+2007-07-22  Jason Rumney  <jasonr@gnu.org>
+
+       * w32-fns.el (set-default-process-coding-system): Use dos line ends
+       for input to cmdproxy on all versions of Windows.
+       Use dos line ends for input to plink.
+
+       * comint.el (comint-simple-send): Concat newline before sending.
+       (comint-password-prompt-regexp): Recognize plink's passphrase prompt.
+
 2007-07-22  Juri Linkov  <juri@jurta.org>
 
        * isearch.el (isearch-edit-string): Save old point and
index 7d81f357e22700080269ce95128edc4730e9a7d9..43d12946fce93f054ceb28c58968eb1facd3e1ae 100644 (file)
@@ -333,12 +333,13 @@ This variable is buffer-local."
 ;; kinit prints a prompt like `Password for devnull@GNU.ORG: '.
 ;; ksu prints a prompt like `Kerberos password for devnull/root@GNU.ORG: '.
 ;; ssh-add prints a prompt like `Enter passphrase: '.
+;; plink prints a prompt like `Passphrase for key "root@GNU.ORG": '.
 ;; Some implementations of passwd use "Password (again)" as the 2nd prompt.
 (defcustom comint-password-prompt-regexp
   "\\(\\([Oo]ld \\|[Nn]ew \\|'s \\|login \\|\
 Kerberos \\|CVS \\|UNIX \\| SMB \\|^\\)\
 \[Pp]assword\\( (again)\\)?\\|\
-pass phrase\\|\\(Enter\\|Repeat\\|Bad\\) passphrase\\)\
+pass phrase\\|\\(Enter \\|Repeat \\|Bad \\)?[Pp]assphrase\\)\
 \\(?:, try again\\)?\\(?: for [^:]+\\)?:\\s *\\'"
   "*Regexp matching prompts for passwords in the inferior process.
 This is used by `comint-watch-for-password-prompt'."
@@ -1953,11 +1954,16 @@ If this takes us past the end of the current line, don't skip at all."
   "Default function for sending to PROC input STRING.
 This just sends STRING plus a newline.  To override this,
 set the hook `comint-input-sender'."
-  (comint-send-string proc string)
-  (if comint-input-sender-no-newline
-      (if (not (string-equal string ""))
-         (process-send-eof))
-    (comint-send-string proc "\n")))
+  (let ((send-string
+         (if comint-input-sender-no-newline
+             string
+           ;; Sending as two separate strings does not work
+           ;; on Windows, so concat the \n before sending.
+           (concat string "\n"))))
+    (comint-send-string proc send-string))
+  (if (and comint-input-sender-no-newline
+          (not (string-equal string "")))
+      (process-send-eof)))
 
 (defun comint-line-beginning-position ()
   "Return the buffer position of the beginning of the line, after any prompt.