summaryrefslogtreecommitdiff
path: root/doc/misc/eshell.texi
diff options
context:
space:
mode:
authorNoam Postavsky <npostavs@gmail.com>2017-09-29 21:00:10 -0400
committerNoam Postavsky <npostavs@gmail.com>2017-09-30 20:01:33 -0400
commitba9139c501ed8220980e898f127e293e8f263ea1 (patch)
treee37da419afa420a660c37cf67ca5fd2a705cacd2 /doc/misc/eshell.texi
parent43fac3beae75a38cf758ec94039c0d7a4edc9399 (diff)
downloademacs-ba9139c501ed8220980e898f127e293e8f263ea1.tar.gz
emacs-ba9139c501ed8220980e898f127e293e8f263ea1.tar.bz2
emacs-ba9139c501ed8220980e898f127e293e8f263ea1.zip
Revert "Don't lose arguments to eshell aliases (Bug#27954)"
It broke the established argument handling methods provided by eshell aliases (Bug#28568). * doc/misc/eshell.texi (Aliases): Fix example, call out use of arguments in aliases. * lisp/eshell/em-alias.el (eshell-maybe-replace-by-alias): Ignore ARGS.
Diffstat (limited to 'doc/misc/eshell.texi')
-rw-r--r--doc/misc/eshell.texi9
1 files changed, 8 insertions, 1 deletions
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
index 8963826c4cc..8a607ef7702 100644
--- a/doc/misc/eshell.texi
+++ b/doc/misc/eshell.texi
@@ -431,13 +431,20 @@ would in an Elisp program. Eshell provides a command version of
Aliases are commands that expand to a longer input line. For example,
@command{ll} is a common alias for @code{ls -l}, and would be defined
-with the command invocation @samp{alias ll ls -l}; with this defined,
+with the command invocation @kbd{alias ll 'ls -l $*'}; with this defined,
running @samp{ll foo} in Eshell will actually run @samp{ls -l foo}.
Aliases defined (or deleted) by the @command{alias} command are
automatically written to the file named by @code{eshell-aliases-file},
which you can also edit directly (although you will have to manually
reload it).
+Note that unlike aliases in Bash, arguments must be handled
+explicitly. Typically the alias definition would end in @samp{$*} to
+pass all arguments along. More selective use of arguments via
+@samp{$1}, @samp{$2}, etc., is also possible. For example,
+@kbd{alias mcd 'mkdir $1 && cd $1'} would cause @kbd{mcd foo} to
+create and switch to a directory called @samp{foo}.
+
@node History
@section History
@cmindex history