diff options
Diffstat (limited to 'support/arara/scripts/rules')
-rw-r--r-- | support/arara/scripts/rules/perltex.yaml | 82 | ||||
-rw-r--r-- | support/arara/scripts/rules/pythontex.yaml | 71 |
2 files changed, 153 insertions, 0 deletions
diff --git a/support/arara/scripts/rules/perltex.yaml b/support/arara/scripts/rules/perltex.yaml new file mode 100644 index 0000000000..09a838153d --- /dev/null +++ b/support/arara/scripts/rules/perltex.yaml @@ -0,0 +1,82 @@ +!config +# Arara, the cool TeX automation tool +# Copyright (c) 2020, Island of TeX +# All rights reserved. +# +# This rule is part of arara. +identifier: perltex +name: PerlTeX +authors: +- Island of TeX +commands: +- name: PerlTeX wrapper + command: > + @{ + return getCommand('perltex', engine, safe, permit, standalone, + interaction, shell, synctex, options, + reference.getName()); + } +arguments: +- identifier: engine + flag: > + @{ + if ([ 'latex', 'pdflatex' , 'xelatex', 'lualatex', 'tex', 'pdftex', + 'luatex', 'context' ].contains(parameters.engine)) { + return '--latex='.concat(parameters.engine); + } else { + throwError('The provided TeX engine is invalid.'); + } + } +- identifier: safe + flag: > + @{ + return isTrue(parameters.safe, '--safe', '--nosafe'); + } +- identifier: permit + flag: > + @{ + if (isList(parameters.permit)) { + p = []; + foreach(entry: parameters.permit) { + p.add('--permit='.concat(entry)); + } + return p; + } else { + throwError('I was expecting a list.'); + } + } +- identifier: standalone + flag: > + @{ + return isTrue(parameters.standalone, '--makesty'); + } +- identifier: interaction + flag: > + @{ + if ([ 'batchmode', 'nonstopmode', 'scrollmode', + 'errorstopmode' ].contains(parameters.interaction)) { + return '--interaction='.concat(parameters.interaction); + } + else { + throwError('The provided interaction value is not valid.'); + } + } +- identifier: shell + flag: > + @{ + isTrue(parameters.shell, '--shell-escape', '--no-shell-escape') + } +- identifier: synctex + flag: > + @{ + isTrue(parameters.synctex, '--synctex=1', '--synctex=0') + } +- identifier: options + flag: > + @{ + if (isList(parameters.options)) { + return parameters.options; + } else { + throwError('I was expecting a list of options.'); + } + } diff --git a/support/arara/scripts/rules/pythontex.yaml b/support/arara/scripts/rules/pythontex.yaml new file mode 100644 index 0000000000..671d4abe34 --- /dev/null +++ b/support/arara/scripts/rules/pythontex.yaml @@ -0,0 +1,71 @@ +!config +# Arara, the cool TeX automation tool +# Copyright (c) 2020, Island of TeX +# All rights reserved. +# +# This rule is part of arara. +identifier: pythontex +name: PythonTeX +authors: +- Island of TeX +commands: +- name: PythonTeX wrapper + command: > + @{ + return getCommand('pythontex', encoding, errorcode, runall, rerun, + hashdependencies, jobs, verbose, options, + reference.getName()); + } +arguments: +- identifier: encoding + flag: > + @{ + return '--encoding='.concat(parameters.encoding); + } +- identifier: errorcode + flag: > + @{ + return '--error-exit-code='.concat(isTrue(parameters.errorcode, + 'true', 'false')); + } +- identifier: runall + flag: > + @{ + return '--runall='.concat(isTrue(parameters.runall, 'true', 'false')); + } +- identifier: rerun + flag: > + @{ + if ([ 'never', 'modified', 'errors', 'warnings', + 'always' ].contains(parameters.rerun)) { + return '--rerun='.concat(parameters.rerun); + } + else { + throwError('The provided value is not valid.'); + } + } +- identifier: hashdependencies + flag: > + @{ + return '--hashdependencies='.concat(isTrue(parameters.hashdependencies, + 'true', 'false')); + } +- identifier: jobs + flag: > + @{ + return [ '--jobs', parameters.jobs ]; + } +- identifier: verbose + flag: > + @{ + return isTrue(parameters.verbose, '--verbose'); + } +- identifier: options + flag: > + @{ + if (isList(parameters.options)) { + return parameters.options; + } else { + throwError('I was expecting a list of options.'); + } + } |