| @@ -2150,39 +2150,45 @@ if arg given, use that eshell buffer, otherwise make new eshell buffer." | |||
| (setq eshell-prompt-function | |||
| 'my-eshell-prompt-function) | |||
| (defun my-eshell-prompt-function () | |||
| (with-temp-buffer | |||
| (let (p1 p2 p3 p4) | |||
| (insert ":: [") | |||
| (setq p1 (point)) | |||
| (insert user-login-name | |||
| "@" | |||
| (car (split-string system-name | |||
| "\\.")) | |||
| ) | |||
| (setq p2 (point)) | |||
| (insert ":") | |||
| (setq p3 (point)) | |||
| (insert (abbreviate-file-name default-directory)) | |||
| (setq p4 (point)) | |||
| (insert "]") | |||
| (insert "\n:: ") | |||
| (unless (eq 0 | |||
| (defun my-eshell-prompt-function() | |||
| "Prompt function. | |||
| It looks like: | |||
| :: [10sr@darwin:~/] | |||
| :: $ | |||
| " | |||
| (concat ":: [" | |||
| (let ((str (concat user-login-name | |||
| "@" | |||
| (car (split-string system-name | |||
| "\\.")) | |||
| ))) | |||
| (put-text-property 0 | |||
| (length str) | |||
| 'face | |||
| 'underline | |||
| str) | |||
| str) | |||
| ":" | |||
| (let ((str (abbreviate-file-name default-directory))) | |||
| (put-text-property 0 | |||
| (length str) | |||
| 'face | |||
| 'underline | |||
| str) | |||
| str) | |||
| "]\n:: " | |||
| (if (eq 0 | |||
| eshell-last-command-status) | |||
| (insert (format "[STATUS:%d] " | |||
| eshell-last-command-status))) | |||
| (insert (if (= (user-uid) | |||
| 0) | |||
| "# " | |||
| "$ ")) | |||
| (add-text-properties p1 | |||
| p2 | |||
| '(face underline)) | |||
| (add-text-properties p3 | |||
| p4 | |||
| '(face underline)) | |||
| (buffer-substring (point-min) | |||
| (point-max))))) | |||
| "" | |||
| (format "[STATUS:%d] " | |||
| eshell-last-command-status)) | |||
| (if (= (user-uid) | |||
| 0) | |||
| "# " | |||
| "$ ") | |||
| )) | |||
| (add-hook 'eshell-mode-hook | |||
| (lambda () | |||
| @@ -2207,10 +2213,10 @@ if arg given, use that eshell buffer, otherwise make new eshell buffer." | |||
| 'scroll-down-line) | |||
| (define-key eshell-mode-map (kbd "<down>") | |||
| 'scroll-up-line) | |||
| (define-key eshell-mode-map | |||
| (kbd "C-p") 'eshell-previous-matching-input-from-input) | |||
| (define-key eshell-mode-map | |||
| (kbd "C-n") 'eshell-next-matching-input-from-input) | |||
| ;; (define-key eshell-mode-map | |||
| ;; (kbd "C-p") 'eshell-previous-matching-input-from-input) | |||
| ;; (define-key eshell-mode-map | |||
| ;; (kbd "C-n") 'eshell-next-matching-input-from-input) | |||
| (apply 'eshell/addpath exec-path) | |||
| (set (make-local-variable 'scroll-margin) 0) | |||