helm の readme にもありますが
eshell の補完で helm を使うと便利です。
anything にもあったかもしれません。
普段のコマンドとパスの補完は auto-complete でして、
こったコマンドの履歴や一覧から補完候補を選びたい時は helm を使います。
auto-complete を使う部分
;; eshell での補完に auto-complete.el を使う (require 'pcomplete) (add-to-list 'ac-modes 'eshell-mode) (ac-define-source pcomplete '((candidates . pcomplete-completions))) (defun my-ac-eshell-mode () (setq ac-sources '(ac-source-pcomplete ac-source-filename ac-source-files-in-current-dir ac-source-words-in-buffer ac-source-dictionary))) (add-hook 'eshell-mode-hook (lambda () (my-ac-eshell-mode) (define-key eshell-mode-map (kbd "C-i") 'auto-complete) (define-key eshell-mode-map [(tab)] 'auto-complete)))
helm を使う部分
;; helm で履歴から入力 (add-hook 'eshell-mode-hook #'(lambda () (define-key eshell-mode-map (kbd "M-p") 'helm-eshell-history)))
;; helm で補完 (add-hook 'eshell-mode-hook #'(lambda () (define-key eshell-mode-map (kbd "M-n") 'helm-esh-pcomplete)))
普段の補完は TAB を使って auto-complete 、
途中まで入力して一覧から補完したい時は M-n で helm-esh-pcomplete 、
途中まで入力した内容から履歴をたどりたい時は M-p で helm-eshell-history 。
M-n と M-p は適当感あるので別のキーに変更したい。
eshell の face (色) が気にいらない人はテーマで
;; eshell (eshell-ls-executable ((t (:background ,"#色" :foreground ,"#色")))) (eshell-prompt ((t (:background ,"#色" :foreground ,"#色"))))
のように変更すると良いのではないでしょうか。
キャプチャも撮ったけど
なぜかはてなブログにアップロード完了しないのではれませんでした。。