如何配置 TexLive 2015 以使用 latexindent.pl 脚本和 Kile

如何配置 TexLive 2015 以使用 latexindent.pl 脚本和 Kile

我想使用 在 Kile 下自动缩进我的代码。我安装了 TeXLive 2015 并在我的 tex 文件上latexindent运行。arara

我尝试遵循手动的说明(第 5 页)乳胶压痕其中说要复制indent.yaml到规则目录arara或将所在目录添加latexindent.pl到我的 araraconfig.yaml 文件中。最后一个在我的 TeXLive 发行版和文件中都不存在indent.yaml,因此我复制ident.yamlarara规则目录,但收到以下错误消息:

抱歉,无法找到“Indent”任务中的命令。您确定命令“latexindent.pl -s -t -w“filename.tex”正确吗,或者可以从系统路径访问吗?

哪里有问题?

答案1

我终于可以跑步了压痕乳胶正确,下面是我解决问题的方法

首先必须为 arara 创建一个配置文件: araraconfig.yaml。此文件应放在您的主目录中,并应指示系统中文件/home/<yourusername>的路径。我的 Linux 机器上的内容如下所示:latexindent.plararaconfig.yaml

config
paths:
- /usr/local/texlive/2015/texmf-dist/scripts/latexindent 

(该latexindent脚本随 2015 TeX Live 发行版提供)。

然后应该复制indent.yaml规则arara目录(可从以下位置下载这里)。现阶段还无法运行latexindent,必须安装一些模块(参见文档第 17 页)。为此,从命令行运行:

cpan

如果未安装,Linux 将要求您安装它。然后您可以从 CPAN 提示符安装缺少的模块:

install YAML::Tiny
install Getopt::Long
install File::HomeDir

安装完成后,您可以latexindent从命令行运行:

latexindent

为了能够使用 arara 运行,最后还需要做一件事,你应该从indent.yaml文件中删除 .pl。这是应该修改的行

命令:@{isWindows("cmd /c latexindent.exe","latexindent.pl")}@{silent}@{trace}@{localSettings}@{cruft}@{isNotEmpty(cruft,'="'.concat(parameters.cruft).concat('"'))}@{overwrite}@{onlyDefault}@{output}"@{file}"@{isNotEmpty(output,'"'.concat(parameters.output).concat('"'))}

相关内容