diff options
author | Norbert Preining <norbert@preining.info> | 2020-04-04 03:02:28 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2020-04-04 03:02:28 +0000 |
commit | 4f71d4ff0d1e7ff4607b58eb7d030bd860e44f3a (patch) | |
tree | d4e56c2a7dc233a34c572829037ac8fb346f14bc /support/arara/scripts/rules/context.yaml | |
parent | 6cacb7b2abf477262c442913f467f219649afb26 (diff) |
CTAN sync 202004040302
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.'); + } + } + |