2006-10-31 15:23:16 +00:00
|
|
|
\section begin begin - start a new block of code
|
2005-09-20 13:31:55 +00:00
|
|
|
|
|
|
|
\subsection begin-synopsis Synopsis
|
2014-08-01 12:25:41 +00:00
|
|
|
\fish{synopsis}
|
2014-08-01 02:37:32 +00:00
|
|
|
begin; [COMMANDS...;] end
|
|
|
|
\endfish
|
2005-09-20 13:31:55 +00:00
|
|
|
|
|
|
|
\subsection begin-description Description
|
|
|
|
|
2014-08-01 02:37:32 +00:00
|
|
|
`begin` is used to create a new block of code.
|
Help cleanup
Large list of changes, including formatting and typos for most commands.
More substantive changes have been made to alias, bind, block, break,
builtin, case, cd, commandline, count, else, emit, fish_config, funced,
function, functions, history, math, mimedb, nextd, not, popd, prevd,
pushd, pwd, random, read, set, set_color, switch, test, trap, type,
ulimit, umask, and while.
2013-05-12 07:56:01 +00:00
|
|
|
|
2014-08-01 02:37:32 +00:00
|
|
|
The block is unconditionally executed. `begin; ...; end` is equivalent
|
|
|
|
to `if true; ...; end`.
|
Help cleanup
Large list of changes, including formatting and typos for most commands.
More substantive changes have been made to alias, bind, block, break,
builtin, case, cd, commandline, count, else, emit, fish_config, funced,
function, functions, history, math, mimedb, nextd, not, popd, prevd,
pushd, pwd, random, read, set, set_color, switch, test, trap, type,
ulimit, umask, and while.
2013-05-12 07:56:01 +00:00
|
|
|
|
2014-08-01 02:37:32 +00:00
|
|
|
`begin` is used to group a number of commands into a block.
|
Help cleanup
Large list of changes, including formatting and typos for most commands.
More substantive changes have been made to alias, bind, block, break,
builtin, case, cd, commandline, count, else, emit, fish_config, funced,
function, functions, history, math, mimedb, nextd, not, popd, prevd,
pushd, pwd, random, read, set, set_color, switch, test, trap, type,
ulimit, umask, and while.
2013-05-12 07:56:01 +00:00
|
|
|
This allows the introduction of a new variable scope, redirection of the input or
|
2006-07-20 13:33:19 +00:00
|
|
|
output of a set of commands as a group, or to specify precedence when
|
2014-08-01 02:37:32 +00:00
|
|
|
using the conditional commands like `and`.
|
2005-09-20 13:31:55 +00:00
|
|
|
|
2014-08-01 02:37:32 +00:00
|
|
|
`begin` does not change the current exit status.
|
2006-07-12 17:31:41 +00:00
|
|
|
|
2005-09-20 13:31:55 +00:00
|
|
|
\subsection begin-example Example
|
|
|
|
|
|
|
|
The following code sets a number of variables inside of a block
|
|
|
|
scope. Since the variables are set inside the block and have local
|
|
|
|
scope, they will be automatically deleted when the block ends.
|
|
|
|
|
2014-08-01 02:37:32 +00:00
|
|
|
\fish
|
2005-09-20 13:31:55 +00:00
|
|
|
begin
|
2014-08-01 02:37:32 +00:00
|
|
|
set -l PIRATE Yarrr
|
|
|
|
...
|
2005-09-20 13:31:55 +00:00
|
|
|
end
|
2014-08-01 02:37:32 +00:00
|
|
|
|
|
|
|
echo $PIRATE
|
2006-12-11 13:47:23 +00:00
|
|
|
# This will not output anything, since the PIRATE variable went out
|
|
|
|
# of scope at the end of the block
|
2014-08-01 02:37:32 +00:00
|
|
|
\endfish
|
2006-07-20 13:33:19 +00:00
|
|
|
|
|
|
|
In the following code, all output is redirected to the file out.html.
|
|
|
|
|
2014-08-01 02:37:32 +00:00
|
|
|
\fish
|
2006-07-20 13:33:19 +00:00
|
|
|
begin
|
2014-08-01 02:37:32 +00:00
|
|
|
echo $xml_header
|
|
|
|
echo $html_header
|
|
|
|
if test -e $file
|
|
|
|
...
|
|
|
|
end
|
|
|
|
...
|
|
|
|
end > out.html
|
|
|
|
\endfish
|