部分成功的小消息

部分成功的小消息

我想为 perl 脚本编写一个 arara 规则,特别是对于精美预览. (另一个测试脚本:latexcount


编辑:

  1. 在命令行中 perl fancy-preview jobname.tex工作!

  2. 我已经安装ActiveState Perl


这不起作用

!config
# perl rule for arara
# version: 0.1
# requires arara 3.0+
identifier: perl
name: Perl
command: <arara> @{program} @{script} @{getBasename(file)} @{options}
arguments:
- identifier: program
  flag: <arara> @{parameters.program}
  default: cmd /c  perl
- identifier: script
  flag: <arara> @{parameters.script}
  default: fancy-preview
- identifier: options
  flag: <arara> @{parameters.options}
  default: --fancy_options="previewall,nosoap"

错误注释:

正在运行 Perl...

无法在 fancy-preview 第 227 行 @INC 中找到 Config/IniFiles.pm (@INC 包含:C:/texlive/2013/tlpkg/tlperl/lib c:/texlive/2013/tlpkg/tlperl/lib 。)。
BEGIN 失败——编译在 fancy-preview 行 227 处中止。
失败
C:\texlive\2013\bin\win32\runscript.tlu:650: 命令失败,退出代码为 1:
java.exe -jar c:/texlive/2013/texmf-dist/scripts/arara/arara.jar interaktiv2.tex --verbose --log

我能做些什么?


编辑1:

上述“规则”是初稿。

对于结果,我想了一些inputpath: 'C:/MyPerlScripts/...'东西 - 所以我不必为我的 perl 脚本构建耦合运动,并且可以将它们存储在一个中心位置。但对于这个和其他的,规则必须运行;)...


编辑2:

如果我改变

 - identifier: program
      flag: <arara> @{parameters.program}
      default: cmd /c start perl

没有错误消息,但 perls 脚本没有运行(好吧,这仅适用于 Windows,但它不起作用)——我不明白!:(


编辑3:

与Edit2效果相同:

 - identifier: program
      flag: <arara> @{parameters.program}
      default: cmd /c start C:/Perl/bin/perl.exe

没有‘start’也一样:

Running Perl... 

Perl lib version (5.16.2) doesn't match executable 'fancy-preview.pl' version (v5.16.3) at C:/texlive/2013/tlpkg/tlperl/lib/Config.pm line 60.
Compilation failed in require at C:/texlive/2013/tlpkg/tlperl/lib/DynaLoader.pm line 22 ....







部分成功的小消息

我认为问题一部分在于剧本fancy-preview,一部分在于arara

因为:如果我使用脚本latexcountperl.yaml如下文档中所示,使用“ ”

% arara: perl: { script: latexcount.pl }

\documentclass{article}
\begin{document}
Count these words!
\end{document}

我明白了

Can't open --fancy_options=previewall,nosoap: No such file or directory at latexcount.pl line 72, <> line 8.

3 words in the main text
 in the footnotes
3 total

Status: SUCCESS

这是对的在每一行

我认为(在fancy-preview等)arara停止,如果有警告或其他东西。在这种情况下,我不知道该怎么做 - 这可能是arara内部的还是不是?作者团队是最后的希望 :()

答案1

所以,我认为就是这样:

·标识符program:请在此处选择您自己的 perl 版本作为默认值。在大多数情况下,perl此处写为 artless " "

·标识符inputfile:选择

% arara: perl: {script: xyz.pl , inputfile: '' }

为空值,例如在这些情况下,当 perl 脚本未在 tex 文件上执行时。

· 布尔标识符onlylog给出 perl-log 作为perl_log.txt

% arara: perl: {script: xyz.pl , onlylog: yes }

^> perl_log.txt 检查(对于 Linux)是否需要> perl_log.txt

·标识符inputpath选择包含 perl 脚本的文件夹的路径;)

·标识符compileoptions

例子:

% HELP:
% Help-Info "fancy-preview":
% #arara: perl: { script: fancy-preview.pl , options: -h }

% Help-Info "perl":
% #arara: perl: { script: latexcount.pl , compile: -h }

perl.yaml

!config
# perl rule for arara
# version: 0.2a
# requires arara 3.0+, PERL
#
#  ### 
#  Please check defaults at 'program', 'inputpath' (and 'onlylog') !
#  ###
#
identifier: perl
name: Perl
command: <arara> @{program} @{compile} @{inputpath}@{script} @{inputfile} @{options} @{onlylog}
arguments:
- identifier: program
  flag: <arara> @{parameters.program}
  default: 'cmd /c c:\texlive\2013\tlpkg\tlperl\bin\perl.exe'  
#  default: <arara> @{ isWindows("cmd /c  perl", "perl") }
#  default: 'cmd /c  c:\Perl\bin\perl.exe'
- identifier: compile
  flag: <arara> @{parameters.compile}
- identifier: inputpath
  flag: <arara> @{parameters.inputpath}
  default: 'C:\Users\ccc\PerlScripts\'
- identifier: script
  flag: <arara> @{parameters.script}
- identifier: inputfile
  flag: <arara> @{parameters.inputfile}
  default: <arara> @{getBasename(file)}.tex
- identifier: options
  flag: <arara> @{parameters.options}
- identifier: onlylog
  flag: <arara> @{ isTrue( parameters.onlylog , "> perl_log.txt"  ) }

我测试成功: latexcount.plfancy-preview.pl(警告:fancy-preview.pl 您必须做一些准备工作 - pm-modules、acrotex-packages)。

例子

% arara: perl: { script: latexcount.pl  }

\documentclass{article}
\begin{document}
Count these words, immediately! 
\end{document}

在此处输入图片描述

相关内容