summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts/arara/rules/makeindex.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/scripts/arara/rules/makeindex.yaml')
-rw-r--r--Master/texmf-dist/scripts/arara/rules/makeindex.yaml74
1 files changed, 63 insertions, 11 deletions
diff --git a/Master/texmf-dist/scripts/arara/rules/makeindex.yaml b/Master/texmf-dist/scripts/arara/rules/makeindex.yaml
index 7cb1f5c6a2c..83f7e286d02 100644
--- a/Master/texmf-dist/scripts/arara/rules/makeindex.yaml
+++ b/Master/texmf-dist/scripts/arara/rules/makeindex.yaml
@@ -1,16 +1,68 @@
!config
-# MakeIndex rule for arara
-# author: Marco Daniel
-# last edited by: Paulo Cereda
-# requires arara 3.0+
+# Arara, the cool TeX automation tool
+# Copyright (c) 2018, Paulo Roberto Massa Cereda
+# All rights reserved.
+#
+# This rule is part of arara.
identifier: makeindex
name: MakeIndex
-command: <arara> makeindex @{german} @{style} @{options} "@{getBasename(file)}.idx"
-arguments:
-- identifier: style
- flag: <arara> -s @{parameters.style}
+authors:
+- Marco Daniel
+- Paulo Cereda
+commands:
+- name: The MakeIndex software
+ command: >
+ @{
+ base = getBasename(file);
+ infile = base.concat('.').concat(input);
+ outfile = [ '-o', base.concat('.').concat(output) ];
+ logfile = [ '-t', base.concat('.').concat(log) ];
+ return getCommand('makeindex', german, style, order, options,
+ logfile, infile, outfile);
+ }
+arguments:
+- identifier: input
+ flag: >
+ @{
+ parameters.input
+ }
+ default: idx
+- identifier: output
+ flag: >
+ @{
+ parameters.output
+ }
+ default: ind
+- identifier: log
+ flag: >
+ @{
+ parameters.log
+ }
+ default: ilg
- identifier: german
- flag: <arara> @{isTrue(parameters.german,"-g")}
+ flag: >
+ @{
+ isTrue(parameters.german, '-g')
+ }
+- identifier: order
+ flag: >
+ @{
+ if ([ 'letter', 'word' ].contains(parameters.order)) {
+ return isTrue(parameters.order == 'letter', '-l', '');
+ }
+ else {
+ throwError('The provided order is invalid.');
+ }
+ }
+- identifier: style
+ flag: "@{ [ '-s', parameters.style ] }"
- identifier: options
- flag: <arara> @{parameters.options}
-
+ flag: >
+ @{
+ if (isList(parameters.options)) {
+ return parameters.options;
+ }
+ else {
+ throwError('I was expecting a list of options.');
+ }
+ }