私は Windows 7 と、最新 (2014 年 12 月) の TeX Live ディストリビューションおよび最新バージョンの TeXmaker を実行しています。
arara myFile.tex
コマンドラインで呼び出すと、「indent SUCCESS」が返され、開くとmyFile.tex
実際に整えられ、正しくインデントされます。
ただし、TeXmaker でマクロを設定すると ([ユーザー] -> [コマンド] -> [ユーザー定義の "arara %.tex" 経由)]、TeXmaker は次を返します:
プロセスが開始されました
プロセスは正常に終了しました
しかし、コードは整えられていません。ファイルを閉じて開いても役に立ちません。
これを実現する方法について何かアイデアはありますか?
PS 最小限の動作例 (コマンド ラインから動作しますが、TeXmaker 経由ではありません) は次のとおりです。
% arara: indent
% arara: indent: {overwrite: yes}
\documentclass[10pt]{article}
\begin{document}
\begin{enumerate}
\item a
\item b
\end{enumerate}
\end{document}
PPS indent.log ファイル出力 (TeXmaker 経由で呼び出した場合)
2014年12月11日木曜日 15:41:00
latexindent.pl バージョン 2.0R、.tex ファイルをインデントするスクリプト
latexindent.pl は次の場所にあります: C:/texlive/2014/bin/win32/
>
バックアップ ファイルと indent.log のディレクトリ: 。
ファイル: tikpkzTEST.tex C:/texlive/2014/bin/win32/defaultSettings.yaml から defaultSettings.yaml を読み取り中
ホームディレクトリは C:/Users/Björn です。ユーザー設定を指定するには、indentconfig.yaml をここに配置します: C:/Users/Björn/indentconfig.yaml
バックアップ手順: (...各種バックアップ...) 上書きファイル: tikpkzTEST.tex
tikpkzTEST.tex の行数: 10 インデントされた tikpkzTEST.tex の行数: 10
元のファイルとインデントされたファイルの行数が一致する
PPPS arara.log ファイル
2014 年 12 月 11 日 18:50:09.524 INFO Arara - arara へようこそ!
2014 年 12 月 11 日 18:50:09.524 INFO Arara - ファイル「tikpkzTEST.tex」を処理中です。お待ちください。
2014年12月11日 18:50:09.524 INFO DirectiveExtractor - ディレクティブの読み取り
tikpkzTEST.tex です。
2014 年 12 月 11 日 18:50:09.524 TRACE DirectiveExtractor - インデント付きの 1 行目にディレクティブが見つかりました。
2014 年 12 月 11 日 18:50:09.524 TRACE DirectiveExtractor - 2 行目にインデント付きのディレクティブが見つかりました: {overwrite: yes}。
2014 年 12 月 11 日 18:50:09.584 INFO DirectiveParser - ディレクティブを解析しています。
2014 年 12 月 11 日 18:50:09.584 INFO TaskDeployer - タスクをコマンドにデプロイしています。
2014 年 12 月 11 日 18:50:09.584 TRACE TaskDeployer - タスク 'indent' が >'C:\texlive\2014\texmf-dist\scripts\arara\rules' で見つかりました。
2014 年 12 月 11 日 18:50:09.728 TRACE TaskDeployer - タスク「indent」が「C:\texlive\2014\texmf-dist\scripts\arara\rules」で見つかりました。
2014 年 12 月 11 日 18:50:09.738 INFO CommandTrigger - コマンドを実行する準備ができました。
2014 年 12 月 11 日 18:50:09.738 INFO CommandTrigger - 'Indent' を実行しています。
2014 年 12 月 11 日 18:50:09.738 TRACE CommandTrigger - コマンド: cmd /c latexindent.exe "tikpkzTEST.tex"
2014年12月11日 18:50:10.048 TRACE CommandTrigger - 出力ログ:
2014年12月11日 18:50:10.048 TRACE CommandTrigger - % arara: インデント
% arara: インデント: {上書き: はい}
\documentclass[10pt]{article} \begin{document} \begin{enumerate} \item a \item b \item c \end{enumerate} \end{document} 2014 年 12 月 11 日 18:50:10.048 INFO CommandTrigger - 'Indent' が正常に実行されました。 2014 年 12 月 11 日 18:50:10.048 INFO CommandTrigger - 'Indent' を実行しています。 2014 年 12 月 11 日 18:50:10.048 TRACE CommandTrigger - コマンド: cmd /c latexindent.exe -w >"tikpkzTEST.tex" 2014 年 12 月 11 日 18:50:10.348 TRACE CommandTrigger - 出力ログ: 2014 年 12 月 11 日 18:50:10.348 TRACE CommandTrigger - % arara: indent % arara: indent: {overwrite: yes}
\documentclass[10pt]{記事}
\begin{ドキュメント}
\begin{列挙}
\item a
\item b
\item c
\end{列挙}
\end{ドキュメント}
2014 年 12 月 11 日 18:50:10.348 INFO CommandTrigger - 'Indent' が正常に実行されました。
2014 年 12 月 11 日 18:50:10.348 INFO CommandTrigger - すべてのコマンドが正常に実行されました。
2014 年 12 月 11 日 18:50:10.348 INFO Arara - 完了。
答え1
@texenthusiast はこの問題の回避策を見つけました:
TeXmaker の [ファイル] メニューで [ファイルからドキュメントを再読み込み] を押すと、インデントされた内容で現在のファイルが更新されたことがわかります。
したがって、基本的には、TeXmaker 経由でコードをインデントするために、arara/latexindent のコマンドライン バージョンを設定できます。
(*) (ユーザー->コマンド->ユーザー定義の「arara %.tex」または「texmaker.exe」-w %.tex) または代わりに (オプション->quickbuild->...) 経由
ただし、少し不便な点が残っています。(*) で設定したように、ALT+SHIFT+F1 で latex-indent を呼び出す必要があり、さらにファイル メニューから「ドキュメントの再読み込み」を選択する必要があります。ほとんどのユーザーにとってはこれで十分でしょう。