diff options
Diffstat (limited to '.emacs.local.d/modes')
| -rw-r--r-- | .emacs.local.d/modes/eshell.el | 85 | 
1 files changed, 0 insertions, 85 deletions
| diff --git a/.emacs.local.d/modes/eshell.el b/.emacs.local.d/modes/eshell.el deleted file mode 100644 index c9be093..0000000 --- a/.emacs.local.d/modes/eshell.el +++ /dev/null @@ -1,85 +0,0 @@ -(setq eshell-history-size 512) -(setq eshell-prompt-regexp "^.*> ") - -(require 'em-hist)			; So the history vars are defined -(if (boundp 'eshell-save-history-on-exit) -    (setq eshell-save-history-on-exit t)) ; Don't ask, just save -(if (boundp 'eshell-ask-to-save-history) -    (setq eshell-ask-to-save-history 'always)) ; For older(?) version - -(defun eshell/ef (fname-regexp &optional dir) -  (ef fname-regexp (or dir default-directory))) - - -;;; ---- path manipulation - -(defun pwd-repl-home (pwd) -  (interactive) -  (let* ((home (expand-file-name (getenv "HOME"))) -	 (home-len (length home))) -    (if (and -	 (>= (length pwd) home-len) -	 (equal home (substring pwd 0 home-len))) -	(concat "~" (substring pwd home-len)) -      pwd))) - -(defun curr-dir-git-branch-string (pwd) -  "Returns current git branch as a string, or the empty string if -PWD is not in a git repo (or the git command is not found)." -  (interactive) -  (when (and (eshell-search-path "git") -             (locate-dominating-file pwd ".git")) -    (let ((git-output (shell-command-to-string (concat "git branch | grep '\\*' | sed -e 's/^\\* //'")))) -      (concat "[g:" -              (if (> (length git-output) 0) -                  (substring git-output 0 -1) -                "(no branch)") -              "] ")))) - -(defun curr-dir-svn-string (pwd) -  (interactive) -  (when (and (eshell-search-path "svn") -             (locate-dominating-file pwd ".svn")) -    (concat "[s:" -            (cond ((string-match-p "/trunk\\(/.*\\)?" pwd) -                   "trunk") -                  ((string-match "/branches/\\([^/]+\\)\\(/.*\\)?" pwd) -                   (match-string 1 pwd)) -                  (t -                   "(no branch)")) -            "] "))) - -(setq eshell-prompt-function -      (lambda () -        (concat -         (or (curr-dir-git-branch-string (eshell/pwd)) -             (curr-dir-svn-string (eshell/pwd))) -         ((lambda (p-lst) -            (if (> (length p-lst) 3) -                (concat -                 (mapconcat (lambda (elm) (if (zerop (length elm)) "" -                                            (substring elm 0 1))) -                            (butlast p-lst 3) -                            "/") -                 "/" -                 (mapconcat (lambda (elm) elm) -                            (last p-lst 3) -                            "/")) -              (mapconcat (lambda (elm) elm) -                         p-lst -                         "/"))) -          (split-string (pwd-repl-home (eshell/pwd)) "/")) -         "> "))) - -;; ; From http://www.emacswiki.org/cgi-bin/wiki.pl/EshellWThirtyTwo -;; ; Return nil, otherwise you'll see the return from w32-shell-execute -;; (defun eshell/open (file) -;;   "Invoke (w32-shell-execute \"Open\" FILE) and substitute slashes for -;; backslashes" -;;   (w32-shell-execute "Open" (substitute ?\\ ?/ (expand-file-name file))) -;;   nil) - -(add-hook 'eshell-mode-hook -	  (lambda () -            (local-set-key "\C-c\C-q" 'eshell-kill-process) -            (local-set-key "\C-c\C-k" 'compile))) | 
