From a5ee08bef3a587256bf5301788070dc1f8b4d8af Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Fri, 18 Dec 2015 01:09:53 +0100 Subject: Move raise-eshell to eshell library --- emacs/.emacs.d/site-lisp/oni-eshell.el | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'emacs/.emacs.d/site-lisp/oni-eshell.el') diff --git a/emacs/.emacs.d/site-lisp/oni-eshell.el b/emacs/.emacs.d/site-lisp/oni-eshell.el index 988afd2..e40d893 100644 --- a/emacs/.emacs.d/site-lisp/oni-eshell.el +++ b/emacs/.emacs.d/site-lisp/oni-eshell.el @@ -61,6 +61,23 @@ directory in it." (kill-buffer) (signal (car err) (cdr err)))))) +;;;###autoload +(defun oni:raise-eshell () + "Start or switch back to `eshell'. + +Also change directories to current working directory." + (interactive) + (let ((dir (file-name-directory + (or (buffer-file-name) "~/"))) + (hasfile (not (eq (buffer-file-name) nil))) + (started (and (boundp 'eshell-buffer-name) eshell-buffer-name + (buffer-live-p (get-buffer eshell-buffer-name))))) + (eshell) + (when (and hasfile (eq eshell-process-list nil)) + (eshell/cd dir) + (when started + (eshell-reset))))) + ;;;###autoload (defun oni:set-keys-for-eshell () "Set some keybindings for `eshell'." -- cgit v1.2.3-54-g00ecf