unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Samer Masterson <samer@samertm.com>
To: 18108@debbugs.gnu.org
Subject: bug#18108: [PATCH] 24.3.92 : eshell-visual-options fails with some output.
Date: Tue, 24 Feb 2015 02:54:34 -0800	[thread overview]
Message-ID: <1424775274.11596.5@mail.samertm.com> (raw)
In-Reply-To: <CALiJhZ76TrTSmiTWXBnbtqT97gEPFM3g1XQtF5RgqDo_t_dD7A@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2848 bytes --]

Hi,

My copyright papers have been processed. Can we apply this to master?

Best,
Samer

Patch below:

Changes in 3e0d44a..b9f2247
2 files changed, 14 insertions(+), 37 deletions(-)
 ChangeLog | 6 ++++++
 lisp/eshell/em-term.el | 45
++++++++-------------------------------------

 Modified ChangeLog
diff --git a/ChangeLog b/ChangeLog
index 36edfe6..d09380a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2015-01-19 Samer Masterson <samer <at> samertm.com>
+
+	* eshell/em-term.el (eshell-exec-visual, eshell-term-sentinel):
+	Remove eshell-term-sentinel, show term-mode buffer regardless of
+	whether the process has died (bug#18108).
+
 2015-01-04 Paul Eggert <eggert <at> cs.ucla.edu>

  * INSTALL: Mention 'make WERROR_CFLAGS='.
 Modified lisp/eshell/em-term.el
diff --git a/lisp/eshell/em-term.el b/lisp/eshell/em-term.el
index 4a6ac23..6870a6d 100644
--- a/lisp/eshell/em-term.el
+++ b/lisp/eshell/em-term.el
@@ -132,10 +132,6 @@ character to the invoked process."
   :type 'boolean
   :group 'eshell-term)

-;;; Internal Variables:
-
-(defvar eshell-parent-buffer)
-
 ;;; Functions:

 (defun eshell-term-initialize ()
@@ -171,39 +167,14 @@ allowed."
             (cdr args)))))
   (term-buf
    (generate-new-buffer
-	 (concat "*" (file-name-nondirectory program) "*")))
-	 (eshell-buf (current-buffer)))
- (save-current-buffer
- (switch-to-buffer term-buf)
- (term-mode)
- (set (make-local-variable 'term-term-name) eshell-term-name)
- (make-local-variable 'eshell-parent-buffer)
- (setq eshell-parent-buffer eshell-buf)
- (term-exec term-buf program program nil args)
- (let ((proc (get-buffer-process term-buf)))
-	(if (and proc (eq 'run (process-status proc)))
-	 (set-process-sentinel proc 'eshell-term-sentinel)
-	 (error "Failed to invoke visual command")))
- (term-char-mode)
- (if eshell-escape-control-x
-	 (term-set-escape-char ?\C-x))))
- nil)
-
-;; Process sentinels receive two arguments.
-(defun eshell-term-sentinel (proc _string)
- "Destroy the buffer visiting PROC."
- (let ((proc-buf (process-buffer proc)))
- (when (and proc-buf (buffer-live-p proc-buf)
-	 (not (eq 'run (process-status proc)))
-	 (= (process-exit-status proc) 0))
- (if (eq (current-buffer) proc-buf)
-	 (let ((buf (and (boundp 'eshell-parent-buffer)
-	 eshell-parent-buffer
-	 (buffer-live-p eshell-parent-buffer)
-	 eshell-parent-buffer)))
-	 (if buf
-	 (switch-to-buffer buf))))
- (kill-buffer proc-buf))))
+	 (concat "*" (file-name-nondirectory program) "*"))))
+ (switch-to-buffer term-buf)
+ (term-mode)
+ (set (make-local-variable 'term-term-name) eshell-term-name)
+ (term-exec term-buf program program nil args)
+ (term-char-mode)
+ (if eshell-escape-control-x
+ (term-set-escape-char ?\C-x))))

 ;; jww (1999-09-17): The code below will allow Eshell to send input
 ;; characters directly to the currently running interactive process.

[-- Attachment #2: Type: text/html, Size: 4117 bytes --]

  parent reply	other threads:[~2015-02-24 10:54 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-25 19:48 bug#18108: 24.3.92 : eshell-visual-options fails with some output Charles Rendleman
2015-01-19  9:08 ` bug#18108: [PATCH] " samer
2015-02-24 10:54 ` Samer Masterson [this message]
2015-04-06  4:05 ` Samer Masterson
2015-04-09  2:22   ` Stefan Monnier
2015-05-01  6:53     ` Samer Masterson
2015-05-04  1:21       ` Stefan Monnier
2015-05-04 12:57         ` Samer Masterson
2015-05-04 14:14           ` Stefan Monnier
2015-05-04 15:08             ` Samer Masterson
2015-05-04 21:14               ` Stefan Monnier
2015-05-16  3:20                 ` Samer Masterson
2015-05-17 22:02                   ` Samer Masterson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1424775274.11596.5@mail.samertm.com \
    --to=samer@samertm.com \
    --cc=18108@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).