diff --git a/doc_src/alias.txt b/doc_src/alias.txt index cbb9508eb..f02f9d69b 100644 --- a/doc_src/alias.txt +++ b/doc_src/alias.txt @@ -2,39 +2,36 @@ \subsection alias-synopsis Synopsis \fish{synopsis} +alias alias NAME DEFINITION alias NAME=DEFINITION \endfish \subsection alias-description Description -`alias` is a simple wrapper for the `function` builtin. It exists for backwards compatibility with Posix shells. For other uses, it is recommended to define a function. +`alias` is a simple wrapper for the `function` builtin, which creates a function wrapping a command. It has similar syntax to POSIX sh `alias`. For other uses, it is recommended to define a function. -`fish` does not keep track of which functions have been defined using `alias`. They must be erased using `functions -e`. +`fish` marks functions that have been created by `alias` by including the command used to craete them in the function description. You can list alias-created functions by running `alias` without arguments. They must be erased using `functions -e`. - `NAME` is the name of the alias - - `DEFINITION` is the actual command to execute. The string `$argv` will be appended. You cannot create an alias to a function with the same name. Note that spaces need to be escaped in the call to alias just like in the commandline _even inside the quotes_. - \subsection alias-example Example The following code will create `rmi`, which runs `rm` with additional arguments on every invocation. \fish -alias rmi "rm -i" +alias rmi="rm -i" # This is equivalent to entering the following function: - -function rmi +function rmi --wraps rm --description 'alias rmi=rm -i' rm -i $argv end # This needs to have the spaces escaped or "Chrome.app..." will be seen as an argument to "/Applications/Google": - alias chrome='/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome banana' \endfish