Я использую портативную версию MiKTeX 2.9 на внешнем жестком диске на ПК без прав администратора.
Я пытаюсь запустить файл .ins с помощью терминала TeXmaker, используя 'latex NameOfPackage.ins', но он говорит, что не может найти файл NameOfPackage.ins. Сначала я поместил файл в дерево MiKTeX и обновил FNDB, что не сработало. Затем я попытался поместить его вне дерева, но он все равно не смог найти файл
Я использовал пользовательскую команду в texmaker для компиляции .ins-файла, которая выдала ошибку: файл журнала не найден
"E:/MiKTeX 2.9/miktex/bin/latex.exe" -interaction=nonstopmode %.ins
Раньше я успешно использовал пользовательскую команду, но после сброса настроек я не помню точно, какая это была команда, так что, возможно, я сделал это неправильно.
Редактировать: Когда я попытался снова запустить ту же команду, она вызвала аварийную остановку линии.
\generate{\file{dutch.ldf}{\from{dutch.dtx}{code}}}
dutch.ldf уже был в папке, поэтому я удалил файл и попробовал снова. На этот раз все получилось, так что проблема, похоже, решена. Я бы предположил, что лучше всего удалить файлы, которые были сгенерированы, когда возникла проблема, чтобы избежать таких проблем
Место, где я нашел команду для .ins: tex.stackexchange.com/questions/123129
Мне все еще хотелось бы узнать, почему использование терминала не работает.
решение1
.ins
и .dtx
являются исходными файлами, они обычно сортируются в source
поддереве дерева TDS ( texmf/source/latex/babel/babel.ins
).
Файлы в дереве TDS организованы таким образом, что исходные файлы документациинетsearched, когда TeX ищет свои файлы input/package/class. Это уменьшает пространство поиска и ускоряет поиск файлов.
Но с другой стороны, невозможно вызвать генерацию исходных файлов откуда-либо еще, потому что .ins
файлы .dtx
не найдены за пределами поддерева TDS:tex/
. Либо
Эти файлы можно скомпилировать в каталоге, где они находятся:
cd source\latex\babel tex babel.ins
Однако это не будет работать в MiKTeX из-за функции безопасности. См.Ответ Ульрики(MiKTeX не находит файлы в каталогах приложений).
Скопируйте файлы в новый рабочий каталог и скомпилируйте там:
md scratch copy source\latex\babel/* scratch cd scratch tex babel.ins
(В обоих примерах путь,
source\...
указанный ранее, опущен и его необходимо добавить.)
Обычно установочные файлы LaTeX .ins
можно запустить с помощью простого TeX ( tex
), поскольку .ins
файлы основаны на docstrip
, которому не нужен формат LaTeX. В некоторых случаях LaTeX все же нужен, иногда только из-за какого-то глупого \NeedsTeXFormat{LaTeX2e}
.
Обычно пользователю LaTeX не нужно запускать .ins
файлы, поскольку дистрибутив TeX предоставляет уже распакованные пакеты. Если дистрибутив TeX не содержит пакета, то CTAN может иметь package.tds.zip
файлы ниже CTAN:install/
. Их нужно только распаковать в корне дерева TDS (плюс обновление базы данных имен файлов).
Проблема (c) «Команда не найдена», обсуждается в разделе комментариев
MiKTeX portable не добавляет свой каталог bin
в переменную окружения PATH
. Поэтому Windows не может найти двоичные файлы, если они не квалифицированы с достаточным компонентом пути. Это цена портативности. Хост-система остается нетронутой, а путь к папке bin
может измениться (разные буквы USB-накопителя, ...).
Для использования MiKTeX portable с командным окном, miktex-portable
в установочном каталоге MiKTeX portable сначала следует вызвать. Он добавляет значок на панель задач. Щелчок правой кнопкой мыши предлагает опцию «Командная строка», которая открывает командное окно, в котором задаются переменные среды для MiKTeX. Смотрите«Как использовать портативную версию MiKTeX».
Если вы хотите использовать MiKTeX в своей системе постоянно, то предпочтительнее обычная версия MiKTeX. В противном случае переменные среды можно настроить вручную в системе Windows, если папка bin
имеет постоянное расположение или можно использовать ранее описанный способ.