2

В течение многих лет я использовал 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 очень чистая, только что была переустановлена с нуля на прошлой неделе, с текущим рейтингом программного обеспечения, равным нулю? Или это не нравится быть первым пунктом на моем пути, так что программы MikTeX автоматически имеют приоритет над всем остальным?

Как видите, я изо всех сил пытаюсь найти вменяемое объяснение - может кто-нибудь еще предложить что-то более разумное?

1 ответ1

2

dlatex который генерирует PDF-файлы из Docbook, это: http://dblatex.sourceforge.net/

То, что вы используете - это двоичный файл dblatex от MikTeX, который, к сожалению, имеет одно и то же имя, но он делает совершенно разные вещи.

Так что установите и используйте соответствующий dblatex .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .