2009-04-28 3 views
45

У меня мало информации о LaTeX, базовом форматировании, основных математических функциях и т. Д. Я обнаружил, что LaTeX сложно настроить на свой вкус. Недавно я слышал о Docbook, который также является механизмом набора текста, но гораздо проще, поскольку он использует XML. Итак, если моя основная работа с использованием LaTeX/Docbook заключается в написании простого документа (а не в учебнике классов) с некоторой математикой, и я хочу упростить конфигурацию и очень стабильное приложение, которое лучше, и есть ли хорошая книга о Docbook ?LaTeX vs DocBook

+25

(XML == проще) == false –

+4

Обязательно! (XML == проще) или (XML! = Проще);) – Skilldrick

+5

вы знаете, что находитесь в области информатики, когда ... –

ответ

33

Ну, я не использовал DocBook, но от быстрого взгляда на википедии и гугле:

  1. DocBook does not have elements to describe mathematics.
  2. DocBook является XML, как вы говорите. Для меня это ужасно, что можно писать вручную (или, скорее, с помощью основного текстового редактора). Возможно, вам нравится писать XML или иметь хорошую среду IDE. Я думаю, вы могли бы посмотреть на this question.

Docbook в Wikipedia page списки пару книг о нем, которые вы можете посмотреть на, хотя я, очевидно, не могу сказать, являются ли они «хорошие» книги.

Я предлагаю пойти с LaTeX. Попросите кого-нибудь, чтобы дать вам базовый шаблон, а затем писать LaTeX так просто, как:

\section{Introduction} 

This is my introduction. 

\section{Stuff} 

Here is some stuff. 

\subsection{Particular stuff} 

A particular type of stuff. With maths: 

$\int_{x=1}^n 3x^2$ 

% etc. 

Google является вашим другом для нахождения основных шаблонов, которые вы можете начать с:

ехать сюда m исходный код для документа, вам потребуется рабочая установка LaTeX (которая выходит за рамки этого ответа, но довольно проста, если вы работаете в Linux). В идеале ваша установка LaTeX будет включать pdflatex. Тогда вы просто запустите:

pdflatex source.tex 

(есть немного больше работы, если у вас есть список литературы - но это тема для другой вопрос)

+0

ОК, так как найти шаблон, а затем развернуться? спасибо! – Pwn

+4

Я хотел бы остановиться на том, что сказал Джонатан Леффлер. Они работают на разных уровнях. В то время как LaTex одного достаточно для создания документов, DocBook нуждается в виде бэкэнда. Это может быть LaTeX, но есть и другие возможности, такие как Apache FOP или антенный дом. С точки зрения качества, другие продукты отстают от LaTeX. В этом отношении существует только одна жизнеспособная альтернатива LaTex IMHO, которая, однако, не работает с DocBook: InDesign. –

+0

DocBook не имеет математических элементов, но XSL-FO может генерировать математическую и другую научную нотацию через MathML – dns

8

Да, LaTeX вроде сложно настроить для получения точно вид макета, который вы хотите. Я предлагаю вам ознакомиться с руководством по эксплуатации the LaTeX class memoir, чтобы узнать, какие типы макетов он позволяет вам производить.

Существует книга о DocBook available online. Посмотрите на это, чтобы посмотреть, какие макеты вы можете создать, и если вы можете легко форматировать математическое содержимое, которое вы хотите, с помощью DocBook.

Мое предложение - пойти с LaTeX, если вам нужно написать какую-нибудь нетривиальную математику, но, конечно, это зависит от того, с каким форматом вам будет легче работать.

+4

+1 В сборнике мемуаров есть очень подробное объяснение процесса создания книги –

27

Главное, что DocBook заключается в том, что он основан на XML, поэтому глава представляет собой полное поддерево, секция представляет собой полное поддерево и т. Д. В LaTeX разделение определяется только структурой документа во время линейного сканирования ,

Худшее в Docbook заключается в том, что это основанный на XML - материал нижнего уровня чрезвычайно грязный и раздражающий для кода вручную.

15

