From ec0f8fe57483e72f45fba995f3e17870e4e30bec Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Sat, 19 May 2018 14:03:32 +1000 Subject: Extend `try` command to support multiple catches. If a catch command fails, and another catch is availabe following it, that following catch gets executed. --- doc/pages/commands.asciidoc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'doc') diff --git a/doc/pages/commands.asciidoc b/doc/pages/commands.asciidoc index 9a86b86d..cd79d26a 100644 --- a/doc/pages/commands.asciidoc +++ b/doc/pages/commands.asciidoc @@ -225,10 +225,13 @@ but not really useful in that context. *-title* ::: set the title of the message box -*try* catch :: +*try* [catch ]...:: prevent an error in *commands* from aborting the whole command execution, execute *on_error_commands* instead. If nothing is to be - done on error, the catch part can be omitted + done on error, the catch part can be omitted. If an error is raised + in the *on_error_commands*, that error is propagated, except if + another *catch* and *on_error_commands* parameter follows, in which + case those commands get executed, and so-on. *nop*:: does nothing, but arguments will be evaluated (e.g. shell expansion) -- cgit v1.2.3