我用eshell-parse-command 'ls -l'
更換`ls`,我得到這個:我想`LS -l`在ESHELL
(progn (eshell-trap-errors
(eshell-named-command "ls" (list "-l"))))
然後我寫在我的.emacs文件中的別名:
(defalias 'ls
(progn ...))
但我不工作。我不知道爲什麼。
我用eshell-parse-command 'ls -l'
更換`ls`,我得到這個:我想`LS -l`在ESHELL
(progn (eshell-trap-errors
(eshell-named-command "ls" (list "-l"))))
然後我寫在我的.emacs文件中的別名:
(defalias 'ls
(progn ...))
但我不工作。我不知道爲什麼。
將以下代碼添加到您的配置文件中。
(require 'em-alias)
(add-to-list 'eshell-command-aliases-list (list "ls" "ls -l"))
,最簡單的方式來增加別名ESHELL是:
打開ESHELL,
alias alias-name definition
ESHELL會自動將其寫入~/emacs.d/eshell/alias
(不要自行編輯)。
例如:
alias sau sudo aptitude update
然後你可以鍵入sau
推出須藤性向更新。
類型alias
(當然是eshll)會列出你定義的所有別名。
一些有用的別名:
地圖找到文件到FF,那麼你可以用Emacs打開一個文件,FF文件:
alias ff 'find-file $1'
地圖dired到d:
alias d 'dired $1'
Resources: 掌握Eshell
http://www.masteringemacs.org/article/complete-guide-mastering-eshell
如何添加多個別名?我可以在這個(添加到列表)表達式中添加另一個列表嗎?或者我每次添加東西都必須添加一個新的(添加到列表...)? – Nick 2014-11-27 01:47:22
您可以在文件中定義別名。默認別名文件是〜/ .emacs.d/eshell /別名(您可以通過變量eshell-aliases-file更改別名文件)。別名條目就像這個'alias ll ls -l $ *'。另見http://www.gnu.org/software/emacs/manual/html_node/eshell/Aliases.html – syohex 2014-11-27 03:28:56
非常感謝您的解釋。我很關心elisp語法在這裏加入多個列表。在Clojure中,我可以'(conj'(1 2 3)'(4 5 6)'(7 8 9))'在elisp中可以做到嗎? – Nick 2014-11-27 03:35:50