branch: externals/ssh-deploy commit b53b8757e7d58884b022387088f3d610830f48b6 Author: Christian Johansson <christ...@cvj.se> Commit: Christian Johansson <christ...@cvj.se>
Improved remote eshell integration --- README.md | 2 +- ssh-deploy.el | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5995f2c..6d23715 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ The `ssh-deploy` plug-in for Emacs makes it possible to effortlessly deploy loca * Control whether uploads of files should be automatic on save * Manual downloads and uploads of directories and files * Automatic and manual detection of remote changes of files -* Launch remote terminals with the integrated `tramp-term` functionality (if it's installed) (SSH) +* Launch remote terminals with the integrated `tramp-term` functionality (if it's installed) or built-in `eshell` (SSH) * Launch remote `eshell` terminals (SSH, FTP) * Launch remote browsing using `dired-mode` * Launch difference sessions using `ediff-mode` diff --git a/ssh-deploy.el b/ssh-deploy.el index 5ea249d..84aaeef 100644 --- a/ssh-deploy.el +++ b/ssh-deploy.el @@ -3,8 +3,8 @@ ;; Author: Christian Johansson <github.com/cjohansson> ;; Maintainer: Christian Johansson <github.com/cjohansson> ;; Created: 5 Jul 2016 -;; Modified: 1 Aug 2017 -;; Version: 1.6 +;; Modified: 3 Aug 2017 +;; Version: 1.61 ;; Keywords: tools, convenience ;; URL: https://github.com/cjohansson/emacs-ssh-deploy @@ -535,9 +535,15 @@ (let ((remote-root (ssh-deploy--parse-remote remote-path))) (let ((command (concat "/" (alist-get 'protocol remote-root) ":" (alist-get 'username remote-root) "@" (alist-get 'server remote-root) ":" (alist-get 'path remote-root)))) (let ((old-directory default-directory)) + (require 'eshell) (message "Opening eshell on '%s'.." command) - (cd command) - (eshell))))))) + (setq eshell-buffer-name (alist-get 'server remote-root)) + (let ((eshell-buffer (eshell))) + (end-of-buffer) + (eshell-kill-input) + (insert (concat "cd " command)) + (eshell-send-input) + (end-of-buffer)))))))) ;;;### autoload (defun ssh-deploy-remote-terminal (remote-host-string)