;;; latexe.skb -- Documentation of the LaTeX engine. ;;; -*- coding: iso-8859-1 -*- ;;; ;;; Copyright 2007, 2008, 2012 Ludovic Courtès <ludo@gnu.org> ;;; Copyright 2003, 2004 Manuel Serrano ;;; ;;; ;;; This file is part of Skribilo. ;;; ;;; Skribilo 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 3 of the License, or ;;; (at your option) any later version. ;;; ;;; Skribilo 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 Skribilo. If not, see <http://www.gnu.org/licenses/>. ;*---------------------------------------------------------------------*/ ;* Document */ ;*---------------------------------------------------------------------*/ (section :title "LaTeX Engine" :file #t :ident "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.]) (encoding ,[The encoding of the output document,(footnote [This option is supported when Guile 2.0+ is being used.]).]) (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))])])))