From 4546c748f92f69988370d86a75bd7651434b296f Mon Sep 17 00:00:00 2001 From: Ken Manheimer Date: Sun, 3 Jan 2016 11:16:57 -0500 Subject: [PATCH] multishell.el - Remove (redundant) maintainer line, fix remote cd ordering. Also, remove redundant requires. --- packages/multishell/multishell.el | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/packages/multishell/multishell.el b/packages/multishell/multishell.el index f132d0a41..fb37b2590 100644 --- a/packages/multishell/multishell.el +++ b/packages/multishell/multishell.el @@ -3,8 +3,7 @@ ;; Copyright (C) 1999-2016 Free Software Foundation, Inc. and Ken Manheimer ;; Author: Ken Manheimer -;; Version: 1.0.1 -;; Maintainer: Ken Manheimer +;; Version: 1.0.2 ;; Created: 1999 -- first public availability ;; Keywords: processes ;; URL: https://github.com/kenmanheimer/EmacsUtils @@ -293,16 +292,13 @@ For example: target-shell-buffer-name)) (pop-to-buffer target-shell-buffer-name t)))) - ;; We're in the buffer. + ;; We're in the buffer. Activate: - ;; If we have a use-default-dir, impose it: - (when use-default-dir - (cd use-default-dir)) - - ;; Activate: - - (if (not (comint-check-proc (current-buffer))) - (multishell:start-shell-in-buffer (buffer-name (current-buffer)))) + (cond ((not (comint-check-proc (current-buffer))) + (multishell:start-shell-in-buffer (buffer-name (current-buffer)) + use-default-dir)) + (use-default-dir + (cd use-default-dir))) ;; If the destination buffer has a stopped process, resume it: (let ((process (get-buffer-process (current-buffer)))) @@ -369,14 +365,11 @@ on empty input." (if (string= (substring name -1) "*") (setq name (substring name 0 -1))) name) -(defun multishell:start-shell-in-buffer (buffer-name) +(defun multishell:start-shell-in-buffer (buffer-name dir) "Ensure a shell is started, using whatever name we're passed." ;; We work around shell-mode's bracketing of the buffer name, and do ;; some tramp-mode hygiene for remote connections. - (require 'comint) - (require 'shell) - (let* ((buffer buffer-name) (prog (or explicit-shell-file-name (getenv "ESHELL") @@ -394,6 +387,8 @@ on empty input." (tramp-cleanup-connection (tramp-dissect-file-name default-directory 'noexpand) 'keep-debug 'keep-password)) + (if dir + (cd dir)) (setq buffer (set-buffer (apply 'make-comint (multishell:unbracket-asterisks buffer-name) prog -- 2.39.2