Я не очень хорошо знаком с DocBook, хотя я довольно широко использовал LaTeX. Идея LaTeX не для создания индивидуального документа, это для создания читаемого, привлекательного документа. Это набор библиотек, шаблонов, макросов и т. Д. Вокруг TeX, созданных людьми, которые знают, что они делают, когда речь заходит о дизайне документов. Конечно, у вас есть особые потребности, которые они не могут предвидеть, так что вам тоже придется немного подстраиваться. Это очень высокоуровневый декларативный язык, который призван отражать содержание и структуру документа, а не то, как он должен выглядеть, идея состоит в том, что ваши идеи и то, как они организованы, - это то, что вы должны заботиться, а не макет вашего текста на странице. Если вам нужно больше контроля, существует ОГРОМНАЯ библиотека дополнительных стилей и макросов и т. Д. (CTAN), и некоторые из них (воспоминания приходят на ум) возвращают вам много этого контроля.

Если вы забрасываете много сложного форматирующего материала в тело вашего документа LaTeX, вы делаете это неправильно. Что вам нужно сделать, так это получить ваш контент там, а ваш документ структурирован в главы, разделы и подразделы семантически, , затем вернитесь и беспокоитесь о форматировании. Вам не нужно долго входить в тело вашего документа; все это должно быть общим материалом, который применяется ко всему документу, предпочтительно с возможностью повторного использования. Это обеспечивает согласованность.

8

Около двух лет назад я старался любить и использовать DocBook; однако я вернулся в LaTeX, потому что, по крайней мере, в то время LaTeX производила более качественную продукцию (PDF). Мне не удалось заставить DocBook работать в LaTeX для перевода PDF. Мои проблемы были скорее «ошибкой оператора», но я предлагаю попробовать DocBook (и LaTeX) для нескольких простых документов, прежде чем выбрать один.

Вот несколько моментов, которые привели меня выбрать LaTeX:

  • BibTeX для библиографических с JabREF как GUI
  • выход Превосходное качество PDF
  • Много примеров в Интернете, в том числе несколько подобных на мой предпочтительный формат
  • Хорошие книги, как "A Guide to LaTeX"

Если вам нравятся графические интерфейсы, взгляните на LyX.

6

Я не хочу идти по «более легкому» или лучшему маршруту, поскольку рассматриваю это как вопрос вкуса и привыкания. Я вижу, что docbook является XML как преимущество, потому что он может быть превращен в почти все, что вам нравится, используя XSLT. В сочетании с его самодостаточностью он больше похож на структурирующий контент, который делает Latex. Особенно документирование программного обеспечения с открытым исходным кодом Docbook действительно широко используется. Вы можете легко захватить шаблоны и таблицы стилей, например. Спящий режим и/или весна и подстройте их под свои нужды.

Еще один аспект, который я хотел бы отметить, - это интеграция в системы сборки. Для Maven имеется плагин с именем docbkx, который просто выплескивает PDF, HTML и все, что вам нравится, на основе содержимого и соответствующего XSLT. Никаких дополнительных установок не требуется. Единственное, что я видел, чтобы это сделать с Latex, - это установка нескольких пакетов в ОС сборки и создание собственного скрипта вокруг em. ИМХО это не осуществимый способ, особенно если вы строите кросс-платформу.

Что касается редактора, я могу посоветовать XMLmind XMLEditor, который требует много боли и обеспечивает довольно приятный подход WYSIWYG к docbook.

Если вы полагаетесь на математические выражения, я бы предпочел выбрать латекс, поскольку в док-книгах нет ничего такого же уровня мощности.

+0

Это платное и очень дорогое – dns

0

Arbortext поддерживает родной LaTeX. Вы можете отправить издательский механизм или композитор печати LaTeX, и он пройдет его. Он также поддерживает множество других языков композиции.

34

DocBook не является «механизмом набора текста». DocBook - все о разделении презентации из контента. DocBook занимается только контентом; он используется для создания абстрактного представления книги, статьи и т. д. Есть numerous tools, где размещается DocBook в соответствии с предопределенными шаблонами. Some of these tools use LaTeX. AFAIK, O'Reilly использует слегка измененную версию языка DocBook для публикации своего контента, затем они передают этот XML в пользовательские скрипты, которые интегрируются с Adobe FrameMaker для компоновки их книг.

