summaryrefslogtreecommitdiff
path: root/doc/user/latexe.skb
blob: dab418912607a8ed034ea22892fdb99e71302bd4 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
;;; 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 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.])
           (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))])])))