summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.emacs.d/eshell/alias3
-rw-r--r--.emacs.d/eshell/profile2
-rw-r--r--.emacs.d/init.el29
-rwxr-xr-xbin/dired~ (renamed from bin/dired)0
4 files changed, 34 insertions, 0 deletions
diff --git a/.emacs.d/eshell/alias b/.emacs.d/eshell/alias
new file mode 100644
index 00000000..a272cd45
--- /dev/null
+++ b/.emacs.d/eshell/alias
@@ -0,0 +1,3 @@
+alias ff find-file $1
+alias g git $*
+alias d dired $1
diff --git a/.emacs.d/eshell/profile b/.emacs.d/eshell/profile
new file mode 100644
index 00000000..1fad3fe5
--- /dev/null
+++ b/.emacs.d/eshell/profile
@@ -0,0 +1,2 @@
+# tell commands that they can go ahead and emit ANSI colour sequences
+export TERM=vt100
diff --git a/.emacs.d/init.el b/.emacs.d/init.el
index f7eafbc7..abace375 100644
--- a/.emacs.d/init.el
+++ b/.emacs.d/init.el
@@ -148,6 +148,8 @@
(add-hook 'term-mode-hook (lambda ()
(setq show-trailing-whitespace nil)
(goto-address-mode)))
+(add-hook 'eshell-mode-hook (lambda ()
+ (setq show-trailing-whitespace nil)))
;; don't prompt to create scratch buffers
(setq confirm-nonexistent-file-or-buffer nil)
@@ -808,6 +810,33 @@
:diminish yas-global-mode
:idle (yas-global-mode))
+;;; eshell's plan9-style smart shell
+
+(use-package em-smart
+ :init (progn
+ (setq eshell-where-to-jump 'begin
+ eshell-review-quick-commands nil
+ eshell-smart-space-goes-to-end t)))
+
+;;; easily switch between eshells
+
+(use-package shell-switcher
+ :ensure
+ :init (progn (setq shell-switcher-mode t
+ shell-switcher-ask-before-creating-new t)
+
+ (define-key shell-switcher-mode-map (kbd "C-c s")
+ 'shell-switcher-switch-buffer)
+ (define-key shell-switcher-mode-map (kbd "C-c 4 s")
+ 'shell-switcher-switch-buffer-other-window)
+
+ (defadvice shell-switcher-switch-buffer (around shell-switcher-switch-buffer-add-arg (arg) activate)
+ "Use the universal argument to create new
+ shells, rather than binding another key
+ to (shell-switcher-new-shell)"
+ (interactive "P")
+ (if arg (shell-switcher-new-shell) ad-do-it))))
+
;;;; ---- functions ----
;; backwards and forward deletions of words
diff --git a/bin/dired b/bin/dired~
index 6b3199c3..6b3199c3 100755
--- a/bin/dired
+++ b/bin/dired~