LaTeX - это, по сути, попытка отделить презентацию от контента в TeX, но она не совсем достигла этой цели IMO. В большинстве случаев презентация по-прежнему неоднозначна. Я думаю, что LaTeX в настоящее время является лучшим инструментом с открытым исходным кодом для раскладки разбитых на страницы документов. Однако проприетарные инструменты, такие как InDesign, имеют множество функций (например, good Поддержка OpenType), что TeX не имеет (XeTeX вид добавляет поддержку OpenType). В любом случае, , если вы пишете книгу, я настоятельно рекомендую использовать DocBook для написания вашего контента, а не для LaTeX.

Это звучит так, будто вы пишете короткие одноразовые документы с небольшим количеством математики. Я думаю, что LaTeX, вероятно, ваш лучший выбор. Если вам нужно лотов настраиваемости, вам может потребоваться использовать Plain TeX в отличие от LaTeX, но для этого вам потребуется немалая работа.

+3

+1 для объяснения принципиальной разницы между ними: DocBook предназначен для контента; TeX предназначен для набора текста. –

+2

BTW: Комментарий к DocBook на orielly был верным. 3 года спустя есть сильный толчок, чтобы начать писать свои книги в HTMLBook запертой версией HTML5 https://github.com/oreillymedia/HTMLBook – matchew

+1

Документ на HTMLBook от автора => http://www.balisage.net/ Материалы/vol10/html/Kleinfeld01/BalisageVol10-Kleinfeld01.html – matchew

2

Вы посмотрели на ConTeXt. Это более гибко и намного проще настроить по сравнению с LaTeX.

5

Настоящие причины использования центра DocBook в том, что ваш документ имеет значимое значение, его можно проверить и преобразовать для многих целей, а не только для публикации. LaTeX и другие макросеты добавляют слой семантической разметки, но вы всегда можете ввести TeX-код и добавить макросы из других источников. По сути, документ TeX представляет собой компьютерную программу, которая может обрабатываться только процессором TeX.

Для математики и DocBook: DocBook, являющийся XML, позволяет вам использовать другие XML-технологии по мере необходимости; в этом случае MathML. XMLMind XMLEditor, уже упомянутый, предоставляет редактор графиков графического интерфейса пользователя и включает таблицы стилей для их форматирования для веб-страниц и печати вместе с содержимым DocBook.

Есть также доступные инструменты, которые позволяют переносить документы XML на другие языки (xml2po - простой, http://heartsome.net/EN/home.html - это целый набор).

1

FWIW Я использую docbook через xmlmind (http://xmlmind.com/) для создания файлов html и .chm. Я также установил fop для создания pdf-файлов, но они не очень хороши.

Получив источник docbook, я готовлю его с xsltproc и docbook.xsl файлами. Это затянуто и болезненно, чтобы настроить, но как только он работает, он сладок.

Другим подходом было бы использовать pandoc (расширенный инструмент типа уценки), чтобы получить от уценки до DocBook. Это вырезало бы редактор xml, но вам все равно придется преобразовывать (ы) в ваш выходной формат.

3

Кто бы ни мог создать профессиональный научный документ (исследовательский документ, книга, технический гид и т. Д.), Будет знать, почему TeX - лучший выбор.

Для тех, кто не осведомлен о некоторых фактах, здесь является прекрасным примером: в хороших колледжах студенческая работа может быть полностью отклонена, если он неправильно ссылался на работы других людей. Есть, я считаю, сотни «официальных» способов для цитирования и ссылок, Гарвардская школа имеет свои собственные, ACM свои собственные, среди компьютерных ученых числовые (Ванкувер) нотации являются наиболее распространенными. Многие профессиональные организации имеют свои собственные стили, и они придерживаются этого. Насколько мне известно, TeX - единственная система набора, которая это осознает, и с помощью BiBTeX становится чрезвычайно мощным инструментом для авторов. Это может сэкономить часы, если не дни, работы.

Если бы я был новым автором или автором какого-то нетехнического документа, я мог бы выбрать DocBook.

Смежные вопросы