Я использую Windows 7 и последний (декабрь 2014 г.) дистрибутив TeX Live, а также последнюю версию TeXmaker.
При вызове arara myFile.tex
в командной строке возвращается «indent SUCCESS», а при открытии myFile.tex
он действительно становится красивым/правильно отступленным.
Однако при настройке макроса в TeXmaker (через Пользователи->Команды->Определенный пользователем "arara %.tex") TeXmaker возвращает:
Процесс начался
Процесс завершен нормально
Однако код не украшается. Закрытие и открытие файла не помогает.
Есть ли у вас идеи, как это реализовать?
P.S. Минимальный рабочий пример (работающий из командной строки, но не через 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)
Чт Дек 11 15:41:00 2014
latexindent.pl версия 2.0R, скрипт для отступа файлов .tex
latexindent.pl находится здесь: C:/texlive/2014/bin/win32/
>
Каталог для файлов резервных копий и indent.log: .
файл: tikpkzTEST.tex Чтение defaultSettings.yaml из C:/texlive/2014/bin/win32/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
11 дек. 2014 г. 18:50:09.524 ИНФОРМАЦИЯ Arara - Добро пожаловать в arara!
11 дек. 2014 18:50:09.524 ИНФОРМАЦИЯ Arara - Обработка файла «tikpkzTEST.tex», пожалуйста, подождите.
11 дек. 2014 18:50:09.524 INFO DirectiveExtractor - Чтение директив из
tikpkzTEST.tex.
11 декабря 2014 г. 18:50:09.524 TRACE DirectiveExtractor — Директива найдена в строке 1 с отступом.
11 декабря 2014 г. 18:50:09.524 TRACE DirectiveExtractor — Директива найдена в строке 2 с отступом: {overwrite: yes}.
11 дек. 2014 18:50:09.584 INFO DirectiveParser - Директивы анализа.
11 дек. 2014 г. 18:50:09.584 ИНФОРМАЦИЯ TaskDeployer - Развертывание задач в команды.
11 декабря 2014 г. 18:50:09.584 TRACE TaskDeployer - Задача «indent» найдена в >'C:\texlive\2014\texmf-dist\scripts\arara\rules'.
11 декабря 2014 г. 18:50:09.728 TRACE TaskDeployer - Задача «indent» найдена в «C:\texlive\2014\texmf-dist\scripts\arara\rules».
11 декабря 2014 г. 18:50:09.738 ИНФОРМАЦИЯ CommandTrigger — Готов к выполнению команд.
11 декабря 2014 г. 18:50:09.738 ИНФОРМАЦИЯ CommandTrigger — Выполняется «Indent».
11 декабря 2014 г. 18:50:09.738 TRACE CommandTrigger - Команда: cmd /c latexindent.exe "tikpkzTEST.tex"
11 декабря 2014 г. 18:50:10.048 TRACE CommandTrigger - Выходная регистрация:
11 дек. 2014 г. 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} 11 дек. 2014 г. 18:50:10.048 ИНФОРМАЦИЯ CommandTrigger - «Indent» успешно выполнен. 11 дек. 2014 г. 18:50:10.048 ИНФОРМАЦИЯ CommandTrigger - Запуск «Indent». 11 дек. 2014 18:50:10.048 TRACE CommandTrigger - Команда: cmd /c latexindent.exe -w >"tikpkzTEST.tex" 11 дек. 2014 18:50:10.348 TRACE CommandTrigger - Регистрация выходных данных: 11 дек. 2014 18:50:10.348 TRACE CommandTrigger - % arara: отступ % arara: отступ: {overwrite: yes}
\documentclass[10pt]{статья}
\begin{документ}
\begin{перечислить}
\элемент а
\элемент б
\элемент с
\end{перечислить}
\end{документ}
11 декабря 2014 г. 18:50:10.348 ИНФОРМАЦИЯ CommandTrigger - «Indent» был успешно выполнен.
11 декабря 2014 г. 18:50:10.348 ИНФОРМАЦИЯ CommandTrigger - Все команды были успешно выполнены.
11 дек. 2014 г. 18:50:10.348 ИНФОРМАЦИЯ Арара - Готово.
решение1
@texenthusiast нашел решение этой проблемы:
В меню Файл TeXmaker нажмите «Перезагрузить документ из файла», чтобы увидеть обновленный текущий файл с отступом содержимого.
Итак, по сути, вы можете настроить arara/версию latexindent для командной строки для создания отступов в коде через TeXmaker:
(*) (Пользователи->Команды->Определенные пользователем "arara %.tex" или "texmaker.exe" -w %.tex) или альтернативно через (Параметры->quickbuild->...)
Однако небольшое неудобство остается: вам придется вызывать latex-indent через ALT+SHIFT+F1 (как установлено в (*)), а затем вам придется дополнительно выбрать "перезагрузить документ" из меню файла. Этого должно быть достаточно для большинства пользователей.