Не работает ли dblatex в MikTeX или я что-то не так делаю?
Я годами использую MikTeX в Windows XP для создания PDF-файлов из LaTeX. Однако я не особо заинтересован в LaTeX и хочу перейти на использование DocBook. Настроить процессор DocBook, такой как Apache FOP, и работать на Windows - это очень сложно, так что, чтобы обойти это, я решил использовать dblatex
некоторое время.
Беда в том, хотя dblatex
там, это не работает как рекламируется. Я сделал вещь RTFM, и это не помогло. Например, если я использую команду dblatex --help
я получаю набор команд LaTeX в качестве параметров для латексных вызовов с подсказкой, указывающей, что что-то пыталось прочитать файл с именем --help
, запрашивая альтернативное имя файла.
Что должно произойти, согласно руководству по dblatex, это то, что я должен получить скриншот помощи.
Если я на самом деле предоставляю простой файл docbook, я получаю сообщения об ошибках, которые (шок, ужас) синтаксис DocBook не является допустимым синтаксисом LaTeX. Ну нет - это DocBook.
Сначала я подумал, что пакет MikTeX (который устанавливает дополнительные пакеты при первом использовании) должен был потерпеть неудачу, поэтому я выполнил полную установку MikTeX 2.8. Без изменений. Тогда я подумал, что, возможно, есть проблема именно с MikTeX 2.8 - поэтому я вытащил свой старый DVD с MikTeX 2.7 и выполнил полную установку. Результат - точно такой же.
Используя MikTeX 2.7, следующее копируется прямо из моей командной строки...
Q:\>dblatex --help
Q:\>latex \makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode
\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1
.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,xhtml,docbook]{tex4
ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandaf
ter\def\csname tex4ht\endcsname{#1,xhtml,docbook}\def\HCode####1{\documentstyle[
tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode .a.b.c
.\input --help
This is pdfTeX, Version 3.141592-1.40.4 (MiKTeX 2.7)
entering extended mode
LaTeX2e <2005/12/01>
Babel <v3.8h> and hyphenation patterns for english, dumylang, nohyphenation, ge
rman, ngerman, french, loaded.
! I can't find file `--help'.
<*> ...}}}\makeatother\HCode .a.b.c.\input --help
Please type another input file name:
Просто чтобы прояснить, я набрал только верхнюю строку - dblatex --help
линия. Остальное выглядит так, как будто пакетный файл был запущен. В материале MikTeX есть файл dblatex.bat, и его содержимое объясняет поведение, описанное выше, но не имеет значения, если я явно запускаю dblatex.exe
вместо файла - и, кроме того, пакетный файл, кажется, не находится на пути. Если я переместу этот командный файл куда-нибудь еще, то быстро станет ясно, что dblatex.exe ищет и запускает этот командный файл - и громко жалуется, если его там нет.
Другие материалы MikTeX, такие как latex
а также dvipdfm
все работает на отлично Например...
Q:\>latex --help
Usage: latex [OPTION...] [COMMAND...]
-alias=APP Pretend to be APP. This affects both the
format used and the search path.
-aux-directory=DIR Use DIR as the directory to write auxiliary
files to.
-buf-size=N Set buf_size to N.
-c-style-errors Enable file:line:error style messages.
-disable-8bit-chars Make only 7-bit characters printable by.
Кстати, это только первые несколько строк.
Так, что происходит? Возможно, MikTeX на самом деле не включает dblatex
- просто программа с таким же названием по совпадению? Может быть, те посты, которые я видел в интернете о том, как использовать dblatex в MikTeX, являются подделками, посаженными там, чтобы раздражать меня лично?
Или, может быть, менее параноидальное объяснение, например, возможно, MikTeX не нравится тот факт, что моя Windows XP очень чистая, только что была переустановлена с нуля на прошлой неделе, с текущим рейтингом Crapware нулевым? Или это не нравится быть первым пунктом на моем пути, так что программы MikTeX автоматически имеют приоритет над всем остальным?
Как видите, я изо всех сил пытаюсь найти вменяемое объяснение - кто-нибудь еще может предложить что-то более разумное?
1 ответ
dlatex
который генерирует PDF-файлы из Docbook: http://dblatex.sourceforge.net/
То, что вы используете, это dblatex
двоичный файл от MikTeX, который, к сожалению, имеет одно и то же имя, но он делает совершенно разные вещи.
Так что установите и используйте правильные dblatex
,