summaryrefslogtreecommitdiffstats
path: root/lisp/init-eshell.el
diff options
context:
space:
mode:
authorMartin Polden <martin.polden@gmail.com>2014-07-05 19:03:59 +0200
committerMartin Polden <martin.polden@gmail.com>2014-07-05 19:03:59 +0200
commit83413e0f0c6172d2dbe5ce116e9b8f169f5b2f0b (patch)
treefffd5f9b228ba64751eff701bad5ffe1302f9d3d /lisp/init-eshell.el
parent62cdd0779da6b27c6db58ab7a85cc8ef8ad82f12 (diff)
Move eshell stuff to separate file
Diffstat (limited to 'lisp/init-eshell.el')
-rw-r--r--lisp/init-eshell.el16
1 files changed, 16 insertions, 0 deletions
diff --git a/lisp/init-eshell.el b/lisp/init-eshell.el
new file mode 100644
index 0000000..e7e37e6
--- /dev/null
+++ b/lisp/init-eshell.el
@@ -0,0 +1,16 @@
+(require 'eshell)
+
+(defun eshell-other-window (&optional noselect)
+ "Create an interactive Eshell buffer in another window."
+ (interactive)
+ (with-current-buffer (get-buffer-create eshell-buffer-name)
+ (unless (eq major-mode 'eshell-mode)
+ (eshell-mode)))
+ (let ((current-window (selected-window)))
+ (switch-to-buffer-other-window eshell-buffer-name)
+ (when noselect
+ (select-window current-window))))
+
+(global-set-key (kbd "C-c k") 'eshell-other-window)
+
+(provide 'init-eshell)