diff options
Diffstat (limited to 'support/arara/scripts/rules/context.yaml')
-rw-r--r-- | support/arara/scripts/rules/context.yaml | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/support/arara/scripts/rules/context.yaml b/support/arara/scripts/rules/context.yaml new file mode 100644 index 0000000000..5b8546486e --- /dev/null +++ b/support/arara/scripts/rules/context.yaml @@ -0,0 +1,171 @@ +!config +# Arara, the cool TeX automation tool +# Copyright (c) 2020, Island of TeX +# All rights reserved. +# +# This rule is part of arara. +identifier: context +name: ConTeXt +authors: +- Island of TeX +commands: +- name: ConTeXt engine + command: > + @{ + return getCommand('context', make, ctx, interface, autopdf, purge, + modules, environments, mode, path, arguments, + trackers, directives, silent, errors, interaction, + synctex, options, reference); + } +arguments: +- identifier: make + flag: > + @{ + return isTrue(parameters.make, '--make'); + } +- identifier: ctx + flag: > + @{ + return '--ctx='.concat(parameters.ctx); + } +- identifier: interface + flag: > + @{ + return [ '--interface', parameters.interface ]; + } +- identifier: autopdf + flag: > + @{ + return isTrue(parameters.autopdf, '--autopdf'); + } +- identifier: purge + flag: > + @{ + p = [ 'partial' : '--purge', 'all' : '--purgeall', + 'result' : '--purgeresult' ]; + if (p.keySet().contains(parameters.purge)) { + return p.get(parameters.purge); + } + else { + throwError('Invalid value, expected either partial or all.'); + } + } +- identifier: modules + flag: > + @{ + if (isList(parameters.modules)) { + return '--usemodule='.concat(String.join(',', parameters.modules)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: environments + flag: > + @{ + if (isList(parameters.environments)) { + return '--environment='.concat(String.join(',', + parameters.environments)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: mode + flag: > + @{ + if (isList(parameters.mode)) { + return '--mode='.concat(String.join(',', parameters.mode)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: path + flag: > + @{ + if (isList(parameters.path)) { + return '--path='.concat(String.join(',', parameters.path)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: arguments + flag: > + @{ + if (isList(parameters.arguments)) { + return '--arguments='.concat(String.join(',', + parameters.arguments)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: trackers + flag: > + @{ + if (isList(parameters.trackers)) { + return '--trackers='.concat(String.join(',', parameters.trackers)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: directives + flag: > + @{ + if (isList(parameters.directives)) { + return '--directives='.concat(String.join(',', + parameters.directives)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: silent + flag: > + @{ + if (isList(parameters.modules)) { + return '--silent='.concat(String.join(',', parameters.silent)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: errors + flag: > + @{ + if (isList(parameters.errors)) { + return '--errors='.concat(String.join(',', parameters.errors)); + } + else { + throwError('I was expecting a list.'); + } + } +- identifier: interaction + flag: > + @{ + if ([ 'batchmode', 'nonstopmode' ].contains(parameters.interaction)) { + return '--'.concat(parameters.interaction); + } + else { + throwError('The provided interaction value is not valid.'); + } + } +- identifier: synctex + flag: > + @{ + return isTrue(parameters.synctex, '--synctex', '--nosynctex'); + } +- identifier: options + flag: > + @{ + if (isList(parameters.options)) { + return parameters.options; + } + else { + throwError('I was expecting a list of options.'); + } + } + |