2009-04-28 17 views
45

Tengo muy pocos conocimientos sobre LaTeX, formato básico, fórmulas matemáticas básicas, etc. Encontré que LaTeX es difícil de configurar a mi gusto. Recientemente, he oído hablar de Docbook, que también es un mecanismo de composición tipográfica, pero mucho más fácil ya que usa XML. Entonces, si mi trabajo principal al usar LaTeX/Docbook es escribir un documento simple (no un libro de clase) con algunas matemáticas, y quiero una configuración fácil, y una aplicación altamente constomizable, cuál es mejor, y hay algún buen libro en Docbook ?LaTeX vs DocBook

+25

(XML == más fácil) == false –

+4

Seguramente (XML == más fácil) o (! = XML más fácil);) – Skilldrick

+5

usted sabe que está en un dominio de la informática cuando ... –

Respuesta

33

Bueno, no he utilizado DocBook, pero desde una mirada rápida en Wikipedia y Google:

  1. DocBook does not have elements to describe mathematics.
  2. DocBook XML es, como usted dice. Para mí, eso hace que sea horrible escribir a mano (o, más bien, con un editor de texto básico). Tal vez disfrutas escribir XML o tener un buen IDE. Supongo que podrías mirar this question.

Wikipedia page listas de DocBook un par de libros sobre el mismo, que es posible que desee a la vista, aunque, obviamente, no puedo decir si son libros "bueno".

Sugeriría ir con LaTeX. Conseguir a alguien para darle una plantilla básica, a continuación, escribir LaTeX es tan simple como:

\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 es su amigo para encontrar plantillas básicas que usted puede comenzar a partir de:

Para ir aquí para allá En el código fuente de un documento, necesitará una instalación en funcionamiento de LaTeX (que está más allá del alcance de esta respuesta, pero es bastante fácil si está en Linux). Idealmente, su instalación de LaTeX incluirá pdflatex. A continuación, sólo ejecuta:

pdflatex source.tex 

(hay un poco más de trabajo si tiene una bibliografía - pero eso es un tema para una pregunta diferente)

+0

bien, así que ¿cómo para encontrar una plantilla y luego desplegarla? gracias! – Pwn

+4

Me gustaría resaltar lo que dijo Jonathan Leffler. Están trabajando a diferentes niveles. Si bien LaTex solo es suficiente para producir documentos, DocBook necesita una especie de back-end. Esto puede ser LaTeX, pero hay otras posibilidades como Apache FOP o antena de la casa. Desde el punto de vista de la calidad, los otros productos están muy por detrás de LaTeX. En este sentido, solo hay una alternativa viable a LaTex en mi humilde opinión, que no funciona con DocBook sin embargo: InDesign. –

+0

DocBook no tiene elementos matemáticos, pero XSL-FO puede generar matemática y otra notación científica mediante MathML – dns

8

Sí, el látex es un poco difícil de configurar para producir exactamente el tipo de diseño que desea. Le sugiero que eche un vistazo al manual de the LaTeX class memoir para ver qué tipo de diseños le permite producir.

Hay un libro en DocBook available online. Eche un vistazo a eso también, para ver qué tipo de diseños puede producir y si puede formatear fácilmente el contenido matemático que desea con DocBook.

Mi sugerencia es ir con LaTeX si tiene que escribir cualquier matemática no trivial, pero por supuesto depende del formato con el que le resulte más fácil trabajar.

+4

+1 El manual de memorias tiene una explicación muy completa del proceso de creación de libros –

27

Lo bueno de DocBook es que está basado en XML, por lo que un capítulo es un subárbol completo, una sección es un subárbol completo, etc. En LaTeX, la separación solo está determinada por la estructura del documento durante un escaneo lineal .

Lo peor de Docbook es que está basado en XML: las cosas de nivel inferior son extremadamente sucias y molestas de codificar de forma manual.

15

