在 Windows 上使用 latexindent

在 Windows 上使用 latexindent

我发现了 latexindent,并想在我的 Windows 机器上使用它。我正在使用 MiKTeX 和 Strawberry Perl。MiKTeX 有一个列出 latexindent 的包管理器。由于某种原因,我无法安装或卸载它,尽管我以管理员身份启动了 MiKTeX 包管理器。它被列为已安装。但是当我在 Shell 上执行它时,我似乎缺少 Perl 模块。“找不到 YAML/Tiny.pm”。我该如何安装该模块或解决这个问题?执行编译后的 latexindent.exe 文件会出现相同的错误。完整的消息是:

$ latexindent
Can't locate YAML/Tiny.pm in @INC (@INC contains: /usr/lib/perl5/5.8.8/msys /usr/lib/perl5/5.8.8 /usr/lib/perl5/site_perl/5.8.8/msys /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl .) at C:\Program Files (x86)\MiKTeX 2.9\scripts\latexindent\latexindent.pl line 39.
BEGIN failed--compilation aborted at C:\Program Files (x86)\MiKTeX 2.9\scripts\latexindent\latexindent.pl line 39.

答案1

目前,我使用 Windows PowerShell ISE 解决了此问题,并从那里继续工作。此外,我向 Notepad++ 添加了自定义命令,如下所述:

https://superuser.com/questions/176678/how-to-launch-a-program-from-notepad#176685

<UserDefinedCommands>
    <Command name="latexindent" Ctrl="yes" Alt="yes" Shift="yes" Key="">latexindent -d -w &quot;$(FULL_CURRENT_PATH)&quot;</Command>
    <Command name="Launch in Firefox" Ctrl="yes" Alt="yes" Shift="yes" Key="88">firefox &quot;$(FULL_CURRENT_PATH)&quot;</Command>
    <Command name="Launch in IE" Ctrl="yes" Alt="yes" Shift="yes" Key="73">iexplore &quot;$(FULL_CURRENT_PATH)&quot;</Command>
    <Command name="Launch in Chrome" Ctrl="yes" Alt="yes" Shift="yes" Key="82">chrome &quot;$(FULL_CURRENT_PATH)&quot;</Command>
    <Command name="Launch in Safari" Ctrl="yes" Alt="yes" Shift="yes" Key="70">safari &quot;$(FULL_CURRENT_PATH)&quot;</Command>
    <Command name="Get php help" Ctrl="no" Alt="yes" Shift="no" Key="112">http://www.php.net/%20$(CURRENT_WORD)</Command>
    <Command name="Google Search" Ctrl="no" Alt="yes" Shift="no" Key="113">http://www.google.com/search?q=$(CURRENT_WORD)</Command>
    <Command name="Wikipedia Search" Ctrl="no" Alt="yes" Shift="no" Key="114">http://en.wikipedia.org/wiki/Special:Search?search=$(CURRENT_WORD)</Command>
    <Command name="Open file" Ctrl="no" Alt="yes" Shift="no" Key="116">$(NPP_DIRECTORY)\notepad++.exe $(CURRENT_WORD)</Command>
    <Command name="Open in another instance" Ctrl="no" Alt="yes" Shift="no" Key="117">$(NPP_DIRECTORY)\notepad++.exe $(CURRENT_WORD) -nosession -multiInst</Command>
    <Command name="Send via Outlook" Ctrl="yes" Alt="yes" Shift="yes" Key="79">outlook /a &quot;$(FULL_CURRENT_PATH)&quot;</Command>
</UserDefinedCommands>

这样我就可以从 IDE 使用它了。下一步是使用 PowerShell ISE 对所有 tex 文件进行迭代的脚本。下一步是 Jenkins 上的 Bash 脚本。

Notepad++ 中的 latexindent

相关内容