;;; latexe.skb -- Documentation of the LaTeX engine. ;;; ;;; Copyright 2007, 2008 Ludovic Courtès ;;; Copyright 2003, 2004 Manuel Serrano ;;; ;;; ;;; This program is free software; you can redistribute it and/or modify ;;; it under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 2 of the License, or ;;; (at your option) any later version. ;;; ;;; This program is distributed in the hope that it will be useful, ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with this program; if not, write to the Free Software ;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, ;;; USA. ;*---------------------------------------------------------------------*/ ;* Document */ ;*---------------------------------------------------------------------*/ (section :title "LaTeX Engine" :file #t (mark "latex-engine") (index "LaTeX" :note "Engine") (p [Not surprisingly, the LaTeX engine produces ,(ref :url "http://www.latex-project.org/" :text [LaTeX]) output, which can then be used to produce high-quality PostScript of PDF files for printing.]) (subsection :title "LaTeX Customization" (doc-engine 'latex `((documentclass ,[A string declaring the LaTeX document class.]) (class-has-chapters? ,[A boolean indicating whether the document class has a ,(code [chapter]) markup. If ,(code "#f"), then Skribilo's ,(code [chapter]) is mapped to LaTeX' ,(code [section]), and so on.]) (usepackage ,[The boolean ,(code "#f") if no package is used or a string declaring The LaTeX packages.]) (predocument ,[The boolean ,(code "#f") or a string to be written before the \\begin{document} statement.]) (postdocument ,[The boolean ,(code "#f") or a string to be written after the \\begin{document} statement.]) (maketitle ,[The boolean ,(code "#f") or a string to be written after the \\begin{document} statement for emitting the document title.]) (color [Enable/disable colors.]) (%font-size #f) ;; source fontification (source-color ,[A boolean enabling/disabling color of source code (see ,(markup-ref "source") markup).]) (source-comment-color "The source comment color.") (source-error-color "The source error color.") (source-define-color "The source define color.") (source-module-color "The source module color.") (source-markup-color "The source markup color.") (source-thread-color "The source thread color.") (source-string-color "The source string color.") (source-bracket-color "The source bracket color.") (source-type-color "The source type color.") (color-usepackage "The LaTeX package for coloring.") (hyperref "Enables/disables hypererrf.") (hyperref-usepackage "The LaTeX package for hyperref.") (image-format "The image formats for this engine.") (index-page-ref "Indexes use page references.")) :source "skribilo/engine/latex.scm")) (subsection :title "LaTeX Document Class" (p [The default setting of the Skribilo LaTeX engine is to produce a document using the ,(code "article") document class. In order to produce a document that uses a document class defining the ,(code "chapter") command (unlike the ,(code "article") class), the engine must be customized. Changing this setting can be done with expressions such as: ,(prgm :language skribe [ (let ((le (find-engine 'latex))) (engine-custom-set! le 'documentclass "\\\\documentclass{book}") (engine-custom-set! le 'class-has-chapters? #t))])])))