No estoy muy familiarizado con DocBook, aunque he usado LaTeX bastante extensamente. La idea de LaTeX es no para producir un documento personalizado, es para producir un documento atractivo y legible. Es un conjunto de bibliotecas, plantillas, macros, etc. en torno a TeX, creado por personas que saben lo que hacen cuando se trata de diseñar documentos. Por supuesto, tiene necesidades especiales que no pueden anticipar, por lo que tendrá que hacer algunos ajustes también. Es un lenguaje declarativo de muy alto nivel que pretende reflejar el contenido y la estructura de un documento, en lugar de cómo debería ser, la idea es que sus ideas y cómo están organizadas es lo que debe preocuparse, no el diseño de su texto en la página. Si necesita más control, existe una enorme biblioteca de estilos y macros adicionales, etc. (CTAN), y algunos de ellos (recuerdan las memorias) le devuelven gran parte de ese control.

Si está metiendo muchas cosas de formato complicado en el cuerpo de su documento LaTeX, lo está haciendo mal. Lo que necesita hacer es obtener su contenido allí, y su documento estructurado en capítulos y secciones y subsecciones semánticamente, luego vuelva y preocúpese por el formateo. No debería tener que entrar en el cuerpo de su documento mucho en este punto; debe ser todo lo general que se aplica a todo el documento, preferentemente de forma reutilizable. Esto asegura consistencia.

8

Hace aproximadamente dos años, traté de agradar y usar DocBook; sin embargo, volví a LaTeX porque, al menos en ese momento, LaTeX producía resultados de mejor calidad (PDF). Nunca logré hacer funcionar el DocBook para la traducción de LaTeX a PDF. Probablemente mis problemas fueron "error del operador", pero sugiero probar DocBook (y LaTeX) para obtener algunos documentos simples antes de elegir uno.

Éstos son algunos puntos que me llevaron a elegir LaTeX:

  • BibTeX para las bibliografías con JabREF como una interfaz gráfica de usuario
  • salida de excelente calidad PDF
  • Un montón de ejemplos en Internet, incluyendo varios similares a mi formato preferido
  • Los buenos libros, como "A Guide to LaTeX"

Si le gustan las GUI, eche un vistazo al LyX.

6

No quiero ir por la ruta "más fácil" o mejor ya que considero esto como una cuestión de gustos y para acostumbrarme. Veo que el docbook es XML como una ventaja, por lo que se puede transformar en casi cualquier cosa que desee mediante el uso de XSLT. Combinado con su autocontenidad, se parece más a estructurar el contenido que Latex. Documentar especialmente el software de código abierto Docbook es muy utilizado. Puede agarrar fácilmente las plantillas y hojas de estilo de, p. Hibernate y/o Spring y ajústalos a tus necesidades.

Otro aspecto que me gustaría detectar es la integración en los sistemas de compilación. Para Maven hay un plugin llamado docbkx disponible, que simplemente escupe PDF, HTML y lo que quieras basándose en los contenidos y un XSLT apropiado. No se necesitan más instalaciones. Las únicas formas que he visto para hacer esto con Latex es instalar algunos paquetes en el sistema operativo de compilación y crear tu propio guión para em. En mi humilde opinión, ese no es un camino viable, especialmente si construyes una plataforma cruzada.

En cuanto al editor puedo aconsejar XMLmind XMLEditor que toma mucho del dolor y proporciona un acercamiento WYSIWYG bastante bueno al docbook.

Si confía en las expresiones matemáticas, también preferiría elegir Látex, ya que no hay nada con la misma potencia disponible en el docbook.

+0

es de pago y muy costoso – dns

0

Arbortext admite LaTeX nativo. Puede enviar el motor de publicación o el compositor de impresión LaTeX y lo transmitirá. También es compatible con muchos otros lenguajes de composición.

34

DocBook no es "un mecanismo de composición tipográfica". DocBook se trata de separar la presentación del contenido. DocBook solo trata con contenido; se usa para crear una representación abstracta de un libro, artículo, etc. Hay numerous tools por ahí que el diseño DocBook de acuerdo con plantillas predefinidas. Some of these tools use LaTeX. AFAIK, O'Reilly utiliza una versión ligeramente modificada del lenguaje DocBook para autorizar su contenido, luego alimentan este XML en scripts personalizados que se integran con Adobe FrameMaker para diseñar sus libros.

LaTeX es esencialmente un intento de separar la presentación del contenido dentro de TeX, pero no logra ese objetivo IMO. La presentación todavía se mezcla con el contenido en la mayoría de los casos. Creo que LaTeX es actualmente la mejor herramienta de código abierto para diseñar documentos paginados. Sin embargo, herramientas propietarias como InDesign tienen muchas características (como buena OpenType support) que TeX no tiene (XeTeX tipo de agrega soporte OpenType). De cualquier manera, si está escribiendo un libro, le recomiendo usar DocBook para crear su contenido en lugar de LaTeX.

Dicho esto, parece que está escribiendo documentos cortos y únicos con un poco de matemática. Creo que LaTeX es probablemente tu mejor opción. Si necesita lotes de personalización, puede necesitar usar Plain TeX en lugar de LaTeX, pero requerirá bastante trabajo de su parte.

+3

+1 para explicar la diferencia fundamental entre ellos: DocBook es para el contenido; TeX es para composición tipográfica. –

+2

BTW: El comentario en DocBook en orielly era correcto. 3 años después hay un fuerte impulso para comenzar a escribir sus libros en HTMLBook una versión bloqueada de HTML5 https://github.com/oreillymedia/HTMLBook – matchew

+1

Papel en HTMLBook del autor => http://www.balisage.net/ Proceedings/vol10/html/Kleinfeld01/BalisageVol10-Kleinfeld01.html – matchew

2

¿Ha mirado ConTeXt. Es más flexible y mucho más fácil de configurar en comparación con LaTeX.

5

Las verdaderas razones para usar el centro de DocBook para tener su documento marcado de manera significativa, ser capaz de validarlo, y transformarlo para muchos propósitos, no solo publicarlo. LaTeX y otros conjuntos de macros agregan una capa de marcado semántico, pero siempre puede introducir el código TeX y agregar macros de otras fuentes. Fundamentalmente, un documento TeX es un programa de computadora que solo puede ser analizado por un procesador TeX.

Para las matemáticas y DocBook: DocBook siendo XML le permite usar otras tecnologías XML según corresponda; en este caso MathML. XMLmind XMLEditor ya mencionado proporciona un editor de matemática GUI e incluye hojas de estilo para formatearlas para web e imprimirlas junto con los contenidos de DocBook.

También hay herramientas disponibles que permiten la traducción de documentos XML a otros idiomas (xml2po es simple, http://heartsome.net/EN/home.html es un conjunto completo).

1

FWIW Uso docbook a través de xmlmind (http://xmlmind.com/) para producir archivos html y .chm. También preparé FOP para producir archivos PDF, pero no son bonitos.

Habiendo hecho la fuente del docbook, la cocino con xsltproc y los archivos docbook.xsl. Esto es prolongado y doloroso de configurar, pero una vez que está funcionando es dulce.

Otro enfoque sería usar pandoc (una herramienta de tipo de rebaja extendida) para obtener de markdown a DocBook. Esto cortaría el editor xml, pero todavía tiene que hacer la (s) transformación (es) a su formato de salida.

3

Quien tenga que crear un documento profesional y científico (papel de investigación, libro, guía técnica, etc.) sabrá por qué TeX es una mejor opción.

Para aquellos que no conocen algunos hechos aquí, hay un ejemplo perfecto: en las buenas universidades, el trabajo de los estudiantes puede ser completamente rechazado si (s) no hizo referencia adecuada a las obras de otras personas. Existen, creo, cientos de formas "oficiales" para citar y hacer referencia, la escuela de Harvard tiene su propia ACM, entre los científicos informáticos la notación numérica (Vancouver) es la más común. Muchas organizaciones profesionales tienen sus propios estilos, y se apegan a él. Hasta donde yo sé, TeX es el único sistema de composición tipográfica que es consciente de eso, y con la ayuda de BiBTeX se convierte en extremadamente poderosa herramienta para los autores. Puede ahorrar horas, si no días, de trabajo.

Si fuera escritor novel, o autor de algún documento no técnico, podría elegir DocBook. !