summaryrefslogtreecommitdiffstats
path: root/lisp/bandali-eshell.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/bandali-eshell.el')
-rw-r--r--lisp/bandali-eshell.el86
1 files changed, 0 insertions, 86 deletions
diff --git a/lisp/bandali-eshell.el b/lisp/bandali-eshell.el
deleted file mode 100644
index 820dc05..0000000
--- a/lisp/bandali-eshell.el
+++ /dev/null
@@ -1,86 +0,0 @@
-;;; bandali-eshell.el --- bandali's Eshell setup -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2018-2020 Amin Bandali
-
-;; Author: Amin Bandali <bandali@gnu.org>
-;; Keywords: processes
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;; My awesome Eshell setup.
-
-;;; Code:
-
-(with-eval-after-load 'eshell
- (make-directory (b/etc "eshell/") t)
- (csetq
- eshell-aliases-file (b/etc "eshell/aliases")
- eshell-directory-name (b/var "eshell/")
- eshell-hist-ignoredups t
- eshell-input-filter #'eshell-input-filter-initial-space
- eshell-prompt-regexp "\\(.*\n\\)*[$#] "
- eshell-prompt-function
- (lambda ()
- (concat
- (propertize (format "%s@%s:" (user-login-name) (system-name))
- 'face 'default)
- (propertize (abbreviate-file-name default-directory)
- 'face 'font-lock-comment-face)
- (propertize "\n" 'face 'default)
- (if (= (user-uid) 0)
- (propertize "#" 'face 'red)
- (propertize "$" 'face 'default))
- (propertize " " 'face 'default))))
- (eval-when-compile
- (defvar eshell-prompt-regexp)
- (declare-function eshell-life-is-too-much "esh-mode")
- (declare-function eshell-send-input "esh-mode"
- (&optional use-region queue-p no-newline)))
- (defun b/eshell-quit-or-delete-char (arg)
- (interactive "p")
- (if (and (eolp) (looking-back eshell-prompt-regexp nil))
- (eshell-life-is-too-much)
- (delete-char arg)))
- (defun b/eshell-clear ()
- (interactive)
- (let ((inhibit-read-only t))
- (erase-buffer))
- (eshell-send-input))
- (defun b/eshell-setup ()
- (make-local-variable 'company-idle-delay)
- (defvar company-idle-delay)
- (eval-when-compile
- (defvar eshell-mode-map)
- (defvar eshell-hist-mode-map))
- (setq company-idle-delay nil)
- ;; local key bindings
- (define-key eshell-mode-map (kbd "C-d")
- #'b/eshell-quit-or-delete-char)
- (define-key eshell-mode-map (kbd "C-S-l")
- #'b/eshell-clear)
- (define-key eshell-mode-map (kbd "M-r")
- #'counsel-esh-history)
- ;; (define-key eshell-mode-map [tab]
- ;; #'company-complete)
- (define-key eshell-hist-mode-map (kbd "M-r")
- #'counsel-esh-history)))
-;; global key bindings
-(global-set-key (kbd "C-c a s e") #'eshell)
-;; hooks
-(add-hook 'eshell-mode-hook #'b/eshell-setup)
-
-(provide 'bandali-eshell)
-;;; bandali-eshell.el ends here