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 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
(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))])])))
|