我想在eshell中用`ls -l`替换`ls`

时间:2012-02-09 06:41:20

标签: emacs elisp eshell

我使用eshell-parse-command 'ls -l'我得到了这个:

(progn (eshell-trap-errors
         (eshell-named-command "ls" (list "-l"))))

然后我在.emacs文件中写了一个别名:

(defalias 'ls
  (progn ...))

但我不行。我不知道为什么。

2 个答案:

答案 0 :(得分:3)

将以下代码添加到配置文件中。

(require 'em-alias)
(add-to-list 'eshell-command-aliases-list (list "ls" "ls -l"))

答案 1 :(得分:0)

向eshell添加别名的最简单方法是:

打开eshell,

alias alias-name definition

Eshell会自动将其写入~/emacs.d/eshell/alias(不要自行编辑)。

例如:

alias sau sudo aptitude update

然后您可以输入sau来启动sudo aptitude update。

类型alias(当然是在eshll中)将列出您定义的所有别名。


一些有用的别名:

将查找文件映射到ff,然后您可以使用ff文件在emacs中打开文件:

alias ff 'find-file $1'

将地图转到d:

alias d 'dired $1'

资源: 掌握Eshell

http://www.masteringemacs.org/article/complete-guide-mastering-eshell