1 #LyX 2.3 created this file. For more info see http://www.lyx.org/
5 \save_transient_properties true
6 \origin /systemlyxdir/doc/
9 % DO NOT ALTER THIS PREAMBLE!!!
11 % This preamble is designed to ensure that this document prints
12 % out as advertised. If you mess with this preamble,
13 % parts of this document may not print out as expected. If you
14 % have problems LaTeXing this file, please contact
15 % the documentation team
16 % email: lyx-docs@lists.lyx.org
18 % the pages of the TOC is numbered roman
19 % and a pdf-bookmark for the TOC is added
20 \let\myTOC\tableofcontents
21 \renewcommand\tableofcontents{%
23 \pdfbookmark[1]{\contentsname}{}
27 % increase link area for cross-references and autoname them,
28 \AtBeginDocument{\renewcommand{\ref}[1]{\mbox{\autoref{#1}}}}
29 \@ifundefined{extrasenglish}{\usepackage[english]{babel}}{}
30 \@ifpackageloaded{babel}{
31 \addto\extrasenglish{%
32 \renewcommand*{\equationautorefname}[1]{}%
33 \renewcommand{\sectionautorefname}{sec.\negthinspace}%
34 \renewcommand{\subsectionautorefname}{sec.\negthinspace}%
35 \renewcommand{\subsubsectionautorefname}{sec.\negthinspace}%
39 \options fleqn,bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading
40 \use_default_options false
44 \maintain_unincluded_children false
46 \language_package default
49 \font_roman "lmodern" "default"
50 \font_sans "lmss" "default"
51 \font_typewriter "lmtt" "default"
52 \font_math "auto" "auto"
53 \font_default_family default
54 \use_non_tex_fonts false
57 \font_sf_scale 100 100
58 \font_tt_scale 100 100
61 \default_output_format pdf2
63 \bibtex_command default
64 \index_command default
68 \pdf_title "LyX Configuration Manual"
69 \pdf_author "LyX Team"
70 \pdf_subject "LyX-documentation Customization"
71 \pdf_keywords "LyX, documentation, customization"
73 \pdf_bookmarksnumbered true
74 \pdf_bookmarksopen true
75 \pdf_bookmarksopenlevel 1
80 \pdf_pdfusetitle false
81 \pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
84 \use_package amsmath 0
85 \use_package amssymb 0
88 \use_package mathdots 1
89 \use_package mathtools 0
91 \use_package stackrel 0
92 \use_package stmaryrd 0
93 \use_package undertilde 0
95 \cite_engine_type default
99 \paperorientation portrait
103 \notefontcolor #0000ff
115 \paragraph_separation indent
116 \paragraph_indentation default
117 \quotes_language english
120 \paperpagestyle headings
121 \tracking_changes true
122 \output_changes false
126 \author 424524441 "rgheck"
132 Customizing \SpecialChar LyX
133 : Features for the Advanced User
137 by the \SpecialChar LyX
142 \begin_layout Plain Layout
144 If you have comments or error corrections, please send them to the \SpecialChar LyX
147 \begin_inset CommandInset href
149 target "lyx-docs@lists.lyx.org"
156 \begin_inset Quotes eld
160 \begin_inset Quotes erd
163 in the subject header, and please cc the current maintainer of this file,
164 Richard Heck <rgheck@comcast.net>.
170 \begin_inset Newline newline
174 \begin_inset Newline newline
180 \begin_layout Standard
181 \begin_inset CommandInset toc
182 LatexCommand tableofcontents
189 \begin_layout Standard
190 \begin_inset Note Note
193 \begin_layout Plain Layout
194 Please use change tracking when modifying this document.
195 This makes it easier for our translators to recognize things that have
196 been changed, and it helps the maintainer keep up-to-date with what's been
205 \begin_layout Chapter
209 \begin_layout Standard
210 This manual covers the customization features present in \SpecialChar LyX
212 In it, we discuss issues like keyboard shortcuts, screen previewing options,
213 printer options, sending commands to \SpecialChar LyX
214 via the \SpecialChar LyX
215 Server, internationalization,
216 installing new \SpecialChar LaTeX
217 classes and \SpecialChar LyX
219 We can't possibly hope to touch on everything you can change—our developers
220 add new features faster than we can document them—but we will explain the
221 most common customizations and hopefully point you in the right direction
222 for some of the more obscure ones.
225 \begin_layout Standard
226 \begin_inset Branch OutDated
229 \begin_layout Standard
230 Information from previous versions of this document that now seems to be
231 outdated is contained in the OutDated branch of this document.
232 By default, this information will not appear in the \SpecialChar LaTeX
241 \begin_layout Chapter
246 \begin_layout Standard
247 This chapter aims to help you to find your way through the \SpecialChar LyX
250 Before continuing to read this chapter, you should find out where your
252 library and user directories are by using
253 \begin_inset Flex Noun
256 \begin_layout Plain Layout
257 Help\SpecialChar menuseparator
268 The library directory is the place where \SpecialChar LyX
269 places its system-wide configuration
270 files; the user directory is where you can place your modified versions.
271 We will call the former
272 \begin_inset Flex Code
275 \begin_layout Plain Layout
282 \begin_inset Flex Noun
285 \begin_layout Plain Layout
291 in the remainder of this document.
295 \begin_layout Section
297 \begin_inset Flex Code
300 \begin_layout Plain Layout
309 \begin_layout Standard
310 \begin_inset Flex Code
313 \begin_layout Plain Layout
319 and its sub-directories contain a number of files and that can be used
320 to customize \SpecialChar LyX
322 You can change many of these files from within \SpecialChar LyX
324 \begin_inset Flex Noun
327 \begin_layout Plain Layout
328 Tools\SpecialChar menuseparator
335 Most customization that you will want to do in \SpecialChar LyX
336 is possible through this
338 However, many other inner aspects of \SpecialChar LyX
339 can be customized by modifying the
341 \begin_inset Flex Code
344 \begin_layout Plain Layout
351 These files fall in different categories, described in the following subsection
355 \begin_layout Subsection
356 Automatically generated files
359 \begin_layout Standard
360 The files, which are to be found in
361 \begin_inset Flex Noun
364 \begin_layout Plain Layout
370 , are generated when you configure \SpecialChar LyX
372 They contain various default values that are guessed by inspection.
373 In general, it is not a good idea to modify them, since they might be overwritt
377 \begin_layout Labeling
378 \labelwidthstring 00.00.0000
379 \begin_inset Flex Code
382 \begin_layout Plain Layout
388 contains defaults for various commands.
391 \begin_layout Labeling
392 \labelwidthstring 00.00.0000
393 \begin_inset Flex Code
396 \begin_layout Plain Layout
402 contains the list of packages that have been recognized by \SpecialChar LyX
404 It is currently unused by the \SpecialChar LyX
405 program itself, but the information extracted,
406 and more, is made available with
407 \begin_inset Flex Noun
410 \begin_layout Plain Layout
411 Help\SpecialChar menuseparator
425 \begin_layout Labeling
426 \labelwidthstring 00.00.0000
427 \begin_inset Flex Code
430 \begin_layout Plain Layout
436 the list of text classes that have been found in your
437 \begin_inset Flex Code
440 \begin_layout Plain Layout
446 directories, along with the associated \SpecialChar LaTeX
447 document class and their description.
450 \begin_layout Labeling
451 \labelwidthstring 00.00.0000
452 \begin_inset Flex Code
455 \begin_layout Plain Layout
461 the list of layout modules found in your
462 \begin_inset Flex Code
465 \begin_layout Plain Layout
474 \begin_layout Labeling
475 \labelwidthstring 00.00.0000
476 \begin_inset Flex Code
479 \begin_layout Plain Layout
485 lists of various sorts of \SpecialChar LaTeX
486 -related files found on your system
489 \begin_layout Labeling
490 \labelwidthstring 00.00.0000
491 \begin_inset Flex Code
494 \begin_layout Plain Layout
495 doc/\SpecialChar LaTeX
501 is automatically generated during configuration from the file
502 \begin_inset Flex Code
505 \begin_layout Plain Layout
513 It contains information on your \SpecialChar LaTeX
517 \begin_layout Subsection
521 \begin_layout Standard
522 These directories are duplicated between
523 \begin_inset Flex Code
526 \begin_layout Plain Layout
533 \begin_inset Flex Code
536 \begin_layout Plain Layout
543 If a particular files exists in both places, the one in
544 \begin_inset Flex Code
547 \begin_layout Plain Layout
556 \begin_layout Labeling
557 \labelwidthstring 00.00.0000
558 \begin_inset Flex Code
561 \begin_layout Plain Layout
567 this directory contains files with the extension
568 \begin_inset Flex Code
571 \begin_layout Plain Layout
577 that define the keybindings used in \SpecialChar LyX
579 If there exists an internationalized version of the bind file named
580 \begin_inset Flex Code
583 \begin_layout Plain Layout
589 , that will be used first.
592 \begin_layout Labeling
593 \labelwidthstring 00.00.0000
594 \begin_inset Flex Code
597 \begin_layout Plain Layout
603 contains graphics files that can be included in documents.
607 \begin_layout Labeling
608 \labelwidthstring 00.00.0000
609 \begin_inset Flex Code
612 \begin_layout Plain Layout
618 contains \SpecialChar LyX
619 documentation files (including the one you are currently reading).
621 \begin_inset Flex Code
624 \begin_layout Plain Layout
631 deserves special attention, as noted above.
632 The internationalized help docs are in subdirectories
633 \begin_inset Flex Code
636 \begin_layout Plain Layout
643 \begin_inset Quotes eld
647 \begin_inset Quotes erd
650 is the ISO language code.
652 \begin_inset CommandInset ref
654 reference "cha:Internationalizing-LyX"
661 \begin_layout Labeling
662 \labelwidthstring 00.00.0000
663 \begin_inset Flex Code
666 \begin_layout Plain Layout
672 contains example files that explain how to use some features.
673 In the file browser, press the
674 \begin_inset Flex Noun
677 \begin_layout Plain Layout
686 \begin_layout Labeling
687 \labelwidthstring 00.00.0000
688 \begin_inset Flex Code
691 \begin_layout Plain Layout
697 contains image files that are used by the
698 \begin_inset Flex Noun
701 \begin_layout Plain Layout
708 In addition, it also contains the individual icons used in the toolbar
709 and the banners that can be shown when \SpecialChar LyX
713 \begin_layout Labeling
714 \labelwidthstring 00.00.0000
715 \begin_inset Flex Code
718 \begin_layout Plain Layout
724 contains keyboard keymapping files.
726 \begin_inset CommandInset ref
728 reference "sec:International-Keymap-Stuff"
735 \begin_layout Labeling
736 \labelwidthstring 00.00.0000
737 \begin_inset Flex Code
740 \begin_layout Plain Layout
746 contains the text class and module files described in
747 \begin_inset CommandInset ref
749 reference "cha:Installing-New-Document"
756 \begin_layout Labeling
757 \labelwidthstring 00.00.0000
758 \begin_inset Flex Code
761 \begin_layout Plain Layout
768 \begin_inset Flex Code
771 \begin_layout Plain Layout
777 Python scripts used to convert between \SpecialChar LyX
779 These can be run from the command line if, say, you want to batch-convert
783 \begin_layout Labeling
784 \labelwidthstring 00.00.0000
785 \begin_inset Flex Code
788 \begin_layout Plain Layout
794 contains some files that demonstrate the capabilities of the
795 \begin_inset Flex Noun
798 \begin_layout Plain Layout
809 Also contains some scripts used by \SpecialChar LyX
813 \begin_layout Labeling
814 \labelwidthstring 00.00.0000
815 \begin_inset Flex Code
818 \begin_layout Plain Layout
824 contains the standard \SpecialChar LyX
825 template files described in
826 \begin_inset CommandInset ref
828 reference "subsec:Creating-Templates"
835 \begin_layout Labeling
836 \labelwidthstring 00.00.0000
837 \begin_inset Flex Code
840 \begin_layout Plain Layout
846 contains files with the extension
847 \begin_inset Flex Code
850 \begin_layout Plain Layout
856 that define the user interface to \SpecialChar LyX
858 That is, the files define which items appear in which menus and the items
859 appearing on the toolbar.
862 \begin_layout Subsection
863 Files you don't want to modify
866 \begin_layout Standard
867 These files are used internally by \SpecialChar LyX
868 and you generally do not need to modify
869 them unless you are a developer.
872 \begin_layout Labeling
873 \labelwidthstring 00.00.0000
874 \begin_inset Flex Code
877 \begin_layout Plain Layout
883 this file contains the list of \SpecialChar LyX
885 The contents are displayed with the menu entry
886 \begin_inset Flex Noun
889 \begin_layout Plain Layout
890 Help\SpecialChar menuseparator
903 \begin_layout Labeling
904 \labelwidthstring 00.00.0000
905 \begin_inset Flex Code
908 \begin_layout Plain Layout
914 this is a \SpecialChar LaTeX
915 script used during the configuration process.
919 \begin_layout Labeling
920 \labelwidthstring 00.00.0000
921 \begin_inset Flex Code
924 \begin_layout Plain Layout
930 this is a Python script that is used to re-configure \SpecialChar LyX
932 It creates configuration files in the directory it was run from.
935 \begin_layout Subsection
936 Other files needing a line or two
939 \begin_layout Labeling
940 \labelwidthstring 00.00.0000
941 \begin_inset Flex Code
944 \begin_layout Plain Layout
950 this contains tables describing how different character encodings can be
954 \begin_layout Labeling
955 \labelwidthstring 00.00.0000
956 \begin_inset Flex Code
959 \begin_layout Plain Layout
965 this file contains the templates available to the new
966 \begin_inset Flex Noun
969 \begin_layout Plain Layout
980 \begin_inset CommandInset ref
982 reference "chap:Including-External-Material"
989 \begin_layout Labeling
990 \labelwidthstring 00.00.0000
991 \begin_inset Flex Code
994 \begin_layout Plain Layout
1000 this file contains a list of all the languages currently supported by \SpecialChar LyX
1004 \begin_layout Labeling
1005 \labelwidthstring 00.00.0000
1006 \begin_inset Flex Code
1009 \begin_layout Plain Layout
1015 contains information about the supported fonts.
1018 \begin_layout Labeling
1019 \labelwidthstring 00.00.0000
1020 \begin_inset Flex Code
1023 \begin_layout Plain Layout
1029 this file contains translations for internationalized paragraph styles
1031 \begin_inset CommandInset ref
1033 reference "subsec:I18n"
1040 \begin_layout Labeling
1041 \labelwidthstring 00.00.0000
1042 \begin_inset Flex Code
1045 \begin_layout Plain Layout
1051 this file contains information about unicode-encoded glyphs and the way
1052 they are supported by \SpecialChar LyX
1053 via \SpecialChar LaTeX
1057 \begin_layout Section
1058 Your local configuration directory
1061 \begin_layout Standard
1062 Even if you are using \SpecialChar LyX
1063 as an unprivileged user, you might want to change
1065 configuration for your own use.
1067 \begin_inset Flex Code
1070 \begin_layout Plain Layout
1076 directory contains all your personal configuration files.
1077 This is the directory described as
1078 \begin_inset Quotes eld
1082 \begin_inset Quotes erd
1086 \begin_inset Flex Noun
1089 \begin_layout Plain Layout
1090 Help\SpecialChar menuseparator
1092 \begin_inset space ~
1101 This directory is used as a mirror of
1102 \begin_inset Flex Code
1105 \begin_layout Plain Layout
1111 , which means that every file in
1112 \begin_inset Flex Code
1115 \begin_layout Plain Layout
1121 is a replacement for the corresponding file in
1122 \begin_inset Flex Code
1125 \begin_layout Plain Layout
1132 Any configuration file described in the above sections can be placed either
1133 in the system-wide directory, in which case it will affect all users, or
1134 in your local directory for your own use.
1137 \begin_layout Standard
1138 To make things clearer, let's provide a few examples:
1141 \begin_layout Itemize
1142 The preferences set in the
1143 \begin_inset Flex Noun
1146 \begin_layout Plain Layout
1147 Tools\SpecialChar menuseparator
1153 dialog are saved to a file
1154 \begin_inset Flex Code
1157 \begin_layout Plain Layout
1164 \begin_inset Flex Code
1167 \begin_layout Plain Layout
1176 \begin_layout Itemize
1177 When you reconfigure using
1178 \begin_inset Flex Noun
1181 \begin_layout Plain Layout
1182 Tools\SpecialChar menuseparator
1190 \begin_inset Flex Code
1193 \begin_layout Plain Layout
1199 script, and the resulting files are written in your local configuration
1201 This means that any additional text class file that you might have added
1203 \begin_inset Flex Code
1206 \begin_layout Plain Layout
1212 will be added to the list of classes in the
1213 \begin_inset Flex Noun
1216 \begin_layout Plain Layout
1217 Document\SpecialChar menuseparator
1226 \begin_layout Itemize
1227 If you get some updated documentation from \SpecialChar LyX
1228 ftp site and cannot install
1229 it because you do not have sysadmin rights on your system, you can just
1231 \begin_inset Flex Code
1234 \begin_layout Plain Layout
1240 and the items in the
1241 \begin_inset Flex Noun
1244 \begin_layout Plain Layout
1250 menu will open them!
1253 \begin_layout Section
1254 Running \SpecialChar LyX
1255 with multiple configurations
1258 \begin_layout Standard
1259 The configuration freedom of the local configuration directory may not suffice
1260 if you want to have more than one configuration at your disposal.
1261 For example, you may want to be use different key bindings or printer settings
1263 You can achieve this by having several such directories.
1264 You then specify which directory to use at run-time.
1267 \begin_layout Standard
1268 Invoking \SpecialChar LyX
1269 with the command line switch
1270 \begin_inset Flex Code
1273 \begin_layout Plain Layout
1283 instructs the program to read the configuration from that directory, and
1284 not from the default directory.
1285 (You can determine the default directory by running \SpecialChar LyX
1287 \begin_inset Flex Code
1290 \begin_layout Plain Layout
1296 switch.) If the specified directory does not exist, \SpecialChar LyX
1298 for you, just like it does for the default directory on the first time
1299 you run the program.
1300 You can modify the configuration options in this additional user directory
1301 exactly as you would for the default directory.
1302 These directories are completely independent (but read on).
1303 Note that setting the environment variable
1304 \begin_inset Flex Code
1307 \begin_layout Plain Layout
1313 to some value has exactly the same effect.
1316 \begin_layout Standard
1317 Having several configurations also requires more maintenance: if you want
1318 to add a new layout to
1319 \begin_inset Flex Code
1322 \begin_layout Plain Layout
1328 which you want available from all your configurations, you must add it
1329 to each directory separately.
1330 You can avoid this with the following trick: after \SpecialChar LyX
1331 creates the additional
1332 directory, most of the subdirectories (see above) are empty.
1333 If you want the new configuration to mirror an existing one, replace the
1334 empty subdirectory with a symbolic link to the matching subdirectory in
1335 the existing configuration.
1337 \begin_inset Flex Code
1340 \begin_layout Plain Layout
1346 subdirectory, however, since it contains a file written by the configuration
1347 script (also accessible through
1348 \begin_inset Flex Noun
1351 \begin_layout Plain Layout
1352 Tools\SpecialChar menuseparator
1358 ) which is configuration-specific.
1361 \begin_layout Chapter
1362 The Preferences dialog
1365 \begin_layout Standard
1366 All options of the preferences dialog are described in the Appendix
1368 The Preferences Dialog
1375 For some options you might find here more details.
1378 \begin_layout Section
1380 \begin_inset CommandInset label
1389 \begin_layout Standard
1390 The first step is to define your file formats if they are not already defined.
1392 \begin_inset Flex Noun
1395 \begin_layout Plain Layout
1396 Tools\SpecialChar menuseparator
1404 \begin_inset Flex Noun
1407 \begin_layout Plain Layout
1408 File Handling\SpecialChar menuseparator
1415 \begin_inset Flex Noun
1418 \begin_layout Plain Layout
1424 button to define your new format.
1426 \begin_inset Flex Noun
1429 \begin_layout Plain Layout
1435 field contains the name used to identify the format in the GUI.
1437 \begin_inset Flex Noun
1440 \begin_layout Plain Layout
1446 is used to identify the format internally.
1447 You will also need to enter a file extension.
1448 These are all required.
1450 \begin_inset Flex Noun
1453 \begin_layout Plain Layout
1459 field is used to provide a keyboard shortcut on the menus.
1460 (For example, pressing
1461 \begin_inset Flex Noun
1464 \begin_layout Plain Layout
1471 \begin_inset Flex Noun
1474 \begin_layout Plain Layout
1475 Document\SpecialChar menuseparator
1476 View (Other Formats)\SpecialChar menuseparator
1485 \begin_layout Standard
1487 \begin_inset Flex Noun
1490 \begin_layout Plain Layout
1497 \begin_inset Flex Noun
1500 \begin_layout Plain Layout
1507 For example, you might want to use
1508 \begin_inset Flex Noun
1511 \begin_layout Plain Layout
1517 to view PostScript files.
1518 You can enter the command needed to start the program in the corresponding
1520 In defining this command, you can use the four variables listed in the
1522 The viewer is launched when you view an image in \SpecialChar LyX
1524 \begin_inset Flex Noun
1527 \begin_layout Plain Layout
1528 Document\SpecialChar menuseparator
1535 The editor is for example launched when you right-click on an image and
1537 \begin_inset Flex Noun
1540 \begin_layout Plain Layout
1546 in the appearing context menu.
1549 \begin_layout Standard
1551 \begin_inset Flex Noun
1554 \begin_layout Plain Layout
1560 type of a format is optional, but if it is specified, it must be unique
1562 It is used to detect files of this format from the file contents.
1563 For some important file formats there is no MIME type officially registered
1565 \begin_inset CommandInset href
1568 target "http://www.iana.org/assignments/media-types/"
1573 Therefore \SpecialChar LyX
1574 uses the extended list of MIME types as specified by
1575 \begin_inset CommandInset href
1577 name "freedesktop.org"
1578 target "http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec"
1585 \begin_layout Standard
1587 \begin_inset Flex Noun
1590 \begin_layout Plain Layout
1596 option tells \SpecialChar LyX
1597 that a format is suitable for document export.
1598 If this is set and if a suitable conversion route exists (see
1599 \begin_inset CommandInset ref
1601 reference "sec:Converters"
1605 ), the format will appear in the
1606 \begin_inset Flex Noun
1609 \begin_layout Plain Layout
1610 File\SpecialChar menuseparator
1617 The format will also appear in the
1618 \begin_inset Flex Noun
1621 \begin_layout Plain Layout
1622 Document\SpecialChar menuseparator
1628 menu if a viewer is specified for the format.
1629 Pure image formats, such as
1630 \begin_inset Flex Code
1633 \begin_layout Plain Layout
1639 , should not use this option.
1640 Formats that can both represent vector graphics and documents like
1641 \begin_inset Flex Code
1644 \begin_layout Plain Layout
1653 \begin_layout Standard
1655 \begin_inset Flex Noun
1658 \begin_layout Plain Layout
1659 Vector graphics format
1664 tells \SpecialChar LyX
1665 that a format can contain vector graphics.
1666 This information is used to determine the target format of included graphics
1668 \begin_inset Flex Noun
1671 \begin_layout Plain Layout
1678 Included graphics may need to be converted to either
1679 \begin_inset Flex Noun
1682 \begin_layout Plain Layout
1689 \begin_inset Flex Noun
1692 \begin_layout Plain Layout
1699 \begin_inset Flex Noun
1702 \begin_layout Plain Layout
1709 \begin_inset Flex Noun
1712 \begin_layout Plain Layout
1718 cannot handle other image formats.
1719 If an included graphic is not already in
1720 \begin_inset Flex Noun
1723 \begin_layout Plain Layout
1730 \begin_inset Flex Noun
1733 \begin_layout Plain Layout
1740 \begin_inset Flex Noun
1743 \begin_layout Plain Layout
1749 format, it is converted to
1750 \begin_inset Flex Noun
1753 \begin_layout Plain Layout
1759 if the vector format option is set, and otherwise to
1760 \begin_inset Flex Noun
1763 \begin_layout Plain Layout
1772 \begin_layout Section
1776 \begin_layout Standard
1777 Since all conversions from one format to another take place in \SpecialChar LyX
1779 directory, it is sometimes necessary to modify a file before copying it
1780 to the temporary directory in order that the conversion may be performed.
1784 \begin_layout Plain Layout
1785 For example, the file may refer to other files—images, for example—using
1786 relative file names, and these may become invalid when the file is copied
1787 to the temporary directory.
1792 This is done by a Copier: It copies a file to (or from) the temporary directory
1793 and may modify it in the process.
1796 \begin_layout Standard
1797 The definitions of the copiers may use eight variables:
1800 \begin_layout Labeling
1801 \labelwidthstring 00.00.0000
1802 \begin_inset Flex Code
1805 \begin_layout Plain Layout
1811 The \SpecialChar LyX
1812 system directory (e.
1813 \begin_inset space \thinspace{}
1817 \begin_inset space \space{}
1821 \begin_inset Flex Noun
1824 \begin_layout Plain Layout
1833 \begin_layout Labeling
1834 \labelwidthstring 00.00.0000
1835 \begin_inset Flex Code
1838 \begin_layout Plain Layout
1847 \begin_layout Labeling
1848 \labelwidthstring 00.00.0000
1849 \begin_inset Flex Code
1852 \begin_layout Plain Layout
1861 \begin_layout Labeling
1862 \labelwidthstring 00.00.0000
1863 \begin_inset Flex Code
1866 \begin_layout Plain Layout
1872 The base name (without filename extension) in the \SpecialChar LyX
1876 \begin_layout Labeling
1877 \labelwidthstring 00.00.0000
1878 \begin_inset Flex Code
1881 \begin_layout Plain Layout
1887 The full directory path of the \SpecialChar LyX
1891 \begin_layout Labeling
1892 \labelwidthstring 00.00.0000
1893 \begin_inset Flex Code
1896 \begin_layout Plain Layout
1902 The full pathname to the original \SpecialChar LyX
1903 file being processed
1906 \begin_layout Labeling
1907 \labelwidthstring 00.00.0000
1908 \begin_inset Flex Code
1911 \begin_layout Plain Layout
1917 The filename (without any directory path) of the \SpecialChar LyX
1921 \begin_layout Labeling
1922 \labelwidthstring 00.00.0000
1923 \begin_inset Flex Code
1926 \begin_layout Plain Layout
1932 The `\SpecialChar LaTeX
1936 \begin_layout Standard
1937 The latter should be the filename as it would be used in a \SpecialChar LaTeX
1945 It is relevant only when exporting files suitable for such inclusion.
1948 \begin_layout Standard
1949 Copiers can be used to do almost anything with output files.
1950 For example, suppose you want generated pdf files to be copied to a special
1952 \begin_inset Flex Code
1955 \begin_layout Plain Layout
1962 Then you could write a shell script such as this one:
1965 \begin_layout Standard
1966 \begin_inset listings
1970 \begin_layout Plain Layout
1975 \begin_layout Plain Layout
1980 \begin_layout Plain Layout
1982 TOFILE=`basename $2`
1985 \begin_layout Plain Layout
1987 cp $FROMFILE /home/you/pdf/$TOFILE
1992 Save it in your local \SpecialChar LyX
1994 \begin_inset Flex Code
1997 \begin_layout Plain Layout
1998 /home/you/.lyx/scripts/pdfcopier.sh
2003 —and make it executable, if you need to do so on your platform.
2005 \begin_inset Flex Noun
2008 \begin_layout Plain Layout
2009 Tools\SpecialChar menuseparator
2015 dialog, select under
2016 \begin_inset Flex Noun
2019 \begin_layout Plain Layout
2020 File Handling\SpecialChar menuseparator
2027 \begin_inset Flex Noun
2030 \begin_layout Plain Layout
2036 format—or one of the other pdf formats—and enter
2037 \begin_inset Flex Code
2040 \begin_layout Plain Layout
2041 pdfcopier.sh $$i $$o
2047 \begin_inset Flex Noun
2050 \begin_layout Plain Layout
2060 \begin_layout Standard
2061 Copiers are used by \SpecialChar LyX
2062 in various of its own conversions.
2063 For example, if appropriate programs are found, \SpecialChar LyX
2064 will automatically install
2066 \begin_inset Flex Noun
2069 \begin_layout Plain Layout
2076 \begin_inset Flex Noun
2079 \begin_layout Plain Layout
2081 \begin_inset space ~
2090 When these formats are exported, the copier sees that not just the main
2091 HTML file but various associated files (style files, images, etc.) are also
2093 All these files are written to a subdirectory of the directory in which
2094 the original \SpecialChar LyX
2099 \begin_layout Plain Layout
2100 This copier can be customized.
2102 \begin_inset Quotes eld
2106 \begin_inset Quotes erd
2109 argument takes a comma-separated list of extensions to be copied; if it
2110 is omitted, all files will be copied.
2112 \begin_inset Quotes eld
2116 \begin_inset Quotes erd
2119 argument determines the extension added to the generated directory.
2121 \begin_inset Quotes eld
2125 \begin_inset Flex Noun
2128 \begin_layout Plain Layout
2135 \begin_inset Quotes erd
2138 , so HTML generated from
2139 \begin_inset Flex Noun
2142 \begin_layout Plain Layout
2143 /path/to/filename.lyx
2149 \begin_inset Flex Noun
2152 \begin_layout Plain Layout
2153 /path/to/filename.html.LyXconv
2167 \begin_layout Section
2169 \begin_inset CommandInset label
2171 name "sec:Converters"
2178 \begin_layout Standard
2179 You can define your own Converters to convert files between different formats.
2181 \begin_inset Flex Noun
2184 \begin_layout Plain Layout
2185 Tools\SpecialChar menuseparator
2186 Preferences\SpecialChar menuseparator
2187 File Handling\SpecialChar menuseparator
2196 \begin_layout Standard
2197 To define a new converter, select the
2198 \begin_inset Flex Noun
2201 \begin_layout Plain Layout
2203 \begin_inset space ~
2212 \begin_inset Flex Noun
2215 \begin_layout Plain Layout
2217 \begin_inset space ~
2225 from the drop-down lists, enter the command needed for the conversion,
2227 \begin_inset Flex Noun
2230 \begin_layout Plain Layout
2237 Several variables can be used in the definition of converters:
2240 \begin_layout Labeling
2241 \labelwidthstring 00.00.0000
2242 \begin_inset Flex Code
2245 \begin_layout Plain Layout
2251 The \SpecialChar LyX
2255 \begin_layout Labeling
2256 \labelwidthstring 00.00.0000
2257 \begin_inset Flex Code
2260 \begin_layout Plain Layout
2269 \begin_layout Labeling
2270 \labelwidthstring 00.00.0000
2271 \begin_inset Flex Code
2274 \begin_layout Plain Layout
2283 \begin_layout Labeling
2284 \labelwidthstring 00.00.0000
2285 \begin_inset Flex Code
2288 \begin_layout Plain Layout
2294 The base filename of the input file (i.
2295 \begin_inset space \thinspace{}
2298 g., without the extension)
2301 \begin_layout Labeling
2302 \labelwidthstring 00.00.0000
2303 \begin_inset Flex Code
2306 \begin_layout Plain Layout
2312 The path to the input file
2315 \begin_layout Labeling
2316 \labelwidthstring 00.00.0000
2317 \begin_inset Flex Code
2320 \begin_layout Plain Layout
2326 The path to the original input file (this is different from $$p when a
2327 chain of converters is called)
2330 \begin_layout Labeling
2331 \labelwidthstring 00.00.0000
2332 \begin_inset Flex Code
2335 \begin_layout Plain Layout
2341 The iconv name for the encoding of the document.
2344 \begin_layout Standard
2346 \begin_inset Flex Noun
2349 \begin_layout Plain Layout
2351 \begin_inset space ~
2359 field you can enter the following flags, separated by commas:
2362 \begin_layout Labeling
2363 \labelwidthstring 00.00.0000
2364 \begin_inset Flex Code
2367 \begin_layout Plain Layout
2373 This converter runs some form of \SpecialChar LaTeX
2375 This will make \SpecialChar LyX
2376 's \SpecialChar LaTeX
2377 error logs available.
2380 \begin_layout Labeling
2381 \labelwidthstring 00.00.0000
2382 \begin_inset Flex Code
2385 \begin_layout Plain Layout
2391 Needs the \SpecialChar LaTeX
2393 \begin_inset Flex Noun
2396 \begin_layout Plain Layout
2402 file for the conversion.
2405 \begin_layout Labeling
2406 \labelwidthstring 00.00.0000
2407 \begin_inset Flex Code
2410 \begin_layout Plain Layout
2417 \begin_inset Quotes eld
2421 \begin_inset Quotes erd
2424 file from the backend, which in practice means a \SpecialChar LaTeX
2425 file like the one we
2426 would export, without
2427 \begin_inset Flex Code
2430 \begin_layout Plain Layout
2439 \begin_layout Labeling
2440 \labelwidthstring 00.00.0000
2441 \begin_inset Flex Code
2444 \begin_layout Plain Layout
2453 \begin_layout Standard
2454 The following three flags are not really flags at all because they take
2456 \begin_inset Flex Noun
2459 \begin_layout Plain Layout
2461 \begin_inset space ~
2465 \begin_inset space ~
2476 \begin_layout Labeling
2477 \labelwidthstring 00.00.0000
2478 \begin_inset Flex Code
2481 \begin_layout Plain Layout
2487 If set, the converter's standard error will be redirected to a file
2488 \begin_inset Flex Code
2491 \begin_layout Plain Layout
2497 , and the script given as argument will be run as:
2498 \begin_inset Flex Code
2501 \begin_layout Plain Layout
2502 script < infile.out > infile.log
2508 The argument may contain
2509 \begin_inset Flex Code
2512 \begin_layout Plain Layout
2521 \begin_layout Labeling
2522 \labelwidthstring 00.00.0000
2523 \begin_inset Flex Code
2526 \begin_layout Plain Layout
2532 The name of the directory in which the converter will dump the generated
2535 will not create this directory, and it does not copy anything into it,
2536 though it will copy this directory to the destination.
2537 The argument may contain
2538 \begin_inset Flex Code
2541 \begin_layout Plain Layout
2547 , which will be replaced by the base name of the input and output files,
2548 respectively, when the directory is copied.
2549 \begin_inset Newline newline
2552 Note that resultdir and usetempdir make no sense together.
2553 The latter will be ignored if the former is given.
2556 \begin_layout Labeling
2557 \labelwidthstring 00.00.0000
2558 \begin_inset Flex Code
2561 \begin_layout Plain Layout
2567 Determines the output file name and may, contain
2568 \begin_inset Flex Code
2571 \begin_layout Plain Layout
2578 Sensible only with resultdir and optional even then; if not given, it defaults
2582 \begin_layout Standard
2583 None of these last three are presently used in any of the converters that
2584 are installed with \SpecialChar LyX
2589 \begin_layout Standard
2590 You do not have to define converters for all formats between which you want
2592 For example, you will note that there is no `\SpecialChar LyX
2593 to PostScript' converter,
2594 but \SpecialChar LyX
2595 will export PostScript.
2596 It does so by first creating a \SpecialChar LaTeX
2597 file (no converter needs to be defined
2598 for this) which is then converted to DVI using the `\SpecialChar LaTeX
2600 and finally converting the resulting DVI file to PostScript.
2602 finds such `chains' of converters automatically, and it will always choose
2603 the shortest possible chain.
2604 You can, though, still define multiple conversion methods between file
2606 For example, the standard \SpecialChar LyX
2607 configuration provides five ways to convert
2612 \begin_layout Enumerate
2614 \begin_inset Flex Noun
2617 \begin_layout Plain Layout
2626 \begin_layout Enumerate
2627 via (DVI and) PostScript, using
2628 \begin_inset Flex Noun
2631 \begin_layout Plain Layout
2640 \begin_layout Enumerate
2642 \begin_inset Flex Noun
2645 \begin_layout Plain Layout
2654 \begin_layout Enumerate
2656 \begin_inset Flex Noun
2659 \begin_layout Plain Layout
2669 \begin_layout Enumerate
2671 \begin_inset Flex Noun
2674 \begin_layout Plain Layout
2684 \begin_layout Standard
2685 To define such alternate chains, you must define multiple target `file formats',
2687 \begin_inset CommandInset ref
2689 reference "sec:Formats"
2694 For example, in the standard configuration, the formats named
2695 \begin_inset Flex Noun
2698 \begin_layout Plain Layout
2705 \begin_inset Flex Noun
2708 \begin_layout Plain Layout
2715 \begin_inset Flex Noun
2718 \begin_layout Plain Layout
2725 \begin_inset Flex Noun
2728 \begin_layout Plain Layout
2735 \begin_inset Flex Noun
2738 \begin_layout Plain Layout
2745 \begin_inset Flex Noun
2748 \begin_layout Plain Layout
2755 \begin_inset Flex Noun
2758 \begin_layout Plain Layout
2765 \begin_inset Flex Noun
2768 \begin_layout Plain Layout
2776 \begin_inset Flex Noun
2779 \begin_layout Plain Layout
2786 \begin_inset Flex Noun
2789 \begin_layout Plain Layout
2796 ) are defined, all of which share the extension
2797 \begin_inset Flex Noun
2800 \begin_layout Plain Layout
2806 , and which correspond to the conversion methods just mentioned.
2809 \begin_layout Chapter
2810 Internationalizing \SpecialChar LyX
2812 \begin_inset CommandInset label
2814 name "cha:Internationalizing-LyX"
2821 \begin_layout Standard
2823 supports using a translated interface.
2824 Last time we checked, \SpecialChar LyX
2825 provided text in thirty languages.
2826 The language of choice is called your
2831 (For further reading on locale settings, see also the documentation for
2832 locale that comes with your operating system.
2833 For Linux, the manual page for
2834 \begin_inset Flex Code
2837 \begin_layout Plain Layout
2843 could be a good place to start).
2846 \begin_layout Standard
2847 Notice that these translations will work, but do contain a few flaws.
2848 In particular, all dialogs have been designed with the English text in
2849 mind, which means that some of the translated text will be too large to
2850 fit within the space allocated.
2851 This is only a display problem and will not cause any harm.
2852 Also, you will find that some of the translations do not define shortcut
2853 keys for everything.
2854 Sometimes, there are simply not enough free letters to do it.
2855 Other times, the translator just hasn't got around to doing it yet.
2856 Our localization team, which you may wish to join,
2860 \begin_layout Plain Layout
2861 If you are a fluent speaker of a language other than English, joining these
2862 teams is a great way to give back to the \SpecialChar LyX
2868 will of course try to fix these shortcomings in future versions of \SpecialChar LyX
2872 \begin_layout Section
2873 Translating \SpecialChar LyX
2877 \begin_layout Subsection
2878 Translating the graphical user interface (text messages).
2881 \begin_layout Standard
2884 \begin_inset Flex Code
2887 \begin_layout Plain Layout
2893 library to handle the internationalization of the interface.
2894 To have \SpecialChar LyX
2895 speak your favorite language in all menus and dialogs, you need
2897 \begin_inset Flex Code
2900 \begin_layout Plain Layout
2906 -file for that language.
2907 When this is available, you'll have to generate a
2908 \begin_inset Flex Code
2911 \begin_layout Plain Layout
2917 -file from it and install the
2918 \begin_inset Flex Code
2921 \begin_layout Plain Layout
2928 The process of doing all of this is explained in the documentation for
2930 \begin_inset Flex Code
2933 \begin_layout Plain Layout
2940 It is possible to do this just for yourself, but if you're going to do
2941 it, you might as well share the results of your labors with the rest of
2942 the \SpecialChar LyX
2944 Send a message to the \SpecialChar LyX
2945 developers' list for more information about how
2949 \begin_layout Standard
2950 In short, this is what you should do (xx denotes the language code):
2953 \begin_layout Itemize
2954 Check out the \SpecialChar LyX
2957 \begin_inset CommandInset href
2959 name "information on the web"
2960 target "http://www.lyx.org/HowToUseGIT"
2967 \begin_layout Itemize
2969 \begin_inset Flex Code
2972 \begin_layout Plain Layout
2978 to the folder of the
2979 \begin_inset Flex Code
2982 \begin_layout Plain Layout
2990 \begin_inset Flex Code
2993 \begin_layout Plain Layout
3001 \begin_inset Flex Code
3004 \begin_layout Plain Layout
3010 doesn't exist anywhere, it can be remade with the console command
3011 \begin_inset Flex Code
3014 \begin_layout Plain Layout
3020 in that directory, or you can use an existing po-file for some other language
3024 \begin_layout Itemize
3026 \begin_inset Flex Code
3029 \begin_layout Plain Layout
3039 \begin_layout Plain Layout
3040 This is just a text file, so it can be edited in any text editor.
3041 But there are also specialized programs that support such editing, such
3046 (for all platforms) or
3055 contains a `mode' for editing
3056 \begin_inset Flex Code
3059 \begin_layout Plain Layout
3066 \begin_inset Flex URL
3069 \begin_layout Plain Layout
3071 https://www.gnu.org/software/gettext/manual/html_node/PO-Mode.html
3083 For some menu- and widget-labels, there are also shortcut keys that should
3085 Those keys are marked after a `|', and should be translated according to
3086 the words and phrases of the language.
3087 You should also fill also out the information at the beginning of the new
3089 \begin_inset Flex Code
3092 \begin_layout Plain Layout
3098 -file with your email-address, etc., so people know where to reach you with
3099 suggestions and entertaining flames.
3102 \begin_layout Standard
3103 If you are just doing this on your own, then:
3106 \begin_layout Itemize
3108 \begin_inset Flex Code
3111 \begin_layout Plain Layout
3118 This can be done with
3119 \begin_inset Flex Code
3122 \begin_layout Plain Layout
3123 msgfmt -o xx.mo < xx.po
3131 \begin_layout Itemize
3133 \begin_inset Flex Code
3136 \begin_layout Plain Layout
3142 -file to your locale-tree, at the correct directory for application messages
3147 xx, and under the name
3148 \begin_inset Flex Code
3151 \begin_layout Plain Layout
3158 \begin_inset space \thinspace{}
3162 \begin_inset space \space{}
3166 \begin_inset Flex Code
3169 \begin_layout Plain Layout
3170 /usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
3180 \begin_layout Standard
3181 As said, however, it would be best if the new
3182 \begin_inset Flex Code
3185 \begin_layout Plain Layout
3191 file could be added to the \SpecialChar LyX
3192 distribution, so others can use it.
3193 Adding it involves making additional changes to \SpecialChar LyX
3195 So send an email to the developers' mailing list if you're interested in
3199 \begin_layout Subsubsection
3203 \begin_layout Standard
3204 Sometimes it turns out that one English message needs to be translated into
3205 different messages in the target language.
3206 One example is the message
3207 \begin_inset Flex Code
3210 \begin_layout Plain Layout
3216 which has the German translation
3224 , depending upon exactly what the English
3225 \begin_inset Quotes eld
3229 \begin_inset Quotes erd
3234 \begin_inset Flex Code
3237 \begin_layout Plain Layout
3243 does not handle such ambiguous translations.
3244 Therefore you have to add some context information to the message: Instead
3246 \begin_inset Flex Code
3249 \begin_layout Plain Layout
3256 \begin_inset Flex Code
3259 \begin_layout Plain Layout
3260 To[[as in 'From format x to format y']]
3266 \begin_inset Flex Code
3269 \begin_layout Plain Layout
3270 To[[as in 'From page x to page y']].
3275 Now the two occurrences of
3276 \begin_inset Flex Code
3279 \begin_layout Plain Layout
3286 \begin_inset Flex Code
3289 \begin_layout Plain Layout
3295 and can be translated correctly to
3306 \begin_layout Standard
3307 Of course the context information needs to be stripped off the original
3308 message when no translation is used.
3309 Therefore you have to put it in double square brackets at the end of the
3310 message (see the example above).
3311 The translation mechanism of \SpecialChar LyX
3312 ensures that everything in double square
3313 brackets at the end of messages is removed before displaying the message.
3316 \begin_layout Subsection
3317 Translating the documentation.
3320 \begin_layout Standard
3321 The online documentation (in the
3322 \begin_inset Flex Noun
3325 \begin_layout Plain Layout
3331 -menu) can (and should!) be translated.
3332 If there are translated versions of the documentation available
3336 \begin_layout Plain Layout
3337 As of March 2008, at least some of the documents have been translated into
3338 fourteen languages, with the Tutorial available in a few more.
3343 and the locale is set accordingly, these will be used automagically by
3347 looks for translated versions as
3348 \begin_inset Flex Code
3351 \begin_layout Plain Layout
3352 LyXDir/doc/xx/DocName.lyx
3358 \begin_inset Flex Code
3361 \begin_layout Plain Layout
3367 is the code for the language currently in use.
3368 If there are no translated documents, the default English versions will
3370 Note that the translated versions must have the same filenames (
3371 \begin_inset Flex Code
3374 \begin_layout Plain Layout
3380 above) as the original.
3381 If you feel up to translating the documentation (an excellent way to proof-read
3382 the original documentation by the way!), there are a few things you should
3386 \begin_layout Itemize
3387 Check out the documentation translation web page at
3388 \begin_inset CommandInset href
3390 name "http://www.lyx.org/Translation"
3391 target "http://www.lyx.org/Translation"
3396 That way, you can find out which (if any) documents have already been translate
3397 d into your language.
3398 You can also find out who (if anyone) is organizing the effort to translate
3399 the documentation into your language.
3400 If no one is organizing the effort, please let us know that you're interested.
3403 \begin_layout Standard
3404 Once you get to actually translating, here's a few hints for you that may
3408 \begin_layout Itemize
3409 Join the documentation team! There is information on how to do that in
3410 \begin_inset Flex Code
3413 \begin_layout Plain Layout
3420 \begin_inset Flex Noun
3423 \begin_layout Plain Layout
3424 Help\SpecialChar menuseparator
3430 ), which by the way is the first document you should translate.
3433 \begin_layout Itemize
3434 Learn the typographic conventions for the language you are translating to.
3435 Typography is an ancient art and over the centuries, a great variety of
3436 conventions have developed throughout different parts of the world.
3437 Also study the professional terminology amongst typographers in your country.
3438 Inventing your own terminology will only confuse the users.
3441 (Warning! Typography is addictive!)
3444 \begin_layout Itemize
3445 Make a copy of the document.
3446 This will be your working copy.
3447 You can use this as your personal translated help-file by placing it in
3449 \begin_inset Flex Code
3452 \begin_layout Plain Layout
3459 \begin_inset Note Greyedout
3462 \begin_layout Plain Layout
3467 For a complex document with external material (images, etc.), if you make
3469 \begin_inset space \thinspace{}
3473 \begin_inset space \space{}
3476 in a temp dir, beware that the links to external material may be broken
3477 when the document is moved to a different place.
3478 The best way is to retrieve the \SpecialChar LyX
3480 \begin_inset Flex URL
3483 \begin_layout Plain Layout
3485 http://www.lyx.org/HowToUseGIT
3490 ) and to edit the doc file in place.
3498 \begin_layout Itemize
3499 Sometimes the original document (from the \SpecialChar LyX
3500 team) will be updated.
3501 Use the source viewer at
3502 \begin_inset CommandInset href
3504 name "http://www.lyx.org/trac/timeline"
3505 target "http://www.lyx.org/trac/timeline"
3509 to see what has been changed.
3510 That way you can easily see which parts of the translated document need
3514 \begin_layout Standard
3515 If you ever find an error in the original document, fix it and notify the
3516 rest of the documentation team of the changes! (You didn't forget to join
3517 the documentation team, did you?)
3520 \begin_layout Standard
3521 \begin_inset Branch OutDated
3524 \begin_layout Section
3525 International Keyboard Support
3528 \begin_layout Standard
3531 [Editor's Note: The following section is by
3539 It needs to be fixed to conform to the new Documentation Style sheet and
3540 to make use of the new v1.0 features.
3541 The whole thing also needs to be merged with the section following it.-jw
3542 It may also be badly out of date.-rh (2008)]
3545 \begin_layout Subsection
3546 Defining Own Keymaps: Keymap File Format
3549 \begin_layout Standard
3550 Let's look at a keyboard definition file a little closer.
3551 It is a plain text file defining
3554 \begin_layout Itemize
3555 key-to-key or key-to-string translations
3558 \begin_layout Itemize
3562 \begin_layout Itemize
3563 dead keys exceptions
3566 \begin_layout Standard
3567 To define key-to-key or key-to-string translation, use this command:
3570 \begin_layout Quotation
3571 \begin_inset Flex Code
3574 \begin_layout Plain Layout
3583 \begin_inset Flex Code
3586 \begin_layout Plain Layout
3595 \begin_layout Standard
3597 \begin_inset Flex Code
3600 \begin_layout Plain Layout
3606 is the key to be translated and
3607 \begin_inset Flex Code
3610 \begin_layout Plain Layout
3616 is the string to be inserted into the document.
3617 To define dead keys, use:
3620 \begin_layout Quotation
3621 \begin_inset Flex Code
3624 \begin_layout Plain Layout
3633 \begin_inset Flex Code
3636 \begin_layout Plain Layout
3645 \begin_layout Standard
3647 \begin_inset Flex Code
3650 \begin_layout Plain Layout
3656 is a keyboard key and
3657 \begin_inset Flex Code
3660 \begin_layout Plain Layout
3667 The following dead keys are supported (shortcut name is in parentheses):
3670 \begin_layout Quotation
3674 \begin_inset space \hfill{}
3680 \begin_layout Quotation
3682 \begin_inset space \hfill{}
3688 \begin_layout Quotation
3690 \begin_inset space \hfill{}
3696 \begin_layout Quotation
3698 \begin_inset space \hfill{}
3704 \begin_layout Quotation
3706 \begin_inset space \hfill{}
3712 \begin_layout Quotation
3714 \begin_inset space \hfill{}
3721 \begin_layout Plain Layout
3733 \begin_layout Quotation
3735 \begin_inset space \hfill{}
3741 \begin_layout Quotation
3743 \begin_inset space \hfill{}
3750 \begin_layout Plain Layout
3762 \begin_layout Quotation
3764 \begin_inset space \hfill{}
3770 \begin_layout Quotation
3772 \begin_inset space \hfill{}
3778 \begin_layout Quotation
3780 \begin_inset space \hfill{}
3787 \begin_layout Plain Layout
3799 \begin_layout Quotation
3801 \begin_inset space \hfill{}
3808 \begin_layout Plain Layout
3820 \begin_layout Quotation
3822 \begin_inset space \hfill{}
3828 \begin_layout Quotation
3829 hungarian umlaut (hug)
3830 \begin_inset space \hfill{}
3836 \begin_layout Quotation
3838 \begin_inset space \hfill{}
3844 \begin_layout Quotation
3846 \begin_inset space \hfill{}
3853 \begin_layout Plain Layout
3865 \begin_layout Standard
3866 Since in many international keyboards there are exceptions to what some
3867 dead keys should do, you can define them using
3870 \begin_layout Quotation
3871 \begin_inset Flex Code
3874 \begin_layout Plain Layout
3882 deadkey key outstring
3885 \begin_layout Standard
3886 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
3890 \begin_layout Quotation
3891 \begin_inset Flex Code
3894 \begin_layout Plain Layout
3907 \begin_layout Standard
3908 to make it work correctly.
3909 Also, you have to define as exceptions dead keys over i and j, to remove
3910 the dot from them before inserting an accent mark.
3911 I will change this when the time comes, but so far I haven't had time.
3914 \begin_layout Standard
3915 Oh, and about characters: backslash is escaped, so to enter it, you'll need
3918 \begin_inset Flex Code
3921 \begin_layout Plain Layout
3927 have different meaning.
3929 \begin_inset Flex Code
3932 \begin_layout Plain Layout
3938 marks comments, quotes start and end \SpecialChar LaTeX
3940 To enter quote, you'll need to use
3941 \begin_inset Flex Code
3944 \begin_layout Plain Layout
3953 \begin_inset Flex Code
3956 \begin_layout Plain Layout
3963 \begin_inset Flex Code
3966 \begin_layout Plain Layout
3977 \begin_layout Standard
3978 If you make a keyboard description file that works for your language, please
3979 mail it to me, so I can include it in the next keymap distribution.
3982 \begin_layout Standard
3983 More keywords will be supported in keymap configuration file in future,
3987 \begin_layout Itemize
3988 \begin_inset Flex Code
3991 \begin_layout Plain Layout
4002 \begin_inset space \hfill{}
4006 \begin_inset Flex Code
4009 \begin_layout Plain Layout
4018 \begin_layout Itemize
4019 \begin_inset Flex Code
4022 \begin_layout Plain Layout
4033 \begin_inset space \hfill{}
4037 \begin_inset Flex Code
4040 \begin_layout Plain Layout
4046 an external keymap translation program
4049 \begin_layout Standard
4050 Also, it should look into
4051 \begin_inset Flex Code
4054 \begin_layout Plain Layout
4060 file for defaults, too (for example, a
4061 \begin_inset Flex Code
4064 \begin_layout Plain Layout
4072 option to include default keyboard).
4080 \begin_layout Section
4081 International Keymap Stuff
4082 \begin_inset CommandInset label
4084 name "sec:International-Keymap-Stuff"
4091 \begin_layout Standard
4092 \begin_inset Note Note
4095 \begin_layout Plain Layout
4096 In doing the revisions on this document in March 2008, I did not look over
4097 this stuff, as I do not understand it.
4098 It would be good if someone else could do so.
4107 \begin_layout Standard
4108 The next two sections describe the
4109 \begin_inset Flex Code
4112 \begin_layout Plain Layout
4121 \begin_inset Flex Code
4124 \begin_layout Plain Layout
4132 file syntax in detail.
4133 These sections should help you design your own key map if the ones provided
4134 do not meet your needs.
4137 \begin_layout Subsection
4141 \begin_layout Standard
4145 \begin_inset Flex Code
4148 \begin_layout Plain Layout
4154 file maps keystrokes to characters or strings.
4155 As the name suggests, it sets a keyboard mapping.
4157 \begin_inset Flex Code
4160 \begin_layout Plain Layout
4171 \begin_inset Flex Code
4174 \begin_layout Plain Layout
4189 \begin_inset Flex Code
4192 \begin_layout Plain Layout
4205 \begin_inset Flex Code
4208 \begin_layout Plain Layout
4217 \begin_inset Flex Code
4220 \begin_layout Plain Layout
4228 are described in this section.
4231 \begin_layout Labeling
4232 \labelwidthstring 00.00.0000
4233 \begin_inset Flex Code
4236 \begin_layout Plain Layout
4244 Map a character to a string
4247 \begin_layout LyX-Code
4262 \begin_layout Standard
4295 the double-quote (")
4312 must be escaped with a preceding backslash (
4323 \begin_layout Standard
4325 \begin_inset Flex Noun
4328 \begin_layout Plain Layout
4336 statement to cause the symbol
4337 \begin_inset Flex Noun
4340 \begin_layout Plain Layout
4348 to be output for the keystroke
4349 \begin_inset Flex Noun
4352 \begin_layout Plain Layout
4363 \begin_layout LyX-Code
4369 \begin_layout Labeling
4370 \labelwidthstring 00.00.0000
4371 \begin_inset Flex Code
4374 \begin_layout Plain Layout
4382 Specify an accent character
4385 \begin_layout LyX-Code
4394 \begin_layout Standard
4395 This will make the cha
4433 This is the dead key
4437 \begin_layout Plain Layout
4444 refers to a key that does not produce a character by itself, but when followed
4445 with another key, produces the desired accent character.
4446 For example, a German characte
4448 r with an umlaut like
4458 can be produced in this manner.
4467 \begin_layout Standard
4480 and then another key not in
4497 followed by the other, not allowed key, as output.
4501 \begin_inset Flex Noun
4504 \begin_layout Plain Layout
4512 cancels a dead key, so if
4523 \begin_inset Flex Noun
4526 \begin_layout Plain Layout
4535 , the cursor will not go one position backwards but will instead cancel
4551 might have had on the next keystroke.
4555 \begin_layout Standard
4556 The following example specifies that the character ' is to be an acute accent,
4557 allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4560 \begin_layout LyX-Code
4563 kmod ' acute aeiouAEIOU
4566 \begin_layout Labeling
4567 \labelwidthstring 00.00.0000
4568 \begin_inset Flex Code
4571 \begin_layout Plain Layout
4577 Specify an exception to the accent character
4580 \begin_layout LyX-Code
4589 \begin_layout Standard
4590 This defines an exce
4631 have been assigned a keystroke with a previous
4634 \begin_inset Flex Code
4637 \begin_layout Plain Layout
4661 must not belong in the
4708 If such a declaration does not exist in
4716 \begin_inset Flex Code
4719 \begin_layout Plain Layout
4753 \begin_inset Flex Code
4756 \begin_layout Plain Layout
4770 \begin_layout Standard
4771 The following command produces causes äi to be produced when you enter acute-i
4775 \begin_layout LyX-Code
4789 \begin_layout Labeling
4790 \labelwidthstring 00.00.0000
4791 \begin_inset Flex Code
4794 \begin_layout Plain Layout
4800 Combine two accent characters
4803 \begin_layout LyX-Code
4809 accent1 accent2 allowed
4812 \begin_layout Standard
4813 This one is getting pretty esoteric.
4814 It allows you to combine the effect
4870 \begin_inset Flex Code
4873 \begin_layout Plain Layout
4901 \begin_layout Standard
4902 Consider this example from the
4903 \begin_inset Flex Code
4906 \begin_layout Plain Layout
4917 \begin_layout LyX-Code
4920 kmod ; acute aeioyvhAEIOYVH
4924 kcomb acute umlaut iyIY
4927 \begin_layout Standard
4928 This allows you to press
4929 \begin_inset Flex Noun
4932 \begin_layout Plain Layout
4940 and get the effect of
4941 \begin_inset Flex Code
4944 \begin_layout Plain Layout
4963 in this case cancels the last dead key, so if you press
4964 \begin_inset Flex Noun
4967 \begin_layout Plain Layout
4976 \begin_inset Flex Code
4979 \begin_layout Plain Layout
4992 \begin_layout Subsection
4996 \begin_layout Standard
4998 \begin_inset Flex Code
5001 \begin_layout Plain Layout
5009 mapping is performed, a
5010 \begin_inset Flex Code
5013 \begin_layout Plain Layout
5023 file maps the strings that the symbols generate to characters in the current
5025 The \SpecialChar LyX
5026 distribution currently includes at least the
5027 \begin_inset Flex Code
5030 \begin_layout Plain Layout
5039 \begin_inset Flex Code
5042 \begin_layout Plain Layout
5053 \begin_layout Standard
5055 \begin_inset Flex Code
5058 \begin_layout Plain Layout
5066 file is a sequence of declarations of the form
5069 \begin_layout LyX-Code
5082 \begin_layout Standard
5083 For example, in order to map
5084 \begin_inset Flex Noun
5087 \begin_layout Plain Layout
5097 to the corresponding character in the iso-8859-1 set (233), the following
5101 \begin_layout LyX-Code
5109 \begin_layout Standard
5111 \begin_inset Flex Code
5114 \begin_layout Plain Layout
5123 \begin_inset Flex Code
5126 \begin_layout Plain Layout
5144 the same character can apply to more than one string.
5146 \begin_inset Flex Code
5149 \begin_layout Plain Layout
5160 \begin_layout LyX-Code
5172 \begin_inset Newline newline
5188 \begin_layout Standard
5190 cannot find a mapping for the string produced by the keystroke or a
5191 deadkey sequence, it will check if it looks like an accented char and try
5192 to draw an accent over the character on screen.
5195 \begin_layout Subsection
5199 \begin_layout Standard
5200 There is a second way to add support for international characters through
5201 so-called dead-keys.
5202 A dead-key works in combination with a letter to produce an accented character.
5203 Here, we'll explain how to create a really simple dead-key to illustrate
5207 \begin_layout Standard
5208 Suppose you happen to need the circumflex character,
5209 \begin_inset Quotes eld
5213 \begin_inset Quotes erd
5218 \begin_inset Flex Noun
5221 \begin_layout Plain Layout
5228 \begin_inset space ~
5232 \begin_inset Flex Noun
5235 \begin_layout Plain Layout
5241 ] to the \SpecialChar LyX
5243 \begin_inset Flex Code
5246 \begin_layout Plain Layout
5253 \begin_inset Flex Code
5256 \begin_layout Plain Layout
5263 Now, whenever you type the
5264 \begin_inset Flex Noun
5267 \begin_layout Plain Layout
5273 -key followed by a letter, that letter will have a circumflex accent on
5275 For example, the sequence
5276 \begin_inset Quotes eld
5280 \begin_inset Flex Noun
5283 \begin_layout Plain Layout
5290 \begin_inset Quotes erd
5293 produces the letter:
5294 \begin_inset Quotes eld
5298 \begin_inset Quotes erd
5302 If you tried to type
5303 \begin_inset Quotes eld
5307 \begin_inset Flex Noun
5310 \begin_layout Plain Layout
5317 \begin_inset Quotes erd
5320 , however, \SpecialChar LyX
5321 will complain with a beep, since a
5322 \begin_inset Quotes eld
5326 \begin_inset Flex Noun
5329 \begin_layout Plain Layout
5336 \begin_inset Quotes erd
5339 never takes a circumflex accent.
5341 \begin_inset Flex Noun
5344 \begin_layout Plain Layout
5350 after a dead-key produces the bare-accent.
5351 Please note this last point! If you bind a key to a dead-key, you'll need
5352 to rebind the character on that key to yet another key.
5354 \begin_inset Flex Noun
5357 \begin_layout Plain Layout
5363 to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
5366 \begin_layout Standard
5367 One common way to bind dead-keys is to use
5368 \begin_inset Flex Noun
5371 \begin_layout Plain Layout
5378 \begin_inset Flex Noun
5381 \begin_layout Plain Layout
5388 \begin_inset Flex Noun
5391 \begin_layout Plain Layout
5397 in combination with an accent, like
5398 \begin_inset Quotes eld
5402 \begin_inset Flex Noun
5405 \begin_layout Plain Layout
5412 \begin_inset Quotes erd
5416 \begin_inset Quotes eld
5420 \begin_inset Flex Noun
5423 \begin_layout Plain Layout
5430 \begin_inset Quotes erd
5434 \begin_inset Quotes eld
5438 \begin_inset Flex Noun
5441 \begin_layout Plain Layout
5448 \begin_inset Quotes erd
5452 Another way involves using
5453 \begin_inset Flex Code
5456 \begin_layout Plain Layout
5463 \begin_inset Flex Code
5466 \begin_layout Plain Layout
5472 to set up the special
5473 \begin_inset Flex Code
5476 \begin_layout Plain Layout
5484 \begin_inset Flex Code
5487 \begin_layout Plain Layout
5493 acts in some ways just like
5494 \begin_inset Flex Noun
5497 \begin_layout Plain Layout
5503 and permits you to bind keys to accented characters.
5504 You can also turn keys into dead-keys by binding them to something like
5506 \begin_inset Flex Code
5509 \begin_layout Plain Layout
5515 and then binding this symbolic key to the corresponding \SpecialChar LyX
5520 \begin_layout Plain Layout
5525 : This is exactly what I do in my
5526 \begin_inset Flex Code
5529 \begin_layout Plain Layout
5536 \begin_inset Flex Code
5539 \begin_layout Plain Layout
5547 \begin_inset Flex Noun
5550 \begin_layout Plain Layout
5552 \begin_inset space ~
5561 \begin_inset Flex Code
5564 \begin_layout Plain Layout
5570 and a bunch of these
5571 \begin_inset Quotes eld
5575 \begin_inset Flex Code
5578 \begin_layout Plain Layout
5585 \begin_inset Quotes erd
5588 symbolic keys bound such things as
5589 \begin_inset Flex Noun
5592 \begin_layout Plain Layout
5594 \begin_inset space ~
5603 \begin_inset Flex Noun
5606 \begin_layout Plain Layout
5608 \begin_inset space ~
5617 This is how I produce my accented characters.
5622 You can make just about anything into the
5623 \begin_inset Flex Code
5626 \begin_layout Plain Layout
5633 \begin_inset Flex Noun
5636 \begin_layout Plain Layout
5642 keys, a spare function key, etc.
5643 As for the \SpecialChar LyX
5644 commands that produce accents, check the entry for
5645 \begin_inset Flex Code
5648 \begin_layout Plain Layout
5659 You'll find the complete list there.
5662 \begin_layout Subsection
5663 Saving your Language Configuration
5666 \begin_layout Standard
5667 You can edit your preferences so that your desired language environment
5668 is automatically configured when \SpecialChar LyX
5670 \begin_inset Flex Noun
5673 \begin_layout Plain Layout
5674 Edit\SpecialChar menuseparator
5683 \begin_layout Chapter
5684 Installing New Document Classes, Layouts, and Templates
5685 \begin_inset CommandInset label
5687 name "cha:Installing-New-Document"
5692 \begin_inset Argument 1
5695 \begin_layout Plain Layout
5696 Installing New Document Classes
5704 \begin_layout Standard
5705 In this chapter, we describe the procedures for creating and installing
5706 new \SpecialChar LyX
5707 layout and template files, as well as offer a refresher on correctly
5708 installing new \SpecialChar LaTeX
5713 \begin_layout Standard
5714 First, let us a say a few words about how one ought to think about the relation
5715 between \SpecialChar LyX
5716 and \SpecialChar LaTeX
5718 The thing to understand is that, in a certain sense, \SpecialChar LyX
5719 doesn't know anything
5720 about \SpecialChar LaTeX
5722 Indeed, from \SpecialChar LyX
5723 's point of view, \SpecialChar LaTeX
5724 is just one of several
5725 \begin_inset Quotes eld
5729 \begin_inset Quotes erd
5732 in which it is capable of producing output.
5733 Other such formats are DocBook, plaintext, and XHTML.
5735 is, of course, a particularly important format, but very little of the
5736 information \SpecialChar LyX
5737 has about \SpecialChar LaTeX
5738 is actually contained in the program itself.
5742 \begin_layout Plain Layout
5743 Some commands are sufficiently complex that they are
5744 \begin_inset Quotes eld
5748 \begin_inset Quotes erd
5751 into \SpecialChar LyX
5753 But the developers generally regard this as a Bad Thing.
5758 Rather, that information, even for the standard classes like
5759 \begin_inset Flex Code
5762 \begin_layout Plain Layout
5768 , is contained in `layout files'.
5769 Similarly, \SpecialChar LyX
5770 itself does not know much about DocBook or XHTML.
5771 What it knows is contained in layout files.
5774 \begin_layout Standard
5775 You can think of the layout file for a given document class as a translation
5776 manual between \SpecialChar LyX
5777 constructs—paragraphs with their corresponding styles,
5778 certain sorts of insets, etc—and the corresponding \SpecialChar LaTeX
5781 Almost everything \SpecialChar LyX
5783 \begin_inset Flex Code
5786 \begin_layout Plain Layout
5792 , for example, is contained in the file
5793 \begin_inset Flex Code
5796 \begin_layout Plain Layout
5802 and in various other files it includes.
5803 For this reason, anyone intending to write layout files should plan to
5804 study the existing files.
5805 A good place to start is with
5806 \begin_inset Flex Code
5809 \begin_layout Plain Layout
5815 , which is included in
5816 \begin_inset Flex Code
5819 \begin_layout Plain Layout
5826 \begin_inset Flex Code
5829 \begin_layout Plain Layout
5835 , and many of the other layout files for document classes.
5836 This file is where sections and the like are defined:
5837 \begin_inset Flex Code
5840 \begin_layout Plain Layout
5846 tells \SpecialChar LyX
5847 how paragraphs that are marked with the Section, Subsection, etc,
5848 styles can be translated into corresponding \SpecialChar LaTeX
5849 , DocBook, and XHTML commands
5852 \begin_inset Flex Code
5855 \begin_layout Plain Layout
5861 file basically just includes several of these
5862 \begin_inset Flex Code
5865 \begin_layout Plain Layout
5874 \begin_layout Standard
5875 Defining the \SpecialChar LyX
5877 correspondence is not the only thing layout files do, though.
5878 Their other job is to define how the \SpecialChar LyX
5879 constructs themselves will appear
5881 The fact that layout files have these two jobs is often a source of confusion,
5882 because they are completely separate.
5883 Telling \SpecialChar LyX
5884 how to translate a certain paragraph style into \SpecialChar LaTeX
5887 how to display it; conversely, telling \SpecialChar LyX
5888 how to display a certain paragraph
5889 style does not tell \SpecialChar LyX
5890 how to translate it into \SpecialChar LaTeX
5891 (let alone tell \SpecialChar LaTeX
5894 So, in general, when you define a new \SpecialChar LyX
5895 construct, you must always do two
5896 quite separate things: (i)
5897 \begin_inset space ~
5900 tell \SpecialChar LyX
5901 how to translate it into \SpecialChar LaTeX
5903 \begin_inset space ~
5906 tell \SpecialChar LyX
5910 \begin_layout Standard
5911 Much the same is true, of course, as regards \SpecialChar LyX
5912 's other backend formats, though
5913 XHTML is in some ways different, because in that case \SpecialChar LyX
5918 able, to some extent, to use information about how it should display a
5919 paragraph on the screen to output information (in the form of CSS) about
5920 how the paragraph should be displayed in a browser.
5921 Even in this case, however, the distinction between what \SpecialChar LyX
5923 and how things are rendered externally remains in force, and the two can
5924 be controlled separately.
5926 \begin_inset CommandInset ref
5928 reference "sec:Tags-for-XHTML"
5935 \begin_layout Section
5936 Installing new \SpecialChar LaTeX
5940 \begin_layout Standard
5941 Some installations may not include a \SpecialChar LaTeX
5942 package or class file that you would
5943 like to use within \SpecialChar LyX
5945 For example, you might need Foil\SpecialChar TeX
5946 , a package for preparing slides for overhead
5948 Modern \SpecialChar LaTeX
5949 distributions like \SpecialChar TeX
5950 Live (2008 or newer) or MiK\SpecialChar TeX
5951 provide a user interface
5952 for installing such packages.
5953 For example, with MiK\SpecialChar TeX
5954 , you start the program
5955 \begin_inset Quotes eld
5959 \begin_inset space ~
5963 \begin_inset Quotes erd
5966 to get a list of available packages.
5967 To install one of them, right click on it or use the corresponding toolbar
5971 \begin_layout Standard
5972 If your \SpecialChar LaTeX
5973 distribution does not provide such a `package manager', or if the
5974 package is not available from your distribution, then follow these steps
5975 to install it manually:
5978 \begin_layout Enumerate
5979 Get the package from
5980 \begin_inset CommandInset href
5983 target "http://www.ctan.org/"
5990 \begin_layout Enumerate
5991 If the package contains a file with the ending
5992 \begin_inset Quotes eld
5996 \begin_inset Flex Code
5999 \begin_layout Plain Layout
6006 \begin_inset Quotes erd
6009 (is the case for Foil\SpecialChar TeX
6010 ) then open a console, change to the folder of this
6011 file and execute the command
6012 \begin_inset Flex Code
6015 \begin_layout Plain Layout
6022 You have now unpacked the package and have all files to install it.
6023 Most \SpecialChar LaTeX
6024 -packages are not packed and you can skip this step.
6027 \begin_layout Enumerate
6028 Now you need to decide if the package should be available for all users
6030 \begin_inset Separator latexpar
6037 \begin_layout Enumerate
6038 On *nix systems (Linux, OSX, etc.), if you want the new package to be available
6039 for all users on your system, then install it in your `local' \SpecialChar TeX
6041 install it in your own `user' \SpecialChar TeX
6043 Where these trees should be created, if they do not already exist, depends
6045 To find this out, look in the file
6046 \begin_inset Flex Code
6049 \begin_layout Plain Layout
6059 \begin_layout Plain Layout
6060 This is usually in the directory
6061 \begin_inset Flex Code
6064 \begin_layout Plain Layout
6070 , though you can execute the command
6071 \begin_inset Flex Code
6074 \begin_layout Plain Layout
6085 The location of the `local' \SpecialChar TeX
6086 tree is defined by the
6087 \begin_inset Flex Code
6090 \begin_layout Plain Layout
6096 variable; this is usually somewhere like
6097 \begin_inset Flex Code
6100 \begin_layout Plain Layout
6101 /usr/local/share/texmf
6106 or /usr/local/texlive/XXXX where XXXX is the year of the installed \SpecialChar TeX
6109 The location of the `user' \SpecialChar TeX
6111 \begin_inset Flex Code
6114 \begin_layout Plain Layout
6121 \begin_inset Flex Code
6124 \begin_layout Plain Layout
6131 \begin_inset Flex Code
6134 \begin_layout Plain Layout
6144 (If these variables are not predefined, you have to define them.) You'll
6145 probably need root permissions to create or modify the `local' tree, but
6146 not for your `user' tree.
6147 \begin_inset Newline newline
6150 In general, it is recommended to install in the user tree because your user
6151 will not be modified or even overwritten when you upgrade your system.
6152 It will typically also be backed up together with everything else when
6153 you backup your home directory (which, of course, you do on a regular basis).
6156 \begin_layout Enumerate
6157 On Windows, if you want the new package to be available for all users on
6158 your system, change to the folder where \SpecialChar LaTeX
6159 is installed and then change to
6161 \begin_inset Flex Code
6164 \begin_layout Plain Layout
6175 (For MiK\SpecialChar TeX
6176 , this would be by default the folder
6177 \begin_inset Flex Code
6180 \begin_layout Plain Layout
6198 \begin_layout Plain Layout
6199 Note that this will be the correct path only on English installations.
6200 On a German one, it would be
6201 \begin_inset Flex Code
6204 \begin_layout Plain Layout
6218 , and similarly for other languages.
6223 Create there a new folder
6224 \begin_inset Flex Code
6227 \begin_layout Plain Layout
6233 and copy all files of the package into it.
6235 \begin_inset Newline newline
6238 If the package should only available for you or you don't have admin permissions
6239 , do the same, but in the local \SpecialChar LaTeX
6242 \begin_inset space \thinspace{}
6245 g., for MiK\SpecialChar TeX
6247 \begin_inset space ~
6250 2.8 under Windows XP, this would be the folder:
6251 \begin_inset Newline newline
6257 \begin_inset Flex Code
6260 \begin_layout Plain Layout
6263 Documents and Settings
6275 \begin_inset Newline newline
6281 \begin_inset Phantom HPhantom
6284 \begin_layout Plain Layout
6295 \begin_inset Flex Code
6298 \begin_layout Plain Layout
6311 \begin_inset Newline newline
6314 On Vista, it would be:
6315 \begin_inset Newline newline
6319 \begin_inset Flex Code
6322 \begin_layout Plain Layout
6348 \begin_layout Enumerate
6349 Now one only need to tell \SpecialChar LaTeX
6350 that there are new files.
6351 This depends on the used \SpecialChar LaTeX
6353 \begin_inset Separator latexpar
6360 \begin_layout Enumerate
6361 For \SpecialChar TeX
6362 Live execute the command
6363 \begin_inset Flex Code
6366 \begin_layout Plain Layout
6373 If you installed the package for all users, then you will probably need
6374 to have root permissions for that.
6377 \begin_layout Enumerate
6378 For MiK\SpecialChar TeX
6379 , if you have installed the package for all users, start the program
6381 \begin_inset Quotes eld
6385 \begin_inset space ~
6389 \begin_inset Quotes erd
6392 and press the button marked
6393 \begin_inset Quotes eld
6397 \begin_inset Quotes erd
6401 Otherwise start the program
6402 \begin_inset Quotes eld
6406 \begin_inset Quotes erd
6413 \begin_layout Enumerate
6414 Finally, you need to tell \SpecialChar LyX
6415 that there are new packages available.
6416 So, in \SpecialChar LyX
6418 \begin_inset Flex Noun
6421 \begin_layout Plain Layout
6424 \SpecialChar menuseparator
6430 and then restart \SpecialChar LyX
6434 \begin_layout Standard
6435 Now the package is installed.
6436 In our example, the document class
6437 \begin_inset Flex Code
6440 \begin_layout Plain Layout
6442 \begin_inset space ~
6450 will now be available under
6451 \begin_inset Flex Noun
6454 \begin_layout Plain Layout
6455 Document\SpecialChar menuseparator
6456 Settings\SpecialChar menuseparator
6466 \begin_layout Standard
6467 If you would like to use a \SpecialChar LaTeX
6468 document class that is not even listed in the
6470 \begin_inset Flex Noun
6473 \begin_layout Plain Layout
6474 Document\SpecialChar menuseparator
6475 Settings\SpecialChar menuseparator
6481 , then you need to create a `layout' file for it.
6482 That is the topic of the next section.
6485 \begin_layout Section
6486 Types of layout files
6489 \begin_layout Standard
6490 This section describes the various sorts of \SpecialChar LyX
6491 files that contain layout informati
6493 These files describe various paragraph and character styles, determining
6494 how \SpecialChar LyX
6495 should display them and how they should be translated into \SpecialChar LaTeX
6497 XHTML, or whatever output format is being used.
6501 \begin_layout Standard
6502 We shall try to provide a thorough description of the process of writing
6504 However, there are so many different types of documents supported even
6505 by just \SpecialChar LaTeX
6506 that we can't hope to cover every different possibility or problem
6507 you might encounter.
6508 The \SpecialChar LyX
6509 users' list is frequented by people with lots of experience with layout
6510 design who are willing to share what they've learned, so please feel free
6511 to ask questions there.
6514 \begin_layout Standard
6515 As you prepare to write a new layout, it is extremely helpful to look at
6516 the layouts distributed with \SpecialChar LyX
6518 If you write a \SpecialChar LyX
6519 layout for a \SpecialChar LaTeX
6520 document class that might also be used by
6521 others, or write a module that might be useful to others, then you should
6522 consider posting your layout to the
6523 \begin_inset CommandInset href
6525 name "layout section on the LyX wiki"
6526 target "http://wiki.lyx.org/Layouts/Layouts"
6530 or even to the \SpecialChar LyX
6531 developers' list, so that it might be included in \SpecialChar LyX
6536 \begin_layout Plain Layout
6537 Note that \SpecialChar LyX
6538 is licensed under the General Public License, so any material
6539 that is contributed to \SpecialChar LyX
6540 must be similarly licensed.
6548 \begin_layout Subsection
6550 \begin_inset CommandInset label
6552 name "subsec:Layout-modules"
6559 \begin_layout Standard
6560 We have spoken to this point about `layout files'.
6561 But there are different sorts of files that contain layout information.
6562 Layout files, strictly so called, have the
6563 \begin_inset Flex Code
6566 \begin_layout Plain Layout
6572 extension and provide \SpecialChar LyX
6573 with information about document classes.
6574 Since \SpecialChar LyX
6575 1.6 layout information can also be contained in layout
6580 \begin_inset Flex Code
6583 \begin_layout Plain Layout
6590 Modules are to \SpecialChar LaTeX
6591 packages much as layouts are to \SpecialChar LaTeX
6592 classes, and some modules—such
6594 \begin_inset Flex Code
6597 \begin_layout Plain Layout
6603 module—specifically provide support for one package.
6604 In a sense, layout modules are similar to included
6608 \begin_layout Plain Layout
6609 These can have any extension, but by convention have the
6610 \begin_inset Flex Code
6613 \begin_layout Plain Layout
6625 \begin_inset Flex Code
6628 \begin_layout Plain Layout
6634 —in that modules are not specific to a given document class but may be used
6635 with many different classes.
6636 The difference is that using an included file with
6637 \begin_inset Flex Code
6640 \begin_layout Plain Layout
6646 requires editing that file.
6647 Modules, by contrast, are selected in the
6648 \begin_inset Flex Noun
6651 \begin_layout Plain Layout
6652 Document\SpecialChar menuseparator
6661 \begin_layout Standard
6662 Building modules is the easiest way to get started with layout editing,
6663 since it can be as simple as adding a single new paragraph style or flex
6665 But modules may, in principle, contain anything a layout file can contain.
6668 \begin_layout Standard
6669 After creating a new module and copying it to the
6670 \begin_inset Flex Code
6673 \begin_layout Plain Layout
6679 folder, you will need to reconfigure and then restart \SpecialChar LyX
6682 However, changes you make to the module will be seen immediately, if you
6684 \begin_inset Flex Noun
6687 \begin_layout Plain Layout
6688 Document\SpecialChar menuseparator
6694 , highlight something, and then hit
6695 \begin_inset Quotes eld
6699 \begin_inset Quotes erd
6705 It is strongly recommended that you save your work before doing this
6710 it is strongly recommended that you not attempt to edit modules while simultaneo
6711 usly working on actual documents
6714 Though of course the developers strive to keep \SpecialChar LyX
6715 stable in such situations,
6716 syntax errors and the like in your module file could cause strange behavior.
6719 \begin_layout Subsubsection
6723 \begin_layout Standard
6724 Modules are to \SpecialChar LyX
6725 as packages are to \SpecialChar LaTeX
6727 Sometimes, however, you find yourself wanting a specific inset or character
6728 style just for one document and writing a module that will also be available
6729 to other documents makes little sense.
6730 What you need is \SpecialChar LyX
6732 \begin_inset Quotes eld
6736 \begin_inset Quotes erd
6742 \begin_layout Standard
6743 You will find it under
6745 Document\SpecialChar menuseparator
6746 Settings\SpecialChar menuseparator
6750 The large text box allows you to enter anything that you might enter in
6751 a layout file or module.
6752 You can think of a document's local layout, in fact, as a module that belongs
6754 So, in particular, you must enter a
6755 \begin_inset Flex Code
6758 \begin_layout Plain Layout
6765 Any format is acceptable, but one would normally use the format current
6767 (In \SpecialChar LyX
6768 2.1, the current layout format is 48.) You should be aware that local
6769 layout is not supported by versions of \SpecialChar LyX
6770 prior to 1.6, so you should not
6771 use it if you want to be able to export your document to \SpecialChar LyX
6773 (without, that is, losing the local layout information).
6774 If you wish to be able to export to 1.6—local layout is supported in 1.6,
6775 though there is no UI for it—then you should use format 11 and, of course,
6776 use only layout constructs that were available in \SpecialChar LyX
6780 \begin_layout Standard
6781 When you have entered something in the
6782 \begin_inset Flex Code
6785 \begin_layout Plain Layout
6791 pane, \SpecialChar LyX
6793 \begin_inset Quotes eld
6797 \begin_inset Quotes erd
6800 button at the bottom.
6801 Clicking this button will cause \SpecialChar LyX
6802 to determine whether what you have entered
6803 is valid layout information for the chosen format.
6805 will report the result but, unfortunately, will not tell you what errors
6806 there might have been.
6807 These will be written to the terminal, however, if \SpecialChar LyX
6808 is started from a terminal.
6809 You will not be permitted to save your local layout until you have entered
6813 \begin_layout Standard
6814 The warnings at the end of the previous section apply here, too.
6815 Do not play with local layout while you are actually working, especially
6816 if you have not saved your document.
6817 That said, using local layout with a test document can be a very convenient
6818 way to try out layout ideas, or even to start developing a module.
6821 \begin_layout Subsection
6823 \begin_inset Flex Noun
6826 \begin_layout Plain Layout
6835 \begin_layout Standard
6836 There are two situations you are likely to encounter when wanting to support
6837 a new \SpecialChar LaTeX
6838 document class, involving style (
6839 \begin_inset Flex Code
6842 \begin_layout Plain Layout
6848 ) files and \SpecialChar LaTeX2e
6850 \begin_inset Flex Code
6853 \begin_layout Plain Layout
6860 Supporting a style file is usually fairly easy.
6861 Supporting a new class file is a bit harder.
6862 We'll discuss the former in this section and the latter in the next.
6863 Similar remarks apply, of course, if you want to support a new DocBook
6867 \begin_layout Standard
6868 The easier case is the one in which your new document class is provided
6869 as a style file that is to be used in conjunction with an already supported
6871 For the sake of the example, we'll assume that the style file is called
6873 \begin_inset Flex Noun
6876 \begin_layout Plain Layout
6882 and that it is meant to be used with
6883 \begin_inset Flex Noun
6886 \begin_layout Plain Layout
6892 , which is a standard class.
6896 \begin_layout Standard
6897 Start by copying the existing class's layout file into your local directory:
6901 \begin_layout Plain Layout
6902 Of course, which directory is your local directory will vary by platform,
6903 and \SpecialChar LyX
6904 allows you to specify your local directory on startup, too, using
6906 \begin_inset Flex Code
6909 \begin_layout Plain Layout
6923 \begin_layout LyX-Code
6924 cp report.layout ~/.lyx/layouts/myclass.layout
6927 \begin_layout Standard
6929 \begin_inset Flex Code
6932 \begin_layout Plain Layout
6938 and change the line:
6941 \begin_layout LyX-Code
6944 Declare\SpecialChar LaTeX
6948 \begin_layout Standard
6952 \begin_layout LyX-Code
6955 Declare\SpecialChar LaTeX
6956 Class[report, myclass.sty]{report (myclass)}
6959 \begin_layout Standard
6963 \begin_layout LyX-Code
6965 \begin_inset Newline newline
6971 \begin_inset Newline newline
6977 \begin_layout Standard
6978 near the top of the file.
6981 \begin_layout Standard
6982 Start \SpecialChar LyX
6984 \begin_inset Flex Noun
6987 \begin_layout Plain Layout
6988 Tools\SpecialChar menuseparator
6995 Then restart \SpecialChar LyX
6996 and try creating a new document.
6998 \begin_inset Flex Noun
7001 \begin_layout Plain Layout
7007 " as a document class option in the
7008 \begin_inset Flex Noun
7011 \begin_layout Plain Layout
7012 Document\SpecialChar menuseparator
7019 It is likely that some of the sectioning commands and such in your new
7020 class will work differently from how they worked in the base class—
7021 \begin_inset Flex Code
7024 \begin_layout Plain Layout
7030 in this example—so you can fiddle around with the settings for the different
7031 sections if you wish.
7032 The layout information for sections is contained in
7033 \begin_inset Flex Code
7036 \begin_layout Plain Layout
7042 , but you do not need to copy and change this file.
7043 Instead, you can simply add your changes to your layout file, after the
7045 \begin_inset Flex Code
7048 \begin_layout Plain Layout
7054 , which itself includes
7055 \begin_inset Flex Code
7058 \begin_layout Plain Layout
7065 For example, you might add these lines:
7068 \begin_layout LyX-Code
7072 \begin_layout LyX-Code
7076 \begin_layout LyX-Code
7080 \begin_layout LyX-Code
7084 \begin_layout LyX-Code
7088 \begin_layout Standard
7089 to change the font for chapter headings to sans-serif.
7090 This will override (or, in this case, add to) the existing declaration
7091 for the Chapter style.
7095 \begin_layout Standard
7096 Your new package may also provide commands or environments not present in
7098 In this case, you will want to add these to the layout file.
7100 \begin_inset CommandInset ref
7102 reference "sec:TextClass"
7106 for information on how to do so.
7109 \begin_layout Standard
7111 \begin_inset Flex Noun
7114 \begin_layout Plain Layout
7120 can be used with several different document classes, and even if it cannot,
7121 you might find it easiest just to write a module that you can load with
7123 The simplest possible such module would be:
7126 \begin_layout LyX-Code
7129 DeclareLyXModule{My Package}
7132 \begin_layout LyX-Code
7136 \begin_layout LyX-Code
7137 #Support for mypkg.sty.
7140 \begin_layout LyX-Code
7142 \begin_inset Newline newline
7148 \begin_layout LyX-Code
7150 \begin_inset Newline newline
7156 \begin_layout LyX-Code
7158 \begin_inset Newline newline
7164 \begin_inset Newline newline
7170 \begin_layout Standard
7171 A more complex module might modify the behavior of some existing constructs
7172 or define some new ones.
7174 \begin_inset CommandInset ref
7176 reference "sec:TextClass"
7183 \begin_layout Subsection
7185 \begin_inset Flex Noun
7188 \begin_layout Plain Layout
7197 \begin_layout Standard
7198 There are two possibilities here.
7199 One is that the class file is itself based upon an existing document class.
7200 For example, many thesis classes are based upon
7201 \begin_inset Flex Noun
7204 \begin_layout Plain Layout
7211 To see whether yours is, look for a line like
7214 \begin_layout LyX-Code
7220 \begin_layout Standard
7222 If so, then you may proceed largely as in the previous section, though
7224 \begin_inset Flex Code
7227 \begin_layout Plain Layout
7228 Declare\SpecialChar LaTeX
7234 line will be different.
7235 If your new class is
7236 \begin_inset Flex Code
7239 \begin_layout Plain Layout
7245 and it is based upon
7246 \begin_inset Flex Code
7249 \begin_layout Plain Layout
7255 , then the line should read:
7259 \begin_layout Plain Layout
7260 And it will be easiest if you save the file to
7261 \begin_inset Flex Code
7264 \begin_layout Plain Layout
7271 assumes that the document class has the same name as the layout file.
7280 \begin_layout LyX-Code
7283 Declare\SpecialChar LaTeX
7284 Class[thesis,book]{thesis}
7287 \begin_layout Standard
7288 If, on the other hand, the new class is not based upon an existing class,
7289 you will probably have to
7290 \begin_inset Quotes eld
7294 \begin_inset Quotes erd
7298 We strongly suggest copying an existing layout file which uses a similar
7300 class and then modifying it, if you can do so.
7301 At least use an existing file as a starting point so you can find out what
7302 items you need to worry about.
7303 Again, the specifics are covered below.
7306 \begin_layout Subsection
7308 \begin_inset CommandInset label
7310 name "subsec:Creating-Templates"
7317 \begin_layout Standard
7318 Once you have written a layout file for a new document class, you might
7319 want to consider writing a
7324 A template acts as a kind of tutorial for your layout, showing how it might
7325 be used, though containing dummy content.
7326 You can of course look at the various templates included with \SpecialChar LyX
7330 \begin_layout Standard
7331 Templates are created just like usual documents: using \SpecialChar LyX
7333 The only difference is that usual documents contain all possible settings,
7334 including the font scheme and the paper size.
7335 Usually a user doesn't want a template to overwrite his preferred settings
7336 for such parameters.
7337 For that reason, the designer of a template should remove the corresponding
7339 \begin_inset Flex Code
7342 \begin_layout Plain Layout
7351 \begin_inset Flex Code
7354 \begin_layout Plain Layout
7362 from the template \SpecialChar LyX
7364 This can be done with any simple text-editor, for example
7365 \begin_inset Flex Code
7368 \begin_layout Plain Layout
7375 \begin_inset Flex Code
7378 \begin_layout Plain Layout
7387 \begin_layout Standard
7388 Put the edited template files you create in
7389 \begin_inset Flex Code
7392 \begin_layout Plain Layout
7398 , copy the ones you use from the global template directory in
7399 \begin_inset Flex Code
7402 \begin_layout Plain Layout
7408 to the same place, and redefine the template path in the
7409 \begin_inset Flex Noun
7412 \begin_layout Plain Layout
7413 Tools\SpecialChar menuseparator
7414 Preferences\SpecialChar menuseparator
7423 \begin_layout Standard
7424 Note, by the way, that there is a template which has a particular meaning:
7426 \begin_inset Flex Code
7429 \begin_layout Plain Layout
7436 This template is loaded every time you create a new document with
7437 \begin_inset Flex Noun
7440 \begin_layout Plain Layout
7441 File\SpecialChar menuseparator
7447 in order to provide useful defaults.
7448 To create this template from inside \SpecialChar LyX
7449 , all you have to do is to open a document
7450 with the correct settings, and use the
7451 \begin_inset Flex Noun
7454 \begin_layout Plain Layout
7455 Save as Document Defaults
7463 \begin_layout Subsection
7464 Upgrading old layout files
7467 \begin_layout Standard
7468 The format of layout files changes with each \SpecialChar LyX
7469 release, so old layout files
7470 need to be converted to the new format.
7472 reads a layout file in an older format, it automatically calls the
7474 \begin_inset Flex Code
7477 \begin_layout Plain Layout
7483 to convert it to a temporary file in current format.
7484 The original file is left untouched.
7485 If you use the layout file often, then, you may want to convert it permanently,
7486 so that \SpecialChar LyX
7487 does not have to do so itself every time.
7488 To do this, you can call the converter manually:
7491 \begin_layout Enumerate
7493 \begin_inset Flex Code
7496 \begin_layout Plain Layout
7503 \begin_inset Flex Code
7506 \begin_layout Plain Layout
7515 \begin_layout Enumerate
7517 \begin_inset Newline newline
7521 \begin_inset Flex Code
7524 \begin_layout Plain Layout
7525 python LyXDir/scripts/layout2layout.py myclass.old myclass.layout
7531 \begin_inset Newline newline
7535 \begin_inset Flex Code
7538 \begin_layout Plain Layout
7544 is the name of your \SpecialChar LyX
7548 \begin_layout Standard
7549 Note that manual conversion does not affect included files, so these will
7550 have to be converted separately.
7553 \begin_layout Section
7554 \begin_inset CommandInset label
7556 name "sec:TextClass"
7560 The layout file format
7563 \begin_layout Standard
7564 The following sections describe how layout files are structured and written.
7565 Our advice is to go slowly, save and test often.
7566 It is really not that hard, except that the multitude of options can become
7567 overwhelming, especially if you try to check out too many at once.
7568 It becomes easier if you use existing layouts of \SpecialChar LyX
7569 as examples/reference
7570 or if you modify an existing layout to your needs.
7573 \begin_layout Standard
7574 Note that all the tags used in layout files are case-insensitive.
7576 \begin_inset Flex Code
7579 \begin_layout Plain Layout
7586 \begin_inset Flex Code
7589 \begin_layout Plain Layout
7596 \begin_inset Flex Code
7599 \begin_layout Plain Layout
7605 are really the same tag.
7606 The possible arguments are printed in brackets after the tag's name.
7607 The default argument is typeset
7608 \begin_inset Flex Code
7611 \begin_layout Plain Layout
7620 If the argument has a data type like
7621 \begin_inset Quotes eld
7625 \begin_inset Quotes erd
7629 \begin_inset Quotes eld
7633 \begin_inset Quotes erd
7636 , the default is shown like this:
7637 \begin_inset Flex Code
7640 \begin_layout Plain Layout
7651 \begin_layout Subsection
7652 The document class declaration and classification
7655 \begin_layout Standard
7656 Lines in a layout file which begin with
7657 \begin_inset Flex Code
7660 \begin_layout Plain Layout
7667 There is one exception to this rule.
7669 \begin_inset Flex Code
7672 \begin_layout Plain Layout
7678 files should begin with lines like:
7681 \begin_layout LyX-Code
7684 #% Do not delete the line below; configure depends on this
7687 \begin_layout LyX-Code
7692 DeclareLaTeXClass{Article (Standard Class)}
7695 \begin_layout LyX-Code
7700 DeclareCategory{Articles}
7703 \begin_layout Standard
7704 The second and third lines are used when you (re)configure \SpecialChar LyX
7706 The layout file is read by the \SpecialChar LaTeX
7708 \begin_inset Flex Code
7711 \begin_layout Plain Layout
7717 , in a special mode where
7718 \begin_inset Flex Code
7721 \begin_layout Plain Layout
7728 The first line is just a \SpecialChar LaTeX
7729 comment, the second one contains the mandatory
7730 declaration of the text class and the third line contains the optional
7731 classification of the class.
7732 If these lines appear in a file named
7733 \begin_inset Flex Code
7736 \begin_layout Plain Layout
7742 , then they define a text class of name
7743 \begin_inset Flex Code
7746 \begin_layout Plain Layout
7752 (the name of the layout file) which uses the \SpecialChar LaTeX
7754 \begin_inset Flex Code
7757 \begin_layout Plain Layout
7763 (the default is to use the same name as the layout).
7765 \begin_inset Quotes eld
7768 Article (Standard Class)
7769 \begin_inset Quotes erd
7772 that appears above is used as a description of the text class in the
7773 \begin_inset Flex Noun
7776 \begin_layout Plain Layout
7777 Document\SpecialChar menuseparator
7785 \begin_inset Quotes eld
7789 \begin_inset Quotes erd
7792 in the example) is also used in the
7793 \begin_inset Flex Noun
7796 \begin_layout Plain Layout
7797 Document\SpecialChar menuseparator
7803 dialog: the text classes are grouped by these categories (which are usually
7804 genres, so typical categories are
7805 \begin_inset Quotes eld
7809 \begin_inset Quotes erd
7813 \begin_inset Quotes eld
7817 \begin_inset Quotes erd
7821 \begin_inset Quotes eld
7825 \begin_inset Quotes erd
7829 \begin_inset Quotes eld
7833 \begin_inset Quotes erd
7837 \begin_inset Quotes eld
7841 \begin_inset Quotes erd
7845 \begin_inset Quotes eld
7849 \begin_inset Quotes erd
7853 If no category has been declared, the class will be put in the
7854 \begin_inset Quotes eld
7858 \begin_inset Quotes erd
7864 \begin_layout Standard
7865 Let's assume that you wrote your own text class that uses the
7866 \begin_inset Flex Code
7869 \begin_layout Plain Layout
7875 document class, but where you changed the appearance of the section headings.
7876 If you put it in a file
7877 \begin_inset Flex Code
7880 \begin_layout Plain Layout
7886 , the header of this file should be:
7889 \begin_layout LyX-Code
7892 #% Do not delete the line below; configure depends on this
7895 \begin_layout LyX-Code
7900 DeclareLaTeXClass[article]{Article (with My Own Headings)}
7903 \begin_layout LyX-Code
7908 DeclareCategory{Articles}
7911 \begin_layout Standard
7912 This declares a text class
7913 \begin_inset Flex Code
7916 \begin_layout Plain Layout
7922 , associated with the \SpecialChar LaTeX
7924 \begin_inset Flex Code
7927 \begin_layout Plain Layout
7934 \begin_inset Quotes eld
7937 Article (with My Own Headings)
7938 \begin_inset Quotes erd
7942 If your text class depends on several packages, you can declare it as:
7945 \begin_layout LyX-Code
7948 #% Do not delete the line below; configure depends on this
7951 \begin_layout LyX-Code
7956 DeclareLaTeXClass[article,foo.sty]{Article (with My Own Headings)}
7959 \begin_layout LyX-Code
7964 DeclareCategory{Articles}
7967 \begin_layout Standard
7968 This indicates that your text class uses the
7969 \begin_inset Flex Code
7972 \begin_layout Plain Layout
7979 Finally, it is also possible to declare classes for DocBook code.
7980 Typical declarations will look like:
7983 \begin_layout LyX-Code
7986 #% Do not delete the line below; configure depends on this
7989 \begin_layout LyX-Code
7994 DeclareDocBookClass[article]{SGML (DocBook Article)}
7997 \begin_layout LyX-Code
8002 DeclareCategory{Articles (DocBook)}
8005 \begin_layout Standard
8006 Note that these declarations can also be given an optional parameter declaring
8007 the name of the document class (but not a list).
8010 \begin_layout Standard
8011 So, to be as explicit as possible, the form of the layout declaration is:
8014 \begin_layout LyX-Code
8019 DeclareLaTeXClass[class,package.sty]{layout description}
8022 \begin_layout LyX-Code
8027 DeclareCategory{category}
8030 \begin_layout Standard
8031 The class need only be specified if the name of the \SpecialChar LaTeX
8033 name of the layout file are different or if there are packages to load.
8034 If the name of the class file is not specified, then \SpecialChar LyX
8036 that it is the same as the name of the layout file.
8039 \begin_layout Standard
8040 When the text class has been modified to your taste, all you have to do
8041 is to copy it either to
8042 \begin_inset Flex Code
8045 \begin_layout Plain Layout
8052 \begin_inset Flex Code
8055 \begin_layout Plain Layout
8062 \begin_inset Flex Noun
8065 \begin_layout Plain Layout
8066 Tools\SpecialChar menuseparator
8072 , exit \SpecialChar LyX
8074 Then your new text class should be available along with the others.
8077 \begin_layout Standard
8078 Once the layout file is installed, you can edit it and see your changes
8079 without having to reconfigure or to restart \SpecialChar LyX
8085 \begin_layout Plain Layout
8086 In versions of \SpecialChar LyX
8087 prior to 1.6, this was not true.
8088 As a result, editing layout files was very time consuming, since you had
8089 constantly to restart \SpecialChar LyX
8095 You can force a reload of the current layout by using the \SpecialChar LyX
8097 \begin_inset Flex Noun
8100 \begin_layout Plain Layout
8107 There is no default binding for this function—though, of course, you can
8108 bind it to a key yourself.
8109 But you will normally use this function simply by entering it in the mini-buffe
8114 \begin_layout Standard
8120 \begin_inset Flex Noun
8123 \begin_layout Plain Layout
8129 is very much an `advanced feature'.
8134 recommended that you save your work before using this function.
8139 recommended that you not attempt to edit layout information while simultaneousl
8140 y working on a document that you care about.
8141 Use a test document.
8142 Syntax errors and the like in your layout file could cause peculiar behavior.
8143 In particular, such errors could cause \SpecialChar LyX
8144 to regard the current layout as
8145 invalid and to attempt to switch to some other layout.
8149 \begin_layout Plain Layout
8150 Really bad syntax errors may even caused \SpecialChar LyX
8152 This is because certain sorts of errors may make \SpecialChar LyX
8163 The \SpecialChar LyX
8164 team strives to keep \SpecialChar LyX
8165 stable in such situations, but safe is better
8170 \begin_layout Plain Layout
8171 While we're giving advice: make regular backups.
8172 And be nice to your mother.
8180 \begin_layout Subsection
8181 The Module declaration
8184 \begin_layout Standard
8185 A module must begin with a line like the following:
8188 \begin_layout LyX-Code
8191 DeclareLyXModule[endnotes.sty]{Endnotes}
8194 \begin_layout Standard
8195 The mandatory argument, in curly brackets, is the name of the module, as
8197 \begin_inset Flex Noun
8200 \begin_layout Plain Layout
8201 Document\SpecialChar menuseparator
8202 Settings\SpecialChar menuseparator
8209 The argument in square brackets is optional: It declares any \SpecialChar LaTeX
8211 on which the module depends.
8212 It is also possible to use the form
8213 \begin_inset Flex Noun
8216 \begin_layout Plain Layout
8222 as an optional argument, which declares that the module can only be used
8223 when there exists a conversion chain between the formats `
8224 \begin_inset Flex Code
8227 \begin_layout Plain Layout
8234 \begin_inset Flex Code
8237 \begin_layout Plain Layout
8246 \begin_layout Standard
8247 The module declaration should then be followed by lines like the following
8251 \begin_layout Plain Layout
8252 Preferably in English if the module should be published with \SpecialChar LyX
8254 This description will appear in the list of messages to be translated and
8255 will be thus translated with the next interface update.
8263 \begin_layout LyX-Code
8267 \begin_layout LyX-Code
8268 #Adds an endnote command, in addition to footnotes.
8272 \begin_layout LyX-Code
8273 #You will need to add
8275 theendnotes in TeX code where you
8278 \begin_layout LyX-Code
8279 #want the endnotes to appear.
8283 \begin_layout LyX-Code
8287 \begin_layout LyX-Code
8288 #Requires: somemodule | othermodule
8291 \begin_layout LyX-Code
8292 #Excludes: badmodule
8295 \begin_layout Standard
8296 The description is used in
8297 \begin_inset Flex Noun
8300 \begin_layout Plain Layout
8301 Document\SpecialChar menuseparator
8302 Settings\SpecialChar menuseparator
8308 to provide the user with information about what the module does.
8310 \begin_inset Flex Code
8313 \begin_layout Plain Layout
8319 line is used to identify other modules with which this one must be used;
8321 \begin_inset Flex Code
8324 \begin_layout Plain Layout
8330 line is used to identify modules with which this one may not be used.
8331 Both are optional, and, as shown, multiple modules should be separated
8332 with the pipe symbol: |.
8333 Note that the required modules are treated disjunctively:
8337 of the required modules must be used.
8342 excluded module may be used.
8343 Note that modules are identified here by their filenames without the
8344 \begin_inset Flex Code
8347 \begin_layout Plain Layout
8355 \begin_inset Flex Code
8358 \begin_layout Plain Layout
8365 \begin_inset Flex Code
8368 \begin_layout Plain Layout
8377 \begin_layout Subsection
8381 \begin_layout Standard
8382 The first non-comment line of any layout file, included file, or module
8387 contain the file format number:
8390 \begin_layout Description
8391 \begin_inset Flex Code
8394 \begin_layout Plain Layout
8401 \begin_inset Flex Code
8404 \begin_layout Plain Layout
8410 ] The format number of the layout file.
8413 \begin_layout Standard
8414 This tag was introduced with \SpecialChar LyX
8416 \begin_inset space ~
8420 Layout files from older \SpecialChar LyX
8421 versions do not have an explicit file format and
8422 are considered to have
8423 \begin_inset Flex Code
8426 \begin_layout Plain Layout
8428 \begin_inset space ~
8437 The format for the present version of \SpecialChar LyX
8439 But each version of \SpecialChar LyX
8440 is capable of reading earlier versions' layout files,
8441 just as they are capable of reading files produced by earlier versions
8444 There is, however, no provision for converting to earlier formats.
8447 \begin_layout Subsection
8448 \begin_inset CommandInset label
8450 name "subsec:General-text-class"
8454 General text class parameters
8457 \begin_layout Standard
8458 These are general parameters that govern the behavior of an entire document
8464 mean that they must appear in
8465 \begin_inset Flex Code
8468 \begin_layout Plain Layout
8474 files rather than in modules.
8475 A module can contain any layout tag.)
8478 \begin_layout Description
8479 \begin_inset Flex Code
8482 \begin_layout Plain Layout
8488 Adds information that will be output in the
8489 \begin_inset Flex Code
8492 \begin_layout Plain Layout
8498 block when the document is output to XHTML.
8499 Typically, this would be used to output CSS style information, but it can
8500 be used for anything that can appear in
8501 \begin_inset Flex Code
8504 \begin_layout Plain Layout
8512 \begin_inset Quotes eld
8516 \begin_inset Flex Code
8519 \begin_layout Plain Layout
8526 \begin_inset Quotes erd
8532 \begin_layout Description
8533 \begin_inset Flex Code
8536 \begin_layout Plain Layout
8542 Adds information to the document preamble.
8544 \begin_inset Newline newline
8548 \begin_inset Quotes eld
8552 \begin_inset Flex Code
8555 \begin_layout Plain Layout
8562 \begin_inset Quotes erd
8568 \begin_layout Description
8569 \begin_inset Flex Code
8572 \begin_layout Plain Layout
8578 Defines formats for use in the display of bibliographic information.
8580 \begin_inset CommandInset ref
8582 reference "subsec:Citation-format-description"
8588 \begin_inset Quotes eld
8592 \begin_inset Flex Code
8595 \begin_layout Plain Layout
8602 \begin_inset Quotes erd
8608 \begin_layout Description
8609 \begin_inset Flex Code
8612 \begin_layout Plain Layout
8618 Describes various global options supported by the document class.
8620 \begin_inset CommandInset ref
8622 reference "subsec:ClassOptions"
8628 \begin_inset Quotes eld
8632 \begin_inset Flex Code
8635 \begin_layout Plain Layout
8642 \begin_inset Quotes erd
8648 \begin_layout Description
8649 \begin_inset Flex Code
8652 \begin_layout Plain Layout
8659 \begin_inset Flex Code
8662 \begin_layout Plain Layout
8671 \begin_inset space \thinspace{}
8675 \begin_inset Flex Code
8678 \begin_layout Plain Layout
8684 ] Whether the class should
8688 to having one or two columns.
8689 Can be changed in the
8690 \begin_inset Flex Noun
8693 \begin_layout Plain Layout
8694 Document\SpecialChar menuseparator
8703 \begin_layout Description
8704 \begin_inset Flex Code
8707 \begin_layout Plain Layout
8714 \begin_inset Flex Code
8717 \begin_layout Plain Layout
8723 ] This sequence defines the properties for a counter.
8724 If the counter does not yet exist, it is created; if it does exist, it
8727 \begin_inset Quotes eld
8731 \begin_inset Flex Code
8734 \begin_layout Plain Layout
8741 \begin_inset Quotes erd
8745 \begin_inset Newline newline
8749 \begin_inset CommandInset ref
8751 reference "subsec:Counters"
8755 for details on counters.
8758 \begin_layout Description
8759 \begin_inset Flex Code
8762 \begin_layout Plain Layout
8768 Sets the default font used to display the document.
8770 \begin_inset CommandInset ref
8772 reference "subsec:Font-description"
8776 for how to declare fonts.
8778 \begin_inset Quotes eld
8782 \begin_inset Flex Code
8785 \begin_layout Plain Layout
8792 \begin_inset Quotes erd
8798 \begin_layout Description
8799 \begin_inset Flex Code
8802 \begin_layout Plain Layout
8809 \begin_inset Flex Code
8812 \begin_layout Plain Layout
8818 ] Specifies a module to be included by default with this document class.
8819 The module is specified as filename without the
8820 \begin_inset Flex Code
8823 \begin_layout Plain Layout
8830 The user can still remove the module, but it will be active at the outset.
8831 (This applies only when new files are created, or when this class is chosen
8832 for an existing document.)
8835 \begin_layout Description
8836 \begin_inset Flex Code
8839 \begin_layout Plain Layout
8846 \begin_inset Flex Code
8849 \begin_layout Plain Layout
8855 ] This is the style that will be assigned to new paragraphs, usually
8856 \begin_inset Flex Noun
8859 \begin_layout Plain Layout
8866 This will default to the first defined style if not given, but you are
8867 encouraged to use this directive.
8870 \begin_layout Description
8871 \begin_inset Flex Code
8874 \begin_layout Plain Layout
8881 \begin_inset Flex Code
8884 \begin_layout Plain Layout
8890 ] This tag indicates that the module (which is specified by filename without
8892 \begin_inset Flex Code
8895 \begin_layout Plain Layout
8901 extension) cannot be used with this document class.
8902 This might be used in a journal-specific layout file to prevent, say, the
8904 \begin_inset Flex Code
8907 \begin_layout Plain Layout
8913 module that numbers theorems by section.
8918 be used in a module.
8919 Modules have their own way of excluding other modules (see
8920 \begin_inset CommandInset ref
8922 reference "subsec:Layout-modules"
8929 \begin_layout Description
8930 \begin_inset Flex Code
8933 \begin_layout Plain Layout
8939 Defines a new float.
8941 \begin_inset CommandInset ref
8943 reference "subsec:Floats"
8949 \begin_inset Quotes eld
8953 \begin_inset Flex Code
8956 \begin_layout Plain Layout
8963 \begin_inset Quotes erd
8969 \begin_layout Description
8970 \begin_inset Flex Code
8973 \begin_layout Plain Layout
8979 Sets the information that will be output in the
8980 \begin_inset Flex Code
8983 \begin_layout Plain Layout
8989 block when this document class is output to XHTML.
8990 Note that this will completely override any prior
8991 \begin_inset Flex Code
8994 \begin_layout Plain Layout
9001 \begin_inset Flex Code
9004 \begin_layout Plain Layout
9012 \begin_inset Newline newline
9016 \begin_inset Flex Code
9019 \begin_layout Plain Layout
9025 if you just want to add material to the preamble.) Must end with
9026 \begin_inset Quotes eld
9030 \begin_inset Flex Code
9033 \begin_layout Plain Layout
9040 \begin_inset Quotes erd
9046 \begin_layout Description
9047 \begin_inset Flex Code
9050 \begin_layout Plain Layout
9057 \begin_inset Flex Code
9060 \begin_layout Plain Layout
9066 ] The style to use for the table of contents, bibliography, and so forth,
9067 when the document is output to HTML.
9068 For articles, this should normally be
9069 \begin_inset Flex Code
9072 \begin_layout Plain Layout
9079 \begin_inset Flex Code
9082 \begin_layout Plain Layout
9089 If it is not given, then \SpecialChar LyX
9090 will attempt to figure out which layout to use.
9093 \begin_layout Description
9094 \begin_inset Flex Code
9097 \begin_layout Plain Layout
9104 \begin_inset Flex Code
9107 \begin_layout Plain Layout
9113 ] Modifies the properties of the given counter.
9114 If the counter does not exist, the statement is ignored.
9116 \begin_inset Quotes eld
9120 \begin_inset Flex Code
9123 \begin_layout Plain Layout
9130 \begin_inset Quotes erd
9134 \begin_inset Newline newline
9138 \begin_inset CommandInset ref
9140 reference "subsec:Counters"
9144 for details on counters.
9147 \begin_layout Description
9148 \begin_inset Flex Code
9151 \begin_layout Plain Layout
9158 \begin_inset Flex Code
9161 \begin_layout Plain Layout
9167 ] This allows you to include another layout definition file within yours
9168 to avoid duplicating commands.
9169 Common examples are the standard layout files, for example,
9170 \begin_inset Flex Code
9173 \begin_layout Plain Layout
9179 , which contains most of the basic layouts.
9182 \begin_layout Description
9183 \begin_inset Flex Code
9186 \begin_layout Plain Layout
9193 \begin_inset Flex Code
9196 \begin_layout Plain Layout
9202 ] This section (re-)defines the layout of an inset.
9203 It can be applied to an existing inset or to a new, user-defined inset,
9204 e.g., a new character style.
9206 \begin_inset Quotes eld
9210 \begin_inset Flex Code
9213 \begin_layout Plain Layout
9220 \begin_inset Quotes erd
9224 \begin_inset Newline newline
9228 \begin_inset CommandInset ref
9230 reference "subsec:Flex-insets-and"
9234 for more information.
9238 \begin_layout Description
9239 \begin_inset Flex Code
9242 \begin_layout Plain Layout
9249 \begin_inset Flex Code
9252 \begin_layout Plain Layout
9258 ] A string that indicates the width of the left margin on the screen, for
9260 \begin_inset Quotes eld
9264 \begin_inset Flex Code
9267 \begin_layout Plain Layout
9274 \begin_inset Quotes erd
9278 (Note that this is not a `length', like
9279 \begin_inset Quotes eld
9283 \begin_inset Quotes erd
9289 \begin_layout Description
9290 \begin_inset Flex Code
9293 \begin_layout Plain Layout
9300 \begin_inset Flex Code
9303 \begin_layout Plain Layout
9309 ] Modifies the properties of the given paragraph style.
9310 If the style does not exist, this section is ignored.
9312 \begin_inset Quotes eld
9316 \begin_inset Flex Code
9319 \begin_layout Plain Layout
9326 \begin_inset Quotes erd
9332 \begin_layout Description
9333 \begin_inset Flex Code
9336 \begin_layout Plain Layout
9343 \begin_inset Flex Code
9346 \begin_layout Plain Layout
9352 ] Deletes an existing counter, usually one defined in an included file.
9355 \begin_layout Description
9356 \begin_inset Flex Code
9359 \begin_layout Plain Layout
9366 \begin_inset Flex Code
9369 \begin_layout Plain Layout
9375 ] Deletes an existing float.
9376 This is particularly useful when you want to suppress a float that has
9377 been defined in an input file.
9380 \begin_layout Description
9381 \begin_inset Flex Code
9384 \begin_layout Plain Layout
9391 \begin_inset Flex Code
9394 \begin_layout Plain Layout
9400 ] Deletes an existing style.
9403 \begin_layout Description
9404 \begin_inset Flex Code
9407 \begin_layout Plain Layout
9414 \begin_inset Flex Code
9417 \begin_layout Plain Layout
9423 ] The file format (as defined in the \SpecialChar LyX
9424 preferences) produced by this document
9426 It is mainly useful when
9427 \begin_inset Flex Code
9430 \begin_layout Plain Layout
9437 \begin_inset Flex Code
9440 \begin_layout Plain Layout
9446 and one wants to define a new type of literate document.
9447 The format is reset to
9448 \begin_inset Quotes eld
9452 \begin_inset Flex Code
9455 \begin_layout Plain Layout
9462 \begin_inset Quotes erd
9466 \begin_inset Quotes eld
9470 \begin_inset Flex Code
9473 \begin_layout Plain Layout
9480 \begin_inset Quotes erd
9483 when the corresponding
9484 \begin_inset Flex Code
9487 \begin_layout Plain Layout
9493 parameter is encountered.
9496 \begin_layout Description
9497 \begin_inset Flex Code
9500 \begin_layout Plain Layout
9507 \begin_inset Flex Code
9510 \begin_layout Plain Layout
9521 \begin_inset Flex Code
9524 \begin_layout Plain Layout
9531 \begin_inset Flex Code
9534 \begin_layout Plain Layout
9540 ] Specifies what sort of output documents using this class will produce.
9543 \begin_layout Description
9544 \begin_inset Flex Code
9547 \begin_layout Plain Layout
9554 \begin_inset Flex Code
9557 \begin_layout Plain Layout
9564 \begin_inset Flex Code
9567 \begin_layout Plain Layout
9573 ] Specifies options, given in the second string, for the package named by
9576 \begin_inset Quotes eld
9580 \begin_inset Flex Code
9583 \begin_layout Plain Layout
9584 PackageOptions natbib square
9590 \begin_inset Quotes erd
9594 \begin_inset Flex Code
9597 \begin_layout Plain Layout
9603 to be loaded with the
9604 \begin_inset Flex Code
9607 \begin_layout Plain Layout
9614 (For \SpecialChar TeX
9615 perts, this causes \SpecialChar LyX
9617 \begin_inset Flex Code
9620 \begin_layout Plain Layout
9623 PassOptionsToPackage{natbib}{square}
9629 \begin_inset Flex Code
9632 \begin_layout Plain Layout
9641 \begin_layout Description
9642 \begin_inset Flex Code
9645 \begin_layout Plain Layout
9652 \begin_inset Flex Code
9655 \begin_layout Plain Layout
9664 \begin_inset Flex Code
9667 \begin_layout Plain Layout
9674 \begin_inset Flex Code
9677 \begin_layout Plain Layout
9683 ] The default pagestyle.
9684 Can be changed in the
9685 \begin_inset Flex Noun
9688 \begin_layout Plain Layout
9689 Document\SpecialChar menuseparator
9698 \begin_layout Description
9699 \begin_inset Flex Code
9702 \begin_layout Plain Layout
9708 Sets the preamble for the \SpecialChar LaTeX
9710 Note that this will completely override any prior
9711 \begin_inset Flex Code
9714 \begin_layout Plain Layout
9721 \begin_inset Flex Code
9724 \begin_layout Plain Layout
9732 \begin_inset Flex Code
9735 \begin_layout Plain Layout
9741 if you just want to add material to the preamble.) Must end with
9742 \begin_inset Quotes eld
9746 \begin_inset Flex Code
9749 \begin_layout Plain Layout
9756 \begin_inset Quotes erd
9762 \begin_layout Description
9763 \begin_inset Flex Code
9766 \begin_layout Plain Layout
9773 \begin_inset Flex Code
9776 \begin_layout Plain Layout
9783 \begin_inset Flex Code
9786 \begin_layout Plain Layout
9795 \begin_inset space \thinspace{}
9799 \begin_inset Flex Code
9802 \begin_layout Plain Layout
9808 ] Whether the class already provides the feature
9809 \begin_inset Flex Code
9812 \begin_layout Plain Layout
9819 A feature is in general the name of a package (e.
9820 \begin_inset space \thinspace{}
9824 \begin_inset space \space{}
9828 \begin_inset Flex Code
9831 \begin_layout Plain Layout
9838 \begin_inset Flex Code
9841 \begin_layout Plain Layout
9848 \begin_inset space \thinspace{}
9852 \begin_inset space \space{}
9856 \begin_inset Flex Code
9859 \begin_layout Plain Layout
9866 \begin_inset Flex Code
9869 \begin_layout Plain Layout
9877 \begin_inset CommandInset ref
9879 reference "chap:List-of-functions"
9883 for the list of features.
9886 \begin_layout Description
9887 \begin_inset Flex Code
9890 \begin_layout Plain Layout
9897 \begin_inset Flex Code
9900 \begin_layout Plain Layout
9906 ] Indicates that this layout provides the functionality of the module mentioned,
9907 which should be specified by the filename without the
9908 \begin_inset Flex Code
9911 \begin_layout Plain Layout
9918 This will typically be used if the layout includes the module directly,
9919 rather than using the
9920 \begin_inset Flex Code
9923 \begin_layout Plain Layout
9929 tag to indicate that it ought to be used.
9930 It could also be used in a module that provided an alternate implementation
9931 of the same functionality.
9934 \begin_layout Description
9935 \begin_inset Flex Code
9938 \begin_layout Plain Layout
9945 \begin_inset Flex Code
9948 \begin_layout Plain Layout
9954 ] Creates a new paragraph style if it does not already exist.
9955 If the style does exist, this section is ignored.
9957 \begin_inset Quotes eld
9961 \begin_inset Flex Code
9964 \begin_layout Plain Layout
9971 \begin_inset Quotes erd
9977 \begin_layout Description
9978 \begin_inset Flex Code
9981 \begin_layout Plain Layout
9988 \begin_inset Flex Code
9991 \begin_layout Plain Layout
9997 ] Whether the class requires the feature
9998 \begin_inset Flex Code
10001 \begin_layout Plain Layout
10008 Multiple features must be separated by commas.
10009 Note that you can only request supported features.
10011 \begin_inset CommandInset ref
10013 reference "chap:List-of-functions"
10017 for the list of features.).
10018 If you require a package with specific options, you can additionally use
10020 \begin_inset Flex Code
10023 \begin_layout Plain Layout
10032 \begin_layout Description
10033 \begin_inset Flex Code
10036 \begin_layout Plain Layout
10043 \begin_inset Flex Code
10046 \begin_layout Plain Layout
10052 ] A string that indicates the width of the right margin on the screen, for
10054 \begin_inset Quotes eld
10058 \begin_inset Flex Code
10061 \begin_layout Plain Layout
10068 \begin_inset Quotes erd
10074 \begin_layout Description
10075 \begin_inset Flex Code
10078 \begin_layout Plain Layout
10085 \begin_inset Flex Code
10088 \begin_layout Plain Layout
10094 ] Sets which divisions get numbered.
10096 \begin_inset Newline newline
10100 \begin_inset Flex Code
10103 \begin_layout Plain Layout
10109 counter in \SpecialChar LaTeX
10113 \begin_layout Description
10114 \begin_inset Flex Code
10117 \begin_layout Plain Layout
10124 \begin_inset Flex Code
10127 \begin_layout Plain Layout
10136 \begin_inset space \thinspace{}
10140 \begin_inset Flex Code
10143 \begin_layout Plain Layout
10149 ] Whether the class-default should be printing on one or both sides of the
10151 Can be changed in the
10152 \begin_inset Flex Noun
10155 \begin_layout Plain Layout
10156 Document\SpecialChar menuseparator
10165 \begin_layout Description
10166 \begin_inset Flex Code
10169 \begin_layout Plain Layout
10176 \begin_inset Flex Code
10179 \begin_layout Plain Layout
10185 ] This sequence defines a paragraph style.
10186 If the style does not yet exist, it is created; if it does exist, its parameter
10189 \begin_inset Quotes eld
10193 \begin_inset Flex Code
10196 \begin_layout Plain Layout
10203 \begin_inset Quotes erd
10207 \begin_inset Newline newline
10211 \begin_inset CommandInset ref
10213 reference "subsec:Paragraph-Styles"
10217 for details on paragraph styles.
10220 \begin_layout Description
10221 \begin_inset Flex Code
10224 \begin_layout Plain Layout
10231 \begin_inset Flex Code
10234 \begin_layout Plain Layout
10240 ] The name of the command or environment to be used with
10241 \begin_inset Flex Code
10244 \begin_layout Plain Layout
10253 \begin_layout Description
10254 \begin_inset Flex Code
10257 \begin_layout Plain Layout
10264 \begin_inset Flex Code
10267 \begin_layout Plain Layout
10276 \begin_inset Flex Code
10279 \begin_layout Plain Layout
10285 ] Indicates what kind of markup is used to define the title of a document.
10287 \begin_inset Flex Code
10290 \begin_layout Plain Layout
10296 means that the macro with name
10297 \begin_inset Flex Code
10300 \begin_layout Plain Layout
10306 will be inserted after the last layout which has
10307 \begin_inset Quotes eld
10311 \begin_inset Flex Code
10314 \begin_layout Plain Layout
10316 \begin_inset space ~
10325 \begin_inset Quotes erd
10330 \begin_inset Flex Code
10333 \begin_layout Plain Layout
10339 corresponds to the case where all layouts which have
10340 \begin_inset Quotes eld
10344 \begin_inset Flex Code
10347 \begin_layout Plain Layout
10349 \begin_inset space ~
10358 \begin_inset Quotes erd
10361 should be enclosed into the
10362 \begin_inset Flex Code
10365 \begin_layout Plain Layout
10374 \begin_layout Description
10375 \begin_inset Flex Code
10378 \begin_layout Plain Layout
10385 \begin_inset Flex Code
10388 \begin_layout Plain Layout
10394 ] Sets which divisions are included in the table of contents.
10396 \begin_inset Flex Code
10399 \begin_layout Plain Layout
10405 counter in \SpecialChar LaTeX
10409 \begin_layout Subsection
10410 \begin_inset Flex Code
10413 \begin_layout Plain Layout
10420 \begin_inset CommandInset label
10422 name "subsec:ClassOptions"
10429 \begin_layout Standard
10431 \begin_inset Flex Code
10434 \begin_layout Plain Layout
10440 section can contain the following entries:
10443 \begin_layout Description
10444 \begin_inset Flex Code
10447 \begin_layout Plain Layout
10454 \begin_inset Flex Code
10457 \begin_layout Plain Layout
10463 ] The list of available font sizes for the document's main font, separated
10465 \begin_inset Quotes eld
10469 \begin_inset Flex Code
10472 \begin_layout Plain Layout
10479 \begin_inset Quotes erd
10485 \begin_layout Description
10486 \begin_inset Flex Code
10489 \begin_layout Plain Layout
10495 Used to set the DTD line with XML-based output classes.
10497 \begin_inset space \thinspace{}
10501 \begin_inset Quotes eld
10504 -//OASIS//DTD DocBook V4.2//EN
10505 \begin_inset Quotes erd
10511 \begin_layout Description
10512 \begin_inset Flex Code
10515 \begin_layout Plain Layout
10522 \begin_inset Flex Code
10525 \begin_layout Plain Layout
10526 string="empty|plain|headings|fancy"
10531 ] The list of available page sty\SpecialChar softhyphen
10533 \begin_inset Quotes eld
10537 \begin_inset Flex Code
10540 \begin_layout Plain Layout
10547 \begin_inset Quotes erd
10553 \begin_layout Description
10554 \begin_inset Flex Code
10557 \begin_layout Plain Layout
10564 \begin_inset Flex Code
10567 \begin_layout Plain Layout
10573 ] Some document class options, separated by a comma, that will be added
10574 to the optional part of the
10575 \begin_inset Flex Code
10578 \begin_layout Plain Layout
10589 \begin_layout Standard
10591 \begin_inset Flex Code
10594 \begin_layout Plain Layout
10600 section must end with
10601 \begin_inset Quotes eld
10605 \begin_inset Flex Code
10608 \begin_layout Plain Layout
10615 \begin_inset Quotes erd
10621 \begin_layout Subsection
10623 \begin_inset CommandInset label
10625 name "subsec:Paragraph-Styles"
10632 \begin_layout Standard
10633 A paragraph style description looks like this:
10637 \begin_layout Plain Layout
10638 Note that this will either define a new style or modify an existing one.
10646 \begin_layout LyX-Code
10653 \begin_layout LyX-Code
10657 \begin_layout LyX-Code
10661 \begin_layout Standard
10662 where the following commands are allowed:
10665 \begin_layout Description
10666 \begin_inset Flex Code
10669 \begin_layout Plain Layout
10676 \begin_inset Flex Code
10679 \begin_layout Plain Layout
10684 , left, right, center
10689 ] Paragraph alignment.
10692 \begin_layout Description
10693 \begin_inset Flex Code
10696 \begin_layout Plain Layout
10703 \begin_inset Flex Code
10706 \begin_layout Plain Layout
10711 , left, right, center
10716 ] A comma separated list of permitted alignments.
10717 (Some \SpecialChar LaTeX
10718 styles prohibit certain alignments, since those wouldn't make sense.
10719 For example a right-aligned or centered enumeration isn't possible.)
10722 \begin_layout Description
10723 \begin_inset Flex Code
10726 \begin_layout Plain Layout
10733 \begin_inset Flex Code
10736 \begin_layout Plain Layout
10742 ] Defines argument number <int> of a command\SpecialChar breakableslash
10743 environment associated with
10745 This is useful for things like section headings, and only makes sense with
10748 Every (optional or required) argument of a command or environment – except
10749 for the required argument that is associated with the content of the paragraph
10750 itself – has a separate definition, where the number specifies the order
10752 The definition must end with
10753 \begin_inset Flex Code
10756 \begin_layout Plain Layout
10763 So a command with two optional arguments has:
10764 \begin_inset Separator latexpar
10771 \begin_layout Quote
10777 \begin_layout Quote
10783 \begin_layout Quote
10789 \begin_layout Quote
10795 \begin_layout Quote
10801 \begin_layout Quote
10807 \begin_layout Standard
10809 \begin_inset Flex Code
10812 \begin_layout Plain Layout
10818 definition, the following specifications are possible:
10821 \begin_layout Itemize
10822 \begin_inset Flex Code
10825 \begin_layout Plain Layout
10832 \begin_inset Flex Code
10835 \begin_layout Plain Layout
10841 The string that will appear both in the menu (to insert this argument)
10842 and on the argument inset button (unless you also specify a separate
10843 \begin_inset Flex Code
10846 \begin_layout Plain Layout
10853 For the menu, you can define an accelerator by appending the respective
10854 character to the string, divided by
10855 \begin_inset Quotes eld
10859 \begin_inset Quotes erd
10863 \begin_inset space \thinspace{}
10867 \begin_inset space \space{}
10871 \begin_inset Quotes eld
10875 \begin_inset Flex Code
10878 \begin_layout Plain Layout
10885 \begin_inset Quotes erd
10891 \begin_layout Itemize
10892 \begin_inset Flex Code
10895 \begin_layout Plain Layout
10902 \begin_inset Flex Code
10905 \begin_layout Plain Layout
10911 A separate string for the menu.
10912 You can define an accelerator by appending the respective character to
10913 the string, divided by
10914 \begin_inset Quotes eld
10918 \begin_inset Quotes erd
10922 \begin_inset space \thinspace{}
10926 \begin_inset space \space{}
10930 \begin_inset Quotes eld
10934 \begin_inset Flex Code
10937 \begin_layout Plain Layout
10944 \begin_inset Quotes erd
10948 This specification is optional.
10949 If it is not given the
10950 \begin_inset Flex Code
10953 \begin_layout Plain Layout
10959 will be used instead for the menu.
10962 \begin_layout Itemize
10963 \begin_inset Flex Code
10966 \begin_layout Plain Layout
10973 \begin_inset Flex Code
10976 \begin_layout Plain Layout
10982 A longer explanatory text that appears in the tooltip when hovering over
10983 the argument inset.
10986 \begin_layout Itemize
10987 \begin_inset Flex Code
10990 \begin_layout Plain Layout
10997 \begin_inset Flex Code
11000 \begin_layout Plain Layout
11009 \begin_inset space \thinspace{}
11013 \begin_inset Flex Code
11016 \begin_layout Plain Layout
11022 ] Declare if this is a mandatory (1) or an optional (0) argument.
11023 Mandatory arguments will be output empty if not given, while optional arguments
11024 will not be output at all.
11025 By default, mandatory arguments are delimited by
11026 \begin_inset Flex Code
11029 \begin_layout Plain Layout
11035 , while optional arguments are delimited by
11036 \begin_inset Flex Code
11039 \begin_layout Plain Layout
11048 \begin_layout Itemize
11049 \begin_inset Flex Code
11052 \begin_layout Plain Layout
11059 \begin_inset Flex Code
11062 \begin_layout Plain Layout
11068 defines another argument (by its number) which this argument requires to
11069 be output if it is itself output.
11071 \begin_inset space \thinspace{}
11074 g., in \SpecialChar LaTeX
11075 commands, optional arguments often require previous optional arguments
11076 to be output (at least empty), as in
11077 \begin_inset Flex Code
11080 \begin_layout Plain Layout
11083 command[][argument]{text}
11089 This can be achieved by the statement
11090 \begin_inset Flex Code
11093 \begin_layout Plain Layout
11100 \begin_inset Flex Code
11103 \begin_layout Plain Layout
11112 \begin_layout Itemize
11113 \begin_inset Flex Code
11116 \begin_layout Plain Layout
11123 \begin_inset Flex Code
11126 \begin_layout Plain Layout
11132 defines a custom left delimiter (instead of
11133 \begin_inset Flex Code
11136 \begin_layout Plain Layout
11143 \begin_inset Flex Code
11146 \begin_layout Plain Layout
11153 A line break in the output can be indicated by
11154 \begin_inset Flex Code
11157 \begin_layout Plain Layout
11166 \begin_layout Itemize
11167 \begin_inset Flex Code
11170 \begin_layout Plain Layout
11177 \begin_inset Flex Code
11180 \begin_layout Plain Layout
11186 defines a custom right delimiter (instead of
11187 \begin_inset Flex Code
11190 \begin_layout Plain Layout
11197 \begin_inset Flex Code
11200 \begin_layout Plain Layout
11207 A line break in the output can be indicated by
11208 \begin_inset Flex Code
11211 \begin_layout Plain Layout
11220 \begin_layout Itemize
11221 \begin_inset Flex Code
11224 \begin_layout Plain Layout
11231 \begin_inset Flex Code
11234 \begin_layout Plain Layout
11240 defines an argument that is inserted if and only if no user-specified arguments
11242 \begin_inset space \thinspace{}
11246 \begin_inset space \space{}
11249 if no argument inset has been inserted (note that also an empty argument
11250 inset omits the DefaultArg).
11251 Multiple arguments need to be separated by comma.
11254 \begin_layout Itemize
11255 \begin_inset Flex Code
11258 \begin_layout Plain Layout
11265 \begin_inset Flex Code
11268 \begin_layout Plain Layout
11274 defines an argument that is inserted in any case (alone or in addition
11275 to user-specified arguments).
11276 Multiple arguments need to be separated by comma.
11279 \begin_layout Itemize
11280 \begin_inset Flex Code
11283 \begin_layout Plain Layout
11289 The font used for the argument content, see
11290 \begin_inset CommandInset ref
11292 reference "subsec:Font-description"
11299 \begin_layout Itemize
11300 \begin_inset Flex Code
11303 \begin_layout Plain Layout
11309 The font used for the label; see
11310 \begin_inset CommandInset ref
11312 reference "subsec:Font-description"
11319 \begin_layout Itemize
11320 \begin_inset Flex Code
11323 \begin_layout Plain Layout
11330 \begin_inset Flex Code
11333 \begin_layout Plain Layout
11338 , Minimalistic, Conglomerate
11343 ] describes the rendering style used for the inset's frame and buttons.
11346 \begin_layout Itemize
11347 \begin_inset Flex Code
11350 \begin_layout Plain Layout
11357 \begin_inset Flex Code
11360 \begin_layout Plain Layout
11367 \begin_inset Flex Code
11370 \begin_layout Plain Layout
11376 , this argument is automatically inserted when the respective style is selected.
11377 Currently, only one argument per style\SpecialChar breakableslash
11378 layout can be automatically inserted.
11381 \begin_layout Itemize
11382 \begin_inset Flex Code
11385 \begin_layout Plain Layout
11392 \begin_inset Flex Code
11395 \begin_layout Plain Layout
11402 \begin_inset Flex Code
11405 \begin_layout Plain Layout
11411 , this argument will be inserted with a copy of the co-text (either selected
11412 text or the whole paragraph) as content.
11415 \begin_layout Itemize
11416 \begin_inset Flex Code
11419 \begin_layout Plain Layout
11426 \begin_inset Flex Code
11429 \begin_layout Plain Layout
11430 string of characters
11439 Defines individual characters that should be output in raw form, meaning
11440 without special translations that \SpecialChar LaTeX
11442 Note that, contrary to PassThru, this needs to be explicitly defined for
11444 That is, arguments do not inherit PassThruChars from their parent inset
11448 \begin_layout Standard
11449 By default, the text entered in the \SpecialChar LyX
11450 workarea in the respective layout is
11451 the last (mandatory) argument of a command if the
11452 \begin_inset Flex Code
11455 \begin_layout Plain Layout
11462 \begin_inset Flex Code
11465 \begin_layout Plain Layout
11472 However, arguments with the prefix
11473 \begin_inset Flex Code
11476 \begin_layout Plain Layout
11482 are output after this workarea argument.
11483 Note that post-argument numbering restarts at 1, so the first argument
11484 following the workarea argument is
11485 \begin_inset Flex Code
11488 \begin_layout Plain Layout
11495 Post-arguments are ignored in any other
11496 \begin_inset Flex Code
11499 \begin_layout Plain Layout
11506 \begin_inset Flex Code
11509 \begin_layout Plain Layout
11518 \begin_layout Standard
11520 \begin_inset Flex Code
11523 \begin_layout Plain Layout
11532 \begin_inset Flex Code
11535 \begin_layout Plain Layout
11544 \begin_inset Flex Code
11547 \begin_layout Plain Layout
11553 followed by the number (e.
11554 \begin_inset space \thinspace{}
11558 \begin_inset space \space{}
11562 \begin_inset Flex Code
11565 \begin_layout Plain Layout
11575 \begin_layout Description
11576 \begin_inset Flex Code
11579 \begin_layout Plain Layout
11585 Note that this will completely override any prior
11586 \begin_inset Flex Code
11589 \begin_layout Plain Layout
11595 declaration for this style.
11597 \begin_inset Quotes eld
11601 \begin_inset Flex Code
11604 \begin_layout Plain Layout
11611 \begin_inset Quotes erd
11616 \begin_inset CommandInset ref
11618 reference "subsec:I18n"
11622 for details on its use.
11625 \begin_layout Description
11626 \begin_inset Flex Code
11629 \begin_layout Plain Layout
11636 \begin_inset Flex Code
11639 \begin_layout Plain Layout
11649 \begin_layout Plain Layout
11650 Note that a `float' here is a real number, such as: 1.5.
11655 The vertical space with which the last of a chain of paragraphs with this
11656 style is separated from the following paragraph.
11657 If the next paragraph has another style, the separations are not simply
11658 added, but the maximum is taken.
11661 \begin_layout Description
11662 \begin_inset Flex Code
11665 \begin_layout Plain Layout
11672 \begin_inset Flex Code
11675 \begin_layout Plain Layout
11681 ] The category for this style.
11682 This is used to group related styles in the style combobox on the toolbar.
11683 Any string can be used, but you may want to use existing categories with
11688 \begin_layout Description
11689 \begin_inset Flex Code
11692 \begin_layout Plain Layout
11698 Depth of XML command.
11699 Used only with XML-type formats.
11702 \begin_layout Description
11703 \begin_inset Flex Code
11706 \begin_layout Plain Layout
11713 \begin_inset Flex Code
11716 \begin_layout Plain Layout
11722 ] Copies all the features of an existing style into the current one.
11726 \begin_layout Description
11727 \begin_inset Flex Code
11730 \begin_layout Plain Layout
11737 \begin_inset Flex Code
11740 \begin_layout Plain Layout
11746 ] The name of a style whose preamble should be output
11751 This allows to ensure some ordering of the preamble snippets when macros
11752 definitions depend on one another.
11756 \begin_layout Plain Layout
11757 Note that, besides that functionality, there is no way to ensure any ordering
11759 The ordering that you see in a given version of \SpecialChar LyX
11760 may change without warning
11769 \begin_layout Description
11770 \begin_inset Flex Code
11773 \begin_layout Plain Layout
11780 \begin_inset Flex Code
11783 \begin_layout Plain Layout
11788 , Box, Filled_Box, Static
11793 ] The type of label that stands at the end of the paragraph (or sequence
11795 \begin_inset Flex Code
11798 \begin_layout Plain Layout
11805 \begin_inset Newline newline
11809 \begin_inset Flex Code
11812 \begin_layout Plain Layout
11819 \begin_inset Flex Code
11822 \begin_layout Plain Layout
11829 \begin_inset Flex Code
11832 \begin_layout Plain Layout
11840 \begin_inset Flex Code
11843 \begin_layout Plain Layout
11850 \begin_inset Quotes eld
11854 \begin_inset Quotes erd
11858 \begin_inset Flex Code
11861 \begin_layout Plain Layout
11868 \begin_inset space \space{}
11872 \begin_inset Flex Code
11875 \begin_layout Plain Layout
11881 ) is a white (resp.
11882 \begin_inset space ~
11885 black) square suitable for end of proof markers,
11886 \begin_inset Flex Code
11889 \begin_layout Plain Layout
11895 is an explicit text string.
11898 \begin_layout Description
11899 \begin_inset Flex Code
11902 \begin_layout Plain Layout
11909 \begin_inset Flex Code
11912 \begin_layout Plain Layout
11918 ] The string used for a label with a
11919 \begin_inset Flex Code
11922 \begin_layout Plain Layout
11929 \begin_inset Newline newline
11933 \begin_inset Flex Code
11936 \begin_layout Plain Layout
11946 \begin_layout Description
11947 \begin_inset Flex Code
11950 \begin_layout Plain Layout
11956 The font used for both the text body
11962 \begin_inset CommandInset ref
11964 reference "subsec:Font-description"
11969 Note that defining this font automatically defines the
11970 \begin_inset Flex Code
11973 \begin_layout Plain Layout
11980 So you should define this one first if you also want to define
11981 \begin_inset Flex Code
11984 \begin_layout Plain Layout
11993 \begin_layout Description
11994 \begin_inset Flex Code
11997 \begin_layout Plain Layout
12004 \begin_inset Flex Code
12007 \begin_layout Plain Layout
12013 ] Used for backporting new styles to stable \SpecialChar LyX
12015 The first stable version that supports this tag is \SpecialChar LyX
12017 The argument is a number which may either be 0, -1 or any value greater
12020 \begin_inset Flex Code
12023 \begin_layout Plain Layout
12029 flag of a style is greater than zero, it will always be written to the
12031 If a .lyx file is read, the style definitions from the document header are
12032 added to the document class.
12033 Therefore even older \SpecialChar LyX
12034 versions can handle the style.
12036 \begin_inset Flex Code
12039 \begin_layout Plain Layout
12045 is a version number: if the style is read, and the version number is less
12046 than the version number of the already existing style in the document class,
12047 the new style is ignored.
12048 If the version number is greater, the new style replaces the existing style.
12049 A value of -1 means an infinite version number, i.
12050 \begin_inset space \thinspace{}
12054 \begin_inset space \space{}
12057 the style is always used.
12060 \begin_layout Description
12061 \begin_inset Flex Code
12064 \begin_layout Plain Layout
12071 \begin_inset Flex Code
12074 \begin_layout Plain Layout
12083 \begin_inset space \thinspace{}
12087 \begin_inset Flex Code
12090 \begin_layout Plain Layout
12096 ] Usually \SpecialChar LyX
12097 does not allow you to insert more than one space between words,
12098 since a space is considered as the separation between two words, not a
12099 character or symbol of its own.
12100 This is a very fine thing but sometimes annoying, for example, when typing
12101 program code or plain \SpecialChar LaTeX
12104 \begin_inset Flex Code
12107 \begin_layout Plain Layout
12114 Note that \SpecialChar LyX
12115 will create protected blanks for the additional blanks when
12116 in another mode than \SpecialChar LaTeX
12120 \begin_layout Description
12121 \begin_inset Flex Code
12124 \begin_layout Plain Layout
12130 These tags are used with XHTML output.
12132 \begin_inset CommandInset ref
12134 reference "subsec:Paragraph-Style-XHTML"
12141 \begin_layout Description
12142 \begin_inset Flex Code
12145 \begin_layout Plain Layout
12151 [FIXME] (Used only with XML-type formats.)
12154 \begin_layout Description
12155 \begin_inset Flex Code
12158 \begin_layout Plain Layout
12165 \begin_inset Flex Code
12168 \begin_layout Plain Layout
12177 \begin_inset space \thinspace{}
12181 \begin_inset Flex Code
12184 \begin_layout Plain Layout
12191 \begin_inset Flex Code
12194 \begin_layout Plain Layout
12200 , marks the style as to be included in the document preamble and not in
12202 This is useful for document classes that want such information as the title
12203 and author to appear in the preamble.
12204 Note that this works only for styles for which the
12205 \begin_inset Flex Code
12208 \begin_layout Plain Layout
12215 \begin_inset Flex Code
12218 \begin_layout Plain Layout
12225 \begin_inset Flex Code
12228 \begin_layout Plain Layout
12237 \begin_layout Description
12238 \begin_inset Flex Code
12241 \begin_layout Plain Layout
12248 \begin_inset Flex Code
12251 \begin_layout Plain Layout
12260 \begin_inset space \thinspace{}
12264 \begin_inset Flex Code
12267 \begin_layout Plain Layout
12274 \begin_inset Flex Code
12277 \begin_layout Plain Layout
12283 , marks the style as being part of a title block (see also the
12284 \begin_inset Flex Code
12287 \begin_layout Plain Layout
12294 \begin_inset Flex Code
12297 \begin_layout Plain Layout
12306 \begin_layout Description
12307 \begin_inset Flex Code
12310 \begin_layout Plain Layout
12317 \begin_inset Flex Code
12320 \begin_layout Plain Layout
12326 ] The \SpecialChar LaTeX
12327 command sequence declaring an item in a list.
12328 The command is to be defined without the preceding backslash (the default
12330 \begin_inset Quotes eld
12334 \begin_inset Quotes erd
12338 \begin_inset Flex Code
12341 \begin_layout Plain Layout
12349 in the \SpecialChar LaTeX
12353 \begin_layout Description
12354 \begin_inset Flex Code
12357 \begin_layout Plain Layout
12364 \begin_inset Flex Code
12367 \begin_layout Plain Layout
12373 ] This provides extra space between paragraphs that have the same style.
12374 If you put other styles into an environment, each is separated with the
12376 \begin_inset Flex Code
12379 \begin_layout Plain Layout
12386 But the whole items of the environment are additionally separated with
12388 \begin_inset Flex Code
12391 \begin_layout Plain Layout
12398 Note that this is a
12403 \begin_layout Description
12404 \begin_inset Flex Code
12407 \begin_layout Plain Layout
12413 [FIXME] (Used only with XML-type formats.)
12416 \begin_layout Description
12417 \begin_inset Flex Code
12420 \begin_layout Plain Layout
12427 \begin_inset Flex Code
12430 \begin_layout Plain Layout
12439 \begin_inset space \thinspace{}
12443 \begin_inset Flex Code
12446 \begin_layout Plain Layout
12452 ] Usually \SpecialChar LyX
12453 does not allow you to leave a paragraph empty, since it would
12454 lead to empty \SpecialChar LaTeX
12456 There are some cases where this could be desirable however: in a letter
12457 template, the required fields can be provided as empty fields, so that
12458 people do not forget them; in some special classes, a style can be used
12459 as some kind of break, which does not contain actual text.
12462 \begin_layout Description
12463 \begin_inset Flex Code
12466 \begin_layout Plain Layout
12473 \begin_inset Flex Code
12476 \begin_layout Plain Layout
12482 ] The vertical space between the label and the text body.
12483 Only used for labels that are above the text body (
12484 \begin_inset Flex Code
12487 \begin_layout Plain Layout
12494 \begin_inset Newline newline
12498 \begin_inset Flex Code
12501 \begin_layout Plain Layout
12502 Centered_Top_Environment
12510 \begin_layout Description
12511 \begin_inset Flex Code
12514 \begin_layout Plain Layout
12521 \begin_inset Flex Code
12524 \begin_layout Plain Layout
12530 ] The name of the counter for automatic numbering.
12531 In order to have the counter appear with your label, you will need to reference
12533 \begin_inset Flex Code
12536 \begin_layout Plain Layout
12545 This will work with
12546 \begin_inset Flex Code
12549 \begin_layout Plain Layout
12556 \begin_inset Flex Code
12559 \begin_layout Plain Layout
12566 \begin_inset Flex Code
12569 \begin_layout Plain Layout
12576 \begin_inset Flex Code
12579 \begin_layout Plain Layout
12586 \begin_inset Newline newline
12594 \begin_inset Flex Code
12597 \begin_layout Plain Layout
12604 \begin_inset Flex Code
12607 \begin_layout Plain Layout
12613 , though this case is a bit complicated.
12614 Suppose you declare
12615 \begin_inset Quotes eld
12619 \begin_inset Flex Code
12622 \begin_layout Plain Layout
12623 LabelCounter myenum
12629 \begin_inset Quotes erd
12633 Then the actual counters used are
12634 \begin_inset Flex Code
12637 \begin_layout Plain Layout
12644 \begin_inset Flex Code
12647 \begin_layout Plain Layout
12654 \begin_inset Flex Code
12657 \begin_layout Plain Layout
12664 \begin_inset Flex Code
12667 \begin_layout Plain Layout
12673 , much as in \SpecialChar LaTeX
12675 These counters must all be declared separately.
12676 \begin_inset Newline newline
12680 \begin_inset CommandInset ref
12682 reference "subsec:Counters"
12686 for details on counters.
12689 \begin_layout Description
12690 \begin_inset Flex Code
12693 \begin_layout Plain Layout
12699 The font used for the label.
12701 \begin_inset CommandInset ref
12703 reference "subsec:Font-description"
12710 \begin_layout Description
12711 \begin_inset Flex Code
12714 \begin_layout Plain Layout
12721 \begin_inset Flex Code
12724 \begin_layout Plain Layout
12730 ] Text that indicates how far a label should be indented.
12733 \begin_layout Description
12734 \begin_inset Flex Code
12737 \begin_layout Plain Layout
12744 \begin_inset Flex Code
12747 \begin_layout Plain Layout
12753 ] Text that indicates the amount of horizontal space between the label and
12755 Only used for labels that are not above the text body.
12758 \begin_layout Description
12759 \begin_inset Flex Code
12762 \begin_layout Plain Layout
12769 \begin_inset Flex Code
12772 \begin_layout Plain Layout
12778 ] The string used for the label.
12780 \begin_inset Flex Code
12783 \begin_layout Plain Layout
12789 is set, this string can be contain the special formatting commands described
12791 \begin_inset CommandInset ref
12793 reference "subsec:Counters"
12800 \begin_layout Description
12801 \begin_inset Flex Code
12804 \begin_layout Plain Layout
12805 LabelStringAppendix
12811 \begin_inset Flex Code
12814 \begin_layout Plain Layout
12820 ] This is used inside the appendix instead of
12821 \begin_inset Newline newline
12825 \begin_inset Flex Code
12828 \begin_layout Plain Layout
12836 \begin_inset Flex Code
12839 \begin_layout Plain Layout
12846 \begin_inset Newline newline
12850 \begin_inset Flex Code
12853 \begin_layout Plain Layout
12854 LabelStringAppendix
12862 \begin_layout Description
12863 \begin_inset Flex Code
12866 \begin_layout Plain Layout
12872 [FIXME] (Used only with XML-type formats.)
12875 \begin_layout Description
12876 \begin_inset Flex Code
12879 \begin_layout Plain Layout
12886 \begin_inset Flex Code
12889 \begin_layout Plain Layout
12894 , Manual, Static, Above,
12895 \begin_inset Newline newline
12898 Centered, Sensitive, Enumerate,
12899 \begin_inset Newline newline
12902 Itemize, Bibliography
12908 \begin_inset Separator latexpar
12915 \begin_layout Description
12916 \begin_inset Flex Code
12919 \begin_layout Plain Layout
12925 means the label is the very first word (up to the first real blank).
12926 Use protected spaces if you want more than one word as the label.
12930 \begin_layout Description
12931 \begin_inset Flex Code
12934 \begin_layout Plain Layout
12940 means the label is simply what is declared as
12941 \begin_inset Flex Code
12944 \begin_layout Plain Layout
12951 This will be displayed
12952 \begin_inset Quotes eld
12956 \begin_inset Quotes erd
12959 , at the beginning of the paragraph.
12961 \begin_inset Flex Code
12964 \begin_layout Plain Layout
12971 \begin_inset Flex Code
12974 \begin_layout Plain Layout
12980 , then it will be displayed only in the first paragraph of any sequence
12981 of paragraphs with the same
12982 \begin_inset Flex Code
12985 \begin_layout Plain Layout
12994 \begin_layout Description
12995 \begin_inset Flex Code
12998 \begin_layout Plain Layout
13005 \begin_inset space ~
13009 \begin_inset space ~
13013 \begin_inset Flex Code
13016 \begin_layout Plain Layout
13022 are special cases of
13023 \begin_inset Flex Code
13026 \begin_layout Plain Layout
13033 The label will be printed above the paragraph either at the beginning of
13034 the line or centered.
13037 \begin_layout Description
13038 \begin_inset Flex Code
13041 \begin_layout Plain Layout
13047 is a special case for the caption-labels
13048 \begin_inset Quotes eld
13052 \begin_inset Quotes erd
13056 \begin_inset Quotes eld
13060 \begin_inset Quotes erd
13064 \begin_inset Newline newline
13068 \begin_inset Flex Code
13071 \begin_layout Plain Layout
13077 means the (hardcoded) label string depends on the kind of float: It is
13078 hardcoded to be `FloatType N', where N is the value of the counter associated
13080 For the case that a caption is inserted outside of a float the
13081 \begin_inset Flex Code
13084 \begin_layout Plain Layout
13091 \begin_inset Quotes eld
13095 \begin_inset Quotes erd
13101 \begin_layout Description
13102 \begin_inset Flex Code
13105 \begin_layout Plain Layout
13111 produces the usual sort of enumeration labels.
13112 At present, it is hardcoded to use Arabic numerals, lowercase letters,
13113 small Roman numerals, and uppercase letters for the four possible depths.
13116 \begin_layout Description
13117 \begin_inset Flex Code
13120 \begin_layout Plain Layout
13126 produces various bullets at the different levels.
13127 It is also hardcoded.
13130 \begin_layout Description
13131 \begin_inset Flex Code
13134 \begin_layout Plain Layout
13140 should be used only with
13141 \begin_inset Flex Code
13144 \begin_layout Plain Layout
13145 LatexType BibEnvironment
13154 \begin_layout Description
13155 \begin_inset Flex Code
13158 \begin_layout Plain Layout
13164 Note that this will completely override any prior
13165 \begin_inset Flex Code
13168 \begin_layout Plain Layout
13174 declaration for this style.
13176 \begin_inset Quotes eld
13180 \begin_inset Flex Code
13183 \begin_layout Plain Layout
13190 \begin_inset Quotes erd
13195 \begin_inset CommandInset ref
13197 reference "subsec:I18n"
13201 for details on its use.
13204 \begin_layout Description
13205 \begin_inset Flex Code
13208 \begin_layout Plain Layout
13215 \begin_inset Flex Code
13218 \begin_layout Plain Layout
13224 ] The name of the corresponding \SpecialChar LaTeX
13226 Either the environment or command name.
13229 \begin_layout Description
13230 \begin_inset Flex Code
13233 \begin_layout Plain Layout
13240 \begin_inset Flex Code
13243 \begin_layout Plain Layout
13249 ] An optional parameter for the corresponding
13250 \begin_inset Flex Code
13253 \begin_layout Plain Layout
13260 This parameter cannot be changed from within \SpecialChar LyX
13262 \begin_inset Flex Code
13265 \begin_layout Plain Layout
13271 for customizable parameters).
13272 This will be output as is after all \SpecialChar LaTeX
13274 \begin_inset Flex Code
13277 \begin_layout Plain Layout
13286 \begin_layout Description
13287 \begin_inset Flex Code
13290 \begin_layout Plain Layout
13297 \begin_inset Flex Code
13300 \begin_layout Plain Layout
13305 , Command, Environment, Item_Environment,
13306 \begin_inset Newline newline
13309 List_Environment, Bib_Environment
13314 ] How the style should be translated into \SpecialChar LaTeX
13319 \begin_layout Plain Layout
13320 \begin_inset Flex Code
13323 \begin_layout Plain Layout
13329 is perhaps a bit misleading, since these rules apply to SGML classes, too.
13330 Visit the SGML class files for specific examples.
13336 \begin_inset Separator latexpar
13343 \begin_layout Description
13344 \begin_inset Flex Code
13347 \begin_layout Plain Layout
13353 means nothing special.
13356 \begin_layout Description
13357 \begin_inset Flex Code
13360 \begin_layout Plain Layout
13367 \begin_inset Flex Code
13370 \begin_layout Plain Layout
13377 {\SpecialChar ldots
13386 \begin_layout Description
13387 \begin_inset Flex Code
13390 \begin_layout Plain Layout
13397 \begin_inset Flex Code
13400 \begin_layout Plain Layout
13407 }\SpecialChar ldots
13423 \begin_layout Description
13424 \begin_inset Flex Code
13427 \begin_layout Plain Layout
13434 \begin_inset Flex Code
13437 \begin_layout Plain Layout
13444 \begin_inset Flex Code
13447 \begin_layout Plain Layout
13455 is generated for each paragraph of this environment.
13459 \begin_layout Description
13460 \begin_inset Flex Code
13463 \begin_layout Plain Layout
13470 \begin_inset Flex Code
13473 \begin_layout Plain Layout
13480 \begin_inset Newline newline
13484 \begin_inset Flex Code
13487 \begin_layout Plain Layout
13493 is passed as an argument to the environment.
13494 \begin_inset Newline newline
13498 \begin_inset Flex Code
13501 \begin_layout Plain Layout
13507 can be defined in the
13508 \begin_inset Flex Noun
13511 \begin_layout Plain Layout
13512 Edit\SpecialChar menuseparator
13514 \begin_inset space ~
13525 \begin_layout Description
13526 \begin_inset Flex Code
13529 \begin_layout Plain Layout
13536 \begin_inset Flex Code
13539 \begin_layout Plain Layout
13545 but adds the necessary mandatory argument (the longest label) to the begin
13546 statement of the bibliography environment:
13547 \begin_inset Newline newline
13551 \begin_inset Flex Code
13554 \begin_layout Plain Layout
13557 begin{thebibliography}{99}
13563 It is therefore only useful for bibliography environments.
13564 The default longest label
13565 \begin_inset Quotes eld
13569 \begin_inset Quotes erd
13572 can be changed by the user in the paragraph settings of a bibliography
13576 \begin_layout Standard
13577 Putting the last few things together, the \SpecialChar LaTeX
13578 output will be either:
13581 \begin_layout LyX-Code
13584 LatexName[LatexParam]{\SpecialChar ldots
13588 \begin_layout Standard
13592 \begin_layout LyX-Code
13595 begin{LatexName}[LatexParam] \SpecialChar ldots
13601 \begin_layout Standard
13602 depending upon the \SpecialChar LaTeX
13607 \begin_layout Description
13608 \begin_inset Flex Code
13611 \begin_layout Plain Layout
13618 \begin_inset Flex Code
13621 \begin_layout Plain Layout
13627 ] A string that is put at the beginning of the style content.
13628 A line break in the output can be indicated by
13629 \begin_inset Flex Code
13632 \begin_layout Plain Layout
13641 \begin_layout Description
13642 \begin_inset Flex Code
13645 \begin_layout Plain Layout
13652 \begin_inset Flex Code
13655 \begin_layout Plain Layout
13661 ] If you put styles into environments, the different
13662 \begin_inset Flex Code
13665 \begin_layout Plain Layout
13671 are not simply added, but added with a factor
13672 \begin_inset Formula $\frac{4}{\mathrm{depth}+4}$
13676 Note that this parameter is also used when
13677 \begin_inset Flex Code
13680 \begin_layout Plain Layout
13687 \begin_inset Flex Code
13690 \begin_layout Plain Layout
13697 \begin_inset Flex Code
13700 \begin_layout Plain Layout
13707 Then it is added to the manual or dynamic margin.
13708 \begin_inset Newline newline
13712 \begin_inset Quotes eld
13716 \begin_inset Flex Code
13719 \begin_layout Plain Layout
13726 \begin_inset Quotes erd
13729 means that the paragraph is indented with the width of
13730 \begin_inset Quotes eld
13734 \begin_inset Flex Code
13737 \begin_layout Plain Layout
13744 \begin_inset Quotes erd
13747 in the normal font.
13748 You can get a negative width by prefixing the string with
13749 \begin_inset Quotes eld
13753 \begin_inset Flex Code
13756 \begin_layout Plain Layout
13763 \begin_inset Quotes erd
13767 This way was chosen so that the look is the same with each used screen
13771 \begin_layout Description
13772 \begin_inset Flex Code
13775 \begin_layout Plain Layout
13782 \begin_inset Flex Code
13785 \begin_layout Plain Layout
13790 , Manual, Dynamic, First_Dynamic, Right_Address_Box
13796 \begin_inset Newline newline
13799 The kind of margin that the style has on the left side.
13800 \begin_inset Separator latexpar
13807 \begin_layout Description
13808 \begin_inset Flex Code
13811 \begin_layout Plain Layout
13817 just means a fixed margin.
13820 \begin_layout Description
13821 \begin_inset Flex Code
13824 \begin_layout Plain Layout
13830 means that the left margin depends on the string entered in the
13831 \begin_inset Flex Noun
13834 \begin_layout Plain Layout
13835 Edit\SpecialChar menuseparator
13837 \begin_inset space ~
13846 This is used to typeset nice lists without tabulators.
13849 \begin_layout Description
13850 \begin_inset Flex Code
13853 \begin_layout Plain Layout
13859 means that the margin depends on the size of the label.
13860 This is used for automatic enumerated headlines.
13861 It is obvious that the headline
13862 \begin_inset Quotes eld
13865 5.4.3.2.1 Very long headline
13866 \begin_inset Quotes erd
13869 must have a wider left margin (as wide as
13870 \begin_inset Quotes eld
13874 \begin_inset Quotes erd
13877 plus the space) than
13878 \begin_inset Quotes eld
13881 3.2 Very long headline
13882 \begin_inset Quotes erd
13886 \begin_inset Quotes eld
13890 \begin_inset Quotes erd
13893 are not able to do this.
13896 \begin_layout Description
13897 \begin_inset Flex Code
13900 \begin_layout Plain Layout
13906 is similar, but only the very first row of the paragraph is dynamic, while
13907 the others are static; this is used, for example, for descriptions.
13910 \begin_layout Description
13911 \begin_inset Flex Code
13914 \begin_layout Plain Layout
13920 means the margin is chosen in a way that the longest row of this paragraph
13921 fits to the right margin.
13922 This is used to typeset an address on the right edge of the page.
13926 \begin_layout Description
13927 \begin_inset Flex Code
13930 \begin_layout Plain Layout
13937 \begin_inset Flex Code
13940 \begin_layout Plain Layout
13949 \begin_inset space \thinspace{}
13953 \begin_inset Flex Code
13956 \begin_layout Plain Layout
13962 ] Whether fragile commands in this style should be
13963 \begin_inset Flex Code
13966 \begin_layout Plain Layout
13979 whether this command should itself be protected.)
13982 \begin_layout Description
13983 \begin_inset Flex Code
13986 \begin_layout Plain Layout
13993 \begin_inset Flex Code
13996 \begin_layout Plain Layout
14003 \begin_inset space \thinspace{}
14007 \begin_inset Flex Code
14010 \begin_layout Plain Layout
14018 ] Whether newlines are translated into \SpecialChar LaTeX
14020 \begin_inset Flex Code
14023 \begin_layout Plain Layout
14034 The translation can be switched off to allow more comfortable \SpecialChar LaTeX
14036 inside \SpecialChar LyX
14040 \begin_layout Description
14041 \begin_inset Flex Code
14044 \begin_layout Plain Layout
14051 \begin_inset Flex Code
14054 \begin_layout Plain Layout
14063 \begin_inset space \thinspace{}
14067 \begin_inset Flex Code
14070 \begin_layout Plain Layout
14076 ] If set to true, and if
14077 \begin_inset Flex Code
14080 \begin_layout Plain Layout
14087 \begin_inset Flex Code
14090 \begin_layout Plain Layout
14096 ) paragraphs are being indented, then the indentation of such a paragraph
14097 following one of this type will be suppressed.
14098 (So this will not affect the display of non-default paragraphs.)
14101 \begin_layout Description
14102 \begin_inset Flex Code
14105 \begin_layout Plain Layout
14112 \begin_inset Flex Code
14115 \begin_layout Plain Layout
14121 ] Name of a style that has replaced this style.
14122 This is used to rename a style, while keeping backward compatibility.
14125 \begin_layout Description
14126 \begin_inset Flex Code
14129 \begin_layout Plain Layout
14136 \begin_inset Flex Code
14139 \begin_layout Plain Layout
14146 \begin_inset space \thinspace{}
14150 \begin_inset Flex Code
14153 \begin_layout Plain Layout
14159 ] Determines whether consecutive pragraphs of the same type are treated
14160 as belonging together.
14161 This has the effect that the
14162 \begin_inset Flex Code
14165 \begin_layout Plain Layout
14171 is only printed once before such a group.
14172 By default, this is true for
14173 \begin_inset Flex Code
14176 \begin_layout Plain Layout
14183 \begin_inset Flex Code
14186 \begin_layout Plain Layout
14193 \begin_inset Flex Code
14196 \begin_layout Plain Layout
14202 and false for all other types.
14205 \begin_layout Description
14206 \begin_inset Flex Code
14209 \begin_layout Plain Layout
14216 \begin_inset Flex Code
14219 \begin_layout Plain Layout
14228 \begin_inset space \thinspace{}
14232 \begin_inset Flex Code
14235 \begin_layout Plain Layout
14241 ] Indicates that paragraphs will not be separated by an empty line in \SpecialChar LaTeX
14243 but only by a line break; together with
14244 \begin_inset Flex Code
14247 \begin_layout Plain Layout
14253 , this allows to emulate a plain text editor (like the ERT inset).
14256 \begin_layout Description
14257 \begin_inset Flex Code
14260 \begin_layout Plain Layout
14267 \begin_inset Flex Code
14270 \begin_layout Plain Layout
14276 ] The indent of the very first line of a paragraph.
14278 \begin_inset Newline newline
14282 \begin_inset Flex Code
14285 \begin_layout Plain Layout
14291 will be fixed for a certain style.
14292 The exception is the default style, since the indentation for these paragraphs
14293 can be prohibited with
14294 \begin_inset Flex Code
14297 \begin_layout Plain Layout
14305 \begin_inset Flex Code
14308 \begin_layout Plain Layout
14314 style paragraphs inside environments use the
14315 \begin_inset Flex Code
14318 \begin_layout Plain Layout
14324 of the environment, not their native one.
14326 \begin_inset Flex Code
14329 \begin_layout Plain Layout
14335 paragraphs inside an enumeration are not indented.
14338 \begin_layout Description
14339 \begin_inset Flex Code
14342 \begin_layout Plain Layout
14349 \begin_inset Flex Code
14352 \begin_layout Plain Layout
14358 ] The vertical space between two paragraphs of this style.
14361 \begin_layout Description
14362 \begin_inset Flex Code
14365 \begin_layout Plain Layout
14372 \begin_inset Flex Code
14375 \begin_layout Plain Layout
14382 allows the user to choose either
14383 \begin_inset Quotes eld
14387 \begin_inset Quotes erd
14391 \begin_inset Quotes eld
14395 \begin_inset Quotes erd
14398 to separate paragraphs.
14400 \begin_inset Quotes eld
14404 \begin_inset Quotes erd
14408 \begin_inset Flex Code
14411 \begin_layout Plain Layout
14419 \begin_inset Quotes eld
14423 \begin_inset Quotes erd
14427 \begin_inset Flex Code
14430 \begin_layout Plain Layout
14436 is ignored and all paragraphs are separated by the
14437 \begin_inset Flex Code
14440 \begin_layout Plain Layout
14447 The vertical space is calculated with
14448 \begin_inset Flex Code
14451 \begin_layout Plain Layout
14453 \begin_inset space ~
14462 \begin_inset Flex Code
14465 \begin_layout Plain Layout
14471 is the height of a row with the normal font.
14472 This way, the look stays the same with different screen fonts.
14475 \begin_layout Description
14476 \begin_inset Flex Code
14479 \begin_layout Plain Layout
14486 \begin_inset Flex Code
14489 \begin_layout Plain Layout
14498 \begin_inset space \thinspace{}
14502 \begin_inset Flex Code
14505 \begin_layout Plain Layout
14511 ] Whether the contents of this paragraph should be output in raw form, meaning
14512 without special translations that \SpecialChar LaTeX
14516 \begin_layout Description
14517 \begin_inset Flex Code
14520 \begin_layout Plain Layout
14527 \begin_inset Flex Code
14530 \begin_layout Plain Layout
14540 Defines individual characters that should be output in raw form, meaning
14541 without special translations that \SpecialChar LaTeX
14545 \begin_layout Description
14546 \begin_inset Flex Code
14549 \begin_layout Plain Layout
14555 Information to be included in the \SpecialChar LaTeX
14556 preamble when this style is used.
14557 Used to define macros, load packages, etc., required by this particular
14560 \begin_inset Quotes eld
14564 \begin_inset Flex Code
14567 \begin_layout Plain Layout
14574 \begin_inset Quotes erd
14580 \begin_layout Description
14581 \begin_inset Flex Code
14584 \begin_layout Plain Layout
14591 \begin_inset Flex Code
14594 \begin_layout Plain Layout
14600 ] The prefix to use when creating labels referring to paragraphs of this
14602 This allows the use of formatted references.
14605 \begin_layout Description
14606 \begin_inset Flex Code
14609 \begin_layout Plain Layout
14616 \begin_inset Flex Code
14619 \begin_layout Plain Layout
14625 ] Whether the style requires the feature
14626 \begin_inset Flex Code
14629 \begin_layout Plain Layout
14636 \begin_inset CommandInset ref
14638 reference "chap:List-of-functions"
14642 for the list of features).
14643 If you require a package with specific options, you can additionally use
14645 \begin_inset Flex Code
14648 \begin_layout Plain Layout
14654 as a general text class parameter (see
14655 \begin_inset CommandInset ref
14657 reference "subsec:General-text-class"
14664 \begin_layout Description
14665 \begin_inset Flex Code
14668 \begin_layout Plain Layout
14675 \begin_inset Flex Code
14678 \begin_layout Plain Layout
14687 \begin_inset Flex Code
14690 \begin_layout Plain Layout
14696 ] Resets the \SpecialChar LaTeX
14697 arguments of this style (as defined via the
14698 \begin_inset Flex Code
14701 \begin_layout Plain Layout
14708 This is useful if you have copied a style via
14709 \begin_inset Flex Code
14712 \begin_layout Plain Layout
14718 , but you do not want to inherit its (required and optional) arguments.
14721 \begin_layout Description
14722 \begin_inset Flex Code
14725 \begin_layout Plain Layout
14732 \begin_inset Flex Code
14735 \begin_layout Plain Layout
14741 ] A string that is put at the end of the layout content.
14742 A line break in the output can be indicated by
14743 \begin_inset Flex Code
14746 \begin_layout Plain Layout
14755 \begin_layout Description
14756 \begin_inset Flex Code
14759 \begin_layout Plain Layout
14766 \begin_inset Flex Code
14769 \begin_layout Plain Layout
14776 \begin_inset Flex Code
14779 \begin_layout Plain Layout
14788 \begin_layout Description
14789 \begin_inset Flex Code
14792 \begin_layout Plain Layout
14799 \begin_inset Flex Code
14802 \begin_layout Plain Layout
14811 \begin_inset Flex Code
14814 \begin_layout Plain Layout
14821 \begin_inset Flex Code
14824 \begin_layout Plain Layout
14831 \begin_inset Flex Code
14834 \begin_layout Plain Layout
14836 \begin_inset space ~
14844 ] This defines what the default spacing should be in the style.
14846 \begin_inset Flex Code
14849 \begin_layout Plain Layout
14856 \begin_inset Flex Code
14859 \begin_layout Plain Layout
14866 \begin_inset Flex Code
14869 \begin_layout Plain Layout
14875 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
14876 If you specify the argument
14877 \begin_inset Flex Code
14880 \begin_layout Plain Layout
14886 , then you must also provide a value argument which will be the actual multiplie
14888 Note that, contrary to other parameters,
14889 \begin_inset Flex Code
14892 \begin_layout Plain Layout
14898 implies the generation of specific \SpecialChar LaTeX
14899 code, using the \SpecialChar LaTeX
14903 \begin_inset Flex Code
14906 \begin_layout Plain Layout
14915 \begin_layout Description
14916 \begin_inset Flex Code
14919 \begin_layout Plain Layout
14926 \begin_inset Flex Code
14929 \begin_layout Plain Layout
14936 \begin_inset space \thinspace{}
14940 \begin_inset Flex Code
14943 \begin_layout Plain Layout
14951 ] Allow spell-checking paragraphs of this style.
14955 \begin_layout Description
14956 \begin_inset Flex Code
14959 \begin_layout Plain Layout
14965 The font used for the text body .
14967 \begin_inset CommandInset ref
14969 reference "subsec:Font-description"
14976 \begin_layout Description
14977 \begin_inset Flex Code
14980 \begin_layout Plain Layout
14989 \begin_inset Flex Code
14992 \begin_layout Plain Layout
15002 The level of the style in the table of contents.
15003 This is used for automatic numbering of section headings.
15006 \begin_layout Description
15007 \begin_inset Flex Code
15010 \begin_layout Plain Layout
15019 \begin_inset Flex Code
15022 \begin_layout Plain Layout
15033 \begin_inset Flex Code
15036 \begin_layout Plain Layout
15043 \begin_inset Flex Code
15046 \begin_layout Plain Layout
15052 ] This tag determines whether the first line indentation of this paragraph
15053 can be toggled via the Paragraph settings dialog.
15057 \begin_inset Flex Code
15060 \begin_layout Plain Layout
15070 is set, indentation can be toggled if the document settings use
15071 \begin_inset Quotes eld
15075 \begin_inset Quotes erd
15078 paragraph style, with
15079 \begin_inset Flex Code
15082 \begin_layout Plain Layout
15088 , indentation can always be toggled, notwithstanding the document settings,
15090 \begin_inset Flex Code
15093 \begin_layout Plain Layout
15099 , indentation can never be toggled.
15102 \begin_layout Description
15103 \begin_inset Flex Code
15106 \begin_layout Plain Layout
15113 \begin_inset Flex Code
15116 \begin_layout Plain Layout
15122 ] The vertical space with which the very first of a chain of paragraphs
15123 with this style is separated from the previous paragraph.
15124 If the previous paragraph has another style, the separations are not simply
15125 added, but the maximum is taken.
15128 \begin_layout Subsection
15129 \begin_inset CommandInset label
15135 Internationalization of Paragraph Styles
15138 \begin_layout Standard
15140 has long supported internationalization of layout information, but, until
15141 version 2.0, this applied only to the user interface and not to, say, PDF
15143 Thus, French authors were forced to resort to ugly hacks if they wanted
15148 1' instead of `Theorem 1'.
15149 Thanks to Georg Baum, that is no longer the case.
15152 \begin_layout Standard
15154 \begin_inset Flex Code
15157 \begin_layout Plain Layout
15163 defines text that is to appear in the typeset document, it may use
15164 \begin_inset Flex Code
15167 \begin_layout Plain Layout
15174 \begin_inset Flex Code
15177 \begin_layout Plain Layout
15183 to support non-English and even multi-language documents correctly.
15184 The following excerpt (from the
15185 \begin_inset Flex Code
15188 \begin_layout Plain Layout
15194 file) shows how this works:
15197 \begin_layout LyX-Code
15199 \begin_inset Separator latexpar
15206 \begin_layout LyX-Code
15209 theoremstyle{remark}
15212 \begin_layout LyX-Code
15215 newtheorem{claim}[thm]{
15222 \begin_layout LyX-Code
15226 \begin_layout LyX-Code
15230 \begin_layout LyX-Code
15235 claimname}{_(Claim)}
15238 \begin_layout LyX-Code
15242 \begin_layout LyX-Code
15246 \begin_layout LyX-Code
15255 claimname}{_(Claim)}}
15258 \begin_layout LyX-Code
15263 \begin_layout Standard
15264 In principle, any legal \SpecialChar LaTeX
15266 \begin_inset Flex Code
15269 \begin_layout Plain Layout
15276 \begin_inset Flex Code
15279 \begin_layout Plain Layout
15285 tags, but in practice they will typically look as they do here.
15286 The key to correct translation of the typeset text is the definition of
15287 the \SpecialChar LaTeX
15289 \begin_inset Flex Code
15292 \begin_layout Plain Layout
15301 \begin_inset Flex Code
15304 \begin_layout Plain Layout
15316 \begin_layout Standard
15318 \begin_inset Flex Code
15321 \begin_layout Plain Layout
15327 tag provides for internationalization based upon the overall language of
15329 The contents of the tag will be included in the preamble, just as with
15331 \begin_inset Flex Code
15334 \begin_layout Plain Layout
15341 What makes it special is the use of the
15342 \begin_inset Quotes eld
15346 \begin_inset Quotes erd
15350 \begin_inset Flex Code
15353 \begin_layout Plain Layout
15359 , which will be replaced, when \SpecialChar LyX
15360 produces \SpecialChar LaTeX
15361 output, with the translation of
15362 its argument into the document language.
15365 \begin_layout Standard
15367 \begin_inset Flex Code
15370 \begin_layout Plain Layout
15376 tag is more complex, since it is meant to provide support for multi-language
15377 documents and so offers an interface to the
15378 \begin_inset Flex Code
15381 \begin_layout Plain Layout
15388 Its contents will be added to the preamble once for each language that
15389 appears in the document.
15390 In this case, the argument to
15391 \begin_inset Flex Code
15394 \begin_layout Plain Layout
15400 will be replaced with its translation into the language in question; the
15402 \begin_inset Flex Code
15405 \begin_layout Plain Layout
15411 is replaced by the language name (as used by the babel package).
15414 \begin_layout Standard
15415 A German document that also included a French section would thus have the
15416 following in the preamble:
15419 \begin_layout LyX-Code
15428 claimname}{Affirmation}}
15429 \begin_inset Newline newline
15440 claimname}{Behauptung}}
15441 \begin_inset Newline newline
15448 claimname}{Behauptung}
15451 \begin_layout Standard
15454 \begin_inset Flex Code
15457 \begin_layout Plain Layout
15463 will then conspire to produce the correct text in the output.
15466 \begin_layout Standard
15467 One important point to note here is that the translations are provided by
15469 itself, through the file
15470 \begin_inset Flex Code
15473 \begin_layout Plain Layout
15480 This means, in effect, that
15481 \begin_inset Flex Code
15484 \begin_layout Plain Layout
15491 \begin_inset Flex Code
15494 \begin_layout Plain Layout
15500 are really only of use in layout files that are provided with \SpecialChar LyX
15502 entered in user-created layout files will not be seen by \SpecialChar LyX
15503 's internationalizatio
15504 n routines unless the
15505 \begin_inset Flex Code
15508 \begin_layout Plain Layout
15514 file is modified accordingly.
15515 That said, however, any layout created with the intention that it will
15516 be included with \SpecialChar LyX
15517 should use these tags where appropriate.
15518 Please note that the paragraph style translations provided by \SpecialChar LyX
15520 change with a minor update (e.
15521 \begin_inset space \thinspace{}
15525 \begin_inset space \space{}
15528 from version 2.1.x to 2.1.y).
15529 It is however quite likely that a major update (e.
15530 \begin_inset space \thinspace{}
15534 \begin_inset space \space{}
15537 from 2.0.x to 2.1.y) will introduce new translations or corrections.
15540 \begin_layout Subsection
15542 \begin_inset CommandInset label
15544 name "subsec:Floats"
15551 \begin_layout Standard
15552 It is necessary to define the floats (
15553 \begin_inset Flex Noun
15556 \begin_layout Plain Layout
15563 \begin_inset Flex Noun
15566 \begin_layout Plain Layout
15572 , \SpecialChar ldots
15573 ) in the text class itself.
15574 Standard floats are included in the file
15575 \begin_inset Flex Code
15578 \begin_layout Plain Layout
15584 , so you may have to do no more than add
15587 \begin_layout LyX-Code
15588 Input stdfloats.inc
15591 \begin_layout Standard
15592 to your layout file.
15593 If you want to implement a text class that proposes some other float types
15594 (like the AGU class bundled with \SpecialChar LyX
15595 ), the information below will hopefully
15599 \begin_layout Description
15600 \begin_inset Flex Code
15603 \begin_layout Plain Layout
15610 \begin_inset Flex Code
15613 \begin_layout Plain Layout
15619 =!htbpH] Allowed placement options for this float type.
15620 The value is a string of placement characters.
15621 Possible characters include:
15626 \begin_inset Quotes eld
15630 \begin_inset Quotes erd
15638 \begin_inset Quotes eld
15642 \begin_inset Quotes erd
15650 \begin_inset Quotes eld
15654 \begin_inset Quotes erd
15662 \begin_inset Quotes eld
15666 \begin_inset Quotes erd
15674 \begin_inset Quotes eld
15678 \begin_inset Quotes erd
15686 \begin_inset Quotes eld
15690 \begin_inset Quotes erd
15694 The order of the characters in the string does not matter.
15695 If no placement options are allowed, use the string
15702 \begin_layout Description
15703 \begin_inset Flex Code
15706 \begin_layout Plain Layout
15713 \begin_inset Flex Code
15716 \begin_layout Plain Layout
15725 \begin_inset space \thinspace{}
15731 \begin_inset Flex Code
15734 \begin_layout Plain Layout
15744 ] Defines whether the float allows to be rotated via the \SpecialChar LaTeX
15751 \begin_inset Flex Code
15754 \begin_layout Plain Layout
15760 if the float does not support this feature.
15763 \begin_layout Description
15764 \begin_inset Flex Code
15767 \begin_layout Plain Layout
15774 \begin_inset Flex Code
15777 \begin_layout Plain Layout
15786 \begin_inset space \thinspace{}
15792 \begin_inset Flex Code
15795 \begin_layout Plain Layout
15805 ] Defines whether the float has a starred variant that spans columns in
15806 a two column paragraph.
15808 \begin_inset Flex Code
15811 \begin_layout Plain Layout
15817 if the float does not support this feature.
15820 \begin_layout Description
15821 \begin_inset Flex Code
15824 \begin_layout Plain Layout
15831 \begin_inset Flex Code
15834 \begin_layout Plain Layout
15841 \begin_inset Quotes erd
15845 \begin_inset Quotes erd
15848 ] The file name extension of an auxiliary file for the list of figures (or
15851 writes the captions to this file.
15854 \begin_layout Description
15855 \begin_inset Flex Code
15858 \begin_layout Plain Layout
15865 \begin_inset Flex Code
15868 \begin_layout Plain Layout
15875 \begin_inset Quotes erd
15879 \begin_inset Quotes erd
15882 ] The string that will be used in the menus and also for the caption.
15883 This is translated to the current language if babel is used.
15886 \begin_layout Description
15887 \begin_inset Flex Code
15890 \begin_layout Plain Layout
15896 These tags control the XHTML output.
15898 \begin_inset CommandInset ref
15900 reference "sec:Tags-for-XHTML"
15907 \begin_layout Description
15908 \begin_inset Flex Code
15911 \begin_layout Plain Layout
15920 \begin_inset Flex Code
15923 \begin_layout Plain Layout
15932 \begin_inset space \thinspace{}
15936 \begin_inset Flex Code
15939 \begin_layout Plain Layout
15945 ] Indicates whether the float is already defined in the document class or
15946 if instead the \SpecialChar LaTeX
15948 \begin_inset Flex Code
15951 \begin_layout Plain Layout
15957 needs to be loaded to define it on-the-fly.
15959 \begin_inset Flex Code
15962 \begin_layout Plain Layout
15969 \begin_inset Flex Code
15972 \begin_layout Plain Layout
15979 It should be set to
15980 \begin_inset Flex Code
15983 \begin_layout Plain Layout
15989 if the float is already defined by the \SpecialChar LaTeX
15993 \begin_layout Description
15994 \begin_inset Flex Code
15997 \begin_layout Plain Layout
16004 \begin_inset Flex Code
16007 \begin_layout Plain Layout
16014 \begin_inset Quotes erd
16018 \begin_inset Quotes erd
16021 ] The command used to generate a list of floats of this type; the leading
16030 \begin_inset Flex Code
16033 \begin_layout Plain Layout
16039 is false, since there is no standard way to generate this command.
16041 \begin_inset Flex Code
16044 \begin_layout Plain Layout
16050 is true, since in that case there is a standard way to define the command.
16053 \begin_layout Description
16054 \begin_inset Flex Code
16057 \begin_layout Plain Layout
16064 \begin_inset Flex Code
16067 \begin_layout Plain Layout
16074 \begin_inset Quotes erd
16078 \begin_inset Quotes erd
16081 ] A title for a list of floats of this kind (list of figures, tables, or
16083 It is used for the screen label within \SpecialChar LyX
16084 , it is used by \SpecialChar LaTeX
16086 it is used as the title in the XHTML output.
16087 It will be translated to the document language.
16090 \begin_layout Description
16091 \begin_inset Flex Code
16094 \begin_layout Plain Layout
16101 \begin_inset Flex Code
16104 \begin_layout Plain Layout
16111 \begin_inset Quotes erd
16115 \begin_inset Quotes erd
16118 ] This (optional) argument determines whether floats of this class will
16119 be numbered within some sectional unit of the document.
16121 \begin_inset Flex Code
16124 \begin_layout Plain Layout
16131 \begin_inset Quotes eld
16135 \begin_inset Flex Code
16138 \begin_layout Plain Layout
16145 \begin_inset Quotes erd
16148 , the floats will be numbered within chapters.
16152 \begin_layout Description
16153 \begin_inset Flex Code
16156 \begin_layout Plain Layout
16163 \begin_inset Flex Code
16166 \begin_layout Plain Layout
16173 \begin_inset Quotes erd
16177 \begin_inset Quotes erd
16180 ] The default placement for the given class of floats.
16181 The string should be as in standard \SpecialChar LaTeX
16183 \begin_inset Flex Code
16186 \begin_layout Plain Layout
16193 \begin_inset Flex Code
16196 \begin_layout Plain Layout
16203 \begin_inset Flex Code
16206 \begin_layout Plain Layout
16213 \begin_inset Flex Code
16216 \begin_layout Plain Layout
16222 for top, bottom, page, and here, respectively.
16226 \begin_layout Plain Layout
16227 Note that the order of these letters in the string is irrelevant, like in
16234 On top of that there is a new type,
16235 \begin_inset Flex Code
16238 \begin_layout Plain Layout
16244 , which does not really correspond to a float, since it means: put it
16245 \begin_inset Quotes eld
16249 \begin_inset Quotes erd
16253 Note however that the
16254 \begin_inset Flex Code
16257 \begin_layout Plain Layout
16263 specifier is special and, because of implementation details, cannot be
16264 used in non-built in float types.
16265 If you do not understand what this means, just use
16266 \begin_inset Quotes eld
16270 \begin_inset Flex Code
16273 \begin_layout Plain Layout
16280 \begin_inset Quotes erd
16286 \begin_layout Description
16287 \begin_inset Flex Code
16290 \begin_layout Plain Layout
16297 \begin_inset Flex Code
16300 \begin_layout Plain Layout
16306 ] The prefix to use when creating labels referring to floats of this type.
16307 This allows the use of formatted references.
16308 Note that you can remove any
16309 \begin_inset Flex Code
16312 \begin_layout Plain Layout
16318 set by a copied style by using the special value
16319 \begin_inset Quotes eld
16323 \begin_inset Quotes erd
16326 , which must be all caps.
16329 \begin_layout Description
16330 \begin_inset Flex Code
16333 \begin_layout Plain Layout
16340 \begin_inset Flex Code
16343 \begin_layout Plain Layout
16350 \begin_inset Quotes erd
16354 \begin_inset Quotes erd
16357 ] The style used when defining the float using
16358 \begin_inset Flex Code
16361 \begin_layout Plain Layout
16372 \begin_layout Description
16373 \begin_inset Flex Code
16376 \begin_layout Plain Layout
16383 \begin_inset Flex Code
16386 \begin_layout Plain Layout
16393 \begin_inset Quotes erd
16397 \begin_inset Quotes erd
16401 \begin_inset Quotes eld
16405 \begin_inset Quotes erd
16408 of the new class of floats, like program or algorithm.
16409 After the appropriate
16410 \begin_inset Flex Code
16413 \begin_layout Plain Layout
16422 \begin_inset Flex Code
16425 \begin_layout Plain Layout
16434 \begin_inset Flex Code
16437 \begin_layout Plain Layout
16448 \begin_layout Description
16449 \begin_inset Flex Code
16452 \begin_layout Plain Layout
16459 \begin_inset Flex Code
16462 \begin_layout Plain Layout
16469 \begin_inset space \thinspace{}
16473 \begin_inset Flex Code
16476 \begin_layout Plain Layout
16484 ] Specifies whether this float is defined using the \SpecialChar LaTeX
16486 \begin_inset Flex Code
16489 \begin_layout Plain Layout
16495 , either by the class file, another package or on-the-fly by \SpecialChar LyX
16499 \begin_layout Standard
16500 Note that defining a float with type
16501 \begin_inset Flex Code
16504 \begin_layout Plain Layout
16512 automatically defines the corresponding counter with name
16513 \begin_inset Flex Code
16516 \begin_layout Plain Layout
16527 \begin_layout Subsection
16528 Flex insets and InsetLayout
16529 \begin_inset CommandInset label
16531 name "subsec:Flex-insets-and"
16538 \begin_layout Standard
16539 Flex insets come in three different kinds:
16542 \begin_layout Itemize
16544 \begin_inset Flex Code
16547 \begin_layout Plain Layout
16553 ): These define semantic markup corresponding to such \SpecialChar LaTeX
16555 \begin_inset Flex Code
16558 \begin_layout Plain Layout
16567 \begin_inset Flex Code
16570 \begin_layout Plain Layout
16581 \begin_layout Itemize
16583 \begin_inset Flex Code
16586 \begin_layout Plain Layout
16592 ): These can be used to define custom collapsible insets, similar to \SpecialChar TeX
16594 footnote, and the like.
16595 An obvious example is an endnote inset, which is defined in the
16596 \begin_inset Flex Code
16599 \begin_layout Plain Layout
16608 \begin_layout Itemize
16610 \begin_inset Flex Code
16613 \begin_layout Plain Layout
16619 ): For use with DocBook classes.
16622 \begin_layout Standard
16623 Flex insets are defined using the
16624 \begin_inset Flex Code
16627 \begin_layout Plain Layout
16633 tag, which shall be explained in a moment.
16636 \begin_layout Standard
16638 \begin_inset Flex Code
16641 \begin_layout Plain Layout
16647 tag also serves another function: It can be used to customize the general
16648 layout of many different types of insets.
16650 \begin_inset Flex Code
16653 \begin_layout Plain Layout
16659 can be used to customize the layout parameters for footnotes, marginal
16660 notes, note insets, \SpecialChar TeX
16661 code (ERT) insets, branches, listings, indexes, boxes,
16662 tables, algorithms, URLs, and captions, as well as to define Flex insets.
16665 \begin_layout Standard
16667 \begin_inset Flex Code
16670 \begin_layout Plain Layout
16676 definition must begin with a line of the form:
16679 \begin_layout LyX-Code
16683 \begin_layout Standard
16685 \begin_inset Flex Code
16688 \begin_layout Plain Layout
16694 indicates the inset whose layout is being defined, and here there are four
16698 \begin_layout Enumerate
16699 The layout for a pre-existing inset is being modified.
16700 In this case, can be
16701 \begin_inset Flex Code
16704 \begin_layout Plain Layout
16710 any one of the following:
16711 \begin_inset Flex Code
16714 \begin_layout Plain Layout
16721 \begin_inset Flex Code
16724 \begin_layout Plain Layout
16731 \begin_inset Flex Code
16734 \begin_layout Plain Layout
16741 \begin_inset Flex Code
16744 \begin_layout Plain Layout
16751 \begin_inset Flex Code
16754 \begin_layout Plain Layout
16761 \begin_inset Flex Code
16764 \begin_layout Plain Layout
16771 \begin_inset Flex Code
16774 \begin_layout Plain Layout
16781 \begin_inset Flex Code
16784 \begin_layout Plain Layout
16791 \begin_inset Flex Code
16794 \begin_layout Plain Layout
16801 \begin_inset Flex Code
16804 \begin_layout Plain Layout
16811 \begin_inset Flex Code
16814 \begin_layout Plain Layout
16821 \begin_inset Flex Code
16824 \begin_layout Plain Layout
16831 \begin_inset Flex Code
16834 \begin_layout Plain Layout
16841 \begin_inset Flex Code
16844 \begin_layout Plain Layout
16851 \begin_inset Flex Code
16854 \begin_layout Plain Layout
16861 \begin_inset Flex Code
16864 \begin_layout Plain Layout
16871 \begin_inset Flex Code
16874 \begin_layout Plain Layout
16881 \begin_inset Flex Code
16884 \begin_layout Plain Layout
16891 \begin_inset Flex Code
16894 \begin_layout Plain Layout
16901 \begin_inset Flex Code
16904 \begin_layout Plain Layout
16913 \begin_layout Enumerate
16914 The layout for a Flex inset is being defined.
16916 \begin_inset Flex Code
16919 \begin_layout Plain Layout
16925 must be of the form
16926 \begin_inset Quotes eld
16930 \begin_inset Flex Code
16933 \begin_layout Plain Layout
16940 \begin_inset Quotes erd
16944 \begin_inset Flex Code
16947 \begin_layout Plain Layout
16953 may be be any valid identifier not used by a pre-existing Flex inset.
16954 The identifier may include spaces, but in that case the whole thing must
16955 be wrapped in quotes.
16956 Note that the definition of a flex inset
16961 \begin_inset Flex Code
16964 \begin_layout Plain Layout
16970 entry, declaring which type of inset it defines.
16973 \begin_layout Enumerate
16974 The layout for user specific branch is being defined.
16976 \begin_inset Flex Code
16979 \begin_layout Plain Layout
16985 must be of the form
16986 \begin_inset Quotes eld
16990 \begin_inset Flex Code
16993 \begin_layout Plain Layout
17000 \begin_inset Quotes erd
17004 \begin_inset Flex Code
17007 \begin_layout Plain Layout
17013 may be be any valid identifier of branch defined in user's document.
17014 The identifier may include spaces, but in that case the whole thing must
17015 be wrapped in quotes.
17016 The main purpose of this feature is to allow \SpecialChar LaTeX
17017 wrapping around specific
17018 branches as user needs.
17021 \begin_layout Enumerate
17022 The layout of a user (or class) specific caption is being defined.
17024 \begin_inset Flex Code
17027 \begin_layout Plain Layout
17033 must be of the form
17034 \begin_inset Quotes eld
17038 \begin_inset Flex Code
17041 \begin_layout Plain Layout
17048 \begin_inset Quotes erd
17052 \begin_inset Flex Code
17055 \begin_layout Plain Layout
17061 specifies the name of the caption as it appears in the menu.
17062 Have a look at the standard caption (
17063 \begin_inset Flex Code
17066 \begin_layout Plain Layout
17072 ), the specific captions of the KOMA-Script classes (
17073 \begin_inset Flex Code
17076 \begin_layout Plain Layout
17083 \begin_inset Flex Code
17086 \begin_layout Plain Layout
17095 \begin_inset space ~
17101 \begin_inset Flex Code
17104 \begin_layout Plain Layout
17110 ) for applications.
17113 \begin_layout Standard
17115 \begin_inset Flex Code
17118 \begin_layout Plain Layout
17124 definition can contain the following entries:
17127 \begin_layout Description
17128 \begin_inset Flex Code
17131 \begin_layout Plain Layout
17138 \begin_inset Flex Code
17141 \begin_layout Plain Layout
17147 ] Defines argument number of a command\SpecialChar breakableslash
17148 environment associated with the current
17150 The definition must end with
17151 \begin_inset Flex Code
17154 \begin_layout Plain Layout
17162 \begin_inset CommandInset ref
17164 reference "subsec:Paragraph-Styles"
17171 \begin_layout Description
17172 \begin_inset Flex Code
17175 \begin_layout Plain Layout
17181 Preamble for changing language commands; see
17182 \begin_inset CommandInset ref
17184 reference "subsec:I18n"
17191 \begin_layout Description
17192 \begin_inset Flex Code
17195 \begin_layout Plain Layout
17202 \begin_inset Flex Code
17205 \begin_layout Plain Layout
17211 ] The color for the inset's background.
17213 \begin_inset CommandInset ref
17215 reference "chap:Names-of-colors"
17219 for a list of the available color names.
17222 \begin_layout Description
17223 \begin_inset Flex Code
17226 \begin_layout Plain Layout
17233 \begin_inset Flex Code
17236 \begin_layout Plain Layout
17245 \begin_inset space \thinspace{}
17249 \begin_inset Flex Code
17252 \begin_layout Plain Layout
17258 ] Whether to use the content of the inset as the label, when the inset is
17263 \begin_layout Description
17264 \begin_inset Flex Code
17267 \begin_layout Plain Layout
17274 \begin_inset Flex Code
17277 \begin_layout Plain Layout
17283 ] As with paragraph styles, see
17284 \begin_inset CommandInset ref
17286 reference "subsec:Paragraph-Styles"
17291 Note that you need to specify the complete type, e.
17292 \begin_inset space \thinspace{}
17296 \begin_inset space ~
17300 \begin_inset Flex Code
17303 \begin_layout Plain Layout
17304 CopyStyle Flex:<name>
17312 \begin_layout Description
17313 \begin_inset Flex Code
17316 \begin_layout Plain Layout
17323 \begin_inset Flex Code
17326 \begin_layout Plain Layout
17335 \begin_inset space \thinspace{}
17339 \begin_inset Flex Code
17342 \begin_layout Plain Layout
17348 ] Indicates whether the user may employ the Paragraph Settings dialog to
17349 customize the paragraph.
17352 \begin_layout Description
17353 \begin_inset Flex Code
17356 \begin_layout Plain Layout
17363 \begin_inset Flex Code
17366 \begin_layout Plain Layout
17373 \begin_inset Flex Code
17376 \begin_layout Plain Layout
17383 \begin_inset Flex Code
17386 \begin_layout Plain Layout
17392 , describing the rendering style used for the inset's frame and buttons.
17393 Footnotes generally use
17394 \begin_inset Flex Code
17397 \begin_layout Plain Layout
17403 , ERT insets generally
17404 \begin_inset Flex Code
17407 \begin_layout Plain Layout
17413 , and character styles
17414 \begin_inset Flex Code
17417 \begin_layout Plain Layout
17426 \begin_layout Description
17427 \begin_inset Flex Code
17430 \begin_layout Plain Layout
17437 \begin_inset Flex Code
17440 \begin_layout Plain Layout
17449 \begin_inset space \thinspace{}
17455 \begin_inset Flex Code
17458 \begin_layout Plain Layout
17467 \begin_inset Flex Code
17470 \begin_layout Plain Layout
17477 \begin_inset Flex Code
17480 \begin_layout Plain Layout
17487 Indicates whether the environment will stand on its own in the output or
17488 will appear inline with the surrounding text.
17489 If set to false, it is supposed that the \SpecialChar LaTeX
17490 environment ignores white space
17491 (including one newline character) after the
17492 \begin_inset Flex Code
17495 \begin_layout Plain Layout
17508 \begin_inset Flex Code
17511 \begin_layout Plain Layout
17527 \begin_layout Description
17528 \begin_inset Flex Code
17531 \begin_layout Plain Layout
17537 Required at the end of the
17538 \begin_inset Flex Code
17541 \begin_layout Plain Layout
17550 \begin_layout Description
17551 \begin_inset Flex Code
17554 \begin_layout Plain Layout
17560 The font used for both the text body
17566 \begin_inset CommandInset ref
17568 reference "subsec:Font-description"
17573 Note that defining this font automatically defines the
17574 \begin_inset Flex Code
17577 \begin_layout Plain Layout
17583 to the same value, so define this first and define
17584 \begin_inset Flex Code
17587 \begin_layout Plain Layout
17593 later if you want them to be different.
17596 \begin_layout Description
17597 \begin_inset Flex Code
17600 \begin_layout Plain Layout
17601 FixedWidthPreambleEncoding
17607 \begin_inset Flex Code
17610 \begin_layout Plain Layout
17619 \begin_inset space \thinspace{}
17623 \begin_inset Flex Code
17626 \begin_layout Plain Layout
17632 ] Force a fixed width encoding for the translated contents of
17633 \begin_inset Flex Code
17636 \begin_layout Plain Layout
17643 \begin_inset Flex Code
17646 \begin_layout Plain Layout
17652 code generated by this layout.
17653 This is needed for special \SpecialChar LaTeX
17658 that do not work with variable width encodings such as
17663 This setting is ignored if fully Unicode aware \SpecialChar LaTeX
17664 backends such as Xe\SpecialChar TeX
17666 Lua\SpecialChar TeX
17670 \begin_layout Description
17671 \begin_inset Flex Code
17674 \begin_layout Plain Layout
17675 ForceLocalFontSwitch
17681 \begin_inset Flex Code
17684 \begin_layout Plain Layout
17693 \begin_inset space \thinspace{}
17697 \begin_inset Flex Code
17700 \begin_layout Plain Layout
17706 ] When using babel, always use a local font switch (
17707 \begin_inset Flex Code
17710 \begin_layout Plain Layout
17718 ), never a global one (such as
17719 \begin_inset Flex Code
17722 \begin_layout Plain Layout
17733 \begin_layout Description
17734 \begin_inset Flex Code
17737 \begin_layout Plain Layout
17744 \begin_inset Flex Code
17747 \begin_layout Plain Layout
17756 \begin_inset space \thinspace{}
17760 \begin_inset Flex Code
17763 \begin_layout Plain Layout
17770 \begin_inset Quotes eld
17774 \begin_inset Quotes erd
17777 language, leading to Left-to-Right (Latin) output, e.
17778 \begin_inset space \thinspace{}
17782 \begin_inset space \space{}
17785 in \SpecialChar TeX
17790 \begin_layout Description
17791 \begin_inset Flex Code
17794 \begin_layout Plain Layout
17801 \begin_inset Flex Code
17804 \begin_layout Plain Layout
17813 \begin_inset space \thinspace{}
17817 \begin_inset Flex Code
17820 \begin_layout Plain Layout
17826 ] Force a a line break in the \SpecialChar LaTeX
17827 output before the inset starts and after
17829 This assures the inset itself is output on its own lines, for parsing purposes.
17832 \begin_layout Description
17833 \begin_inset Flex Code
17836 \begin_layout Plain Layout
17843 \begin_inset Flex Code
17846 \begin_layout Plain Layout
17855 \begin_inset space \thinspace{}
17859 \begin_inset Flex Code
17862 \begin_layout Plain Layout
17868 ] Indicates whether the
17869 \begin_inset Flex Code
17872 \begin_layout Plain Layout
17878 should be used or, instead, the user can change the paragraph style used
17883 \begin_layout Description
17884 \begin_inset Flex Code
17887 \begin_layout Plain Layout
17894 \begin_inset Flex Code
17897 \begin_layout Plain Layout
17906 \begin_inset space \thinspace{}
17910 \begin_inset Flex Code
17913 \begin_layout Plain Layout
17919 ] As with paragraph styles, see
17920 \begin_inset CommandInset ref
17922 reference "subsec:Paragraph-Styles"
17929 \begin_layout Description
17930 \begin_inset Flex Code
17933 \begin_layout Plain Layout
17939 These tags control the XHTML output.
17941 \begin_inset CommandInset ref
17943 reference "sec:Tags-for-XHTML"
17950 \begin_layout Description
17951 \begin_inset Flex Code
17954 \begin_layout Plain Layout
17961 \begin_inset Flex Code
17964 \begin_layout Plain Layout
17973 \begin_inset space \thinspace{}
17977 \begin_inset Flex Code
17980 \begin_layout Plain Layout
17986 ] Whether to include the contents of this inset in the strings generated
17987 for the `Outline' pane.
17988 One would not, for example, want the content of a footnote in a section
17989 header to be included in the TOC displayed in the outline, but one would
17990 normally want the content of a character style displayed.
17991 Default is false: not to include.
17994 \begin_layout Description
17995 \begin_inset Flex Code
17998 \begin_layout Plain Layout
18007 \begin_inset Flex Code
18010 \begin_layout Plain Layout
18019 \begin_inset space \thinspace{}
18023 \begin_inset Flex Code
18026 \begin_layout Plain Layout
18032 ] As with paragraph styles, see
18033 \begin_inset CommandInset ref
18035 reference "subsec:Paragraph-Styles"
18042 \begin_layout Description
18043 \begin_inset Flex Code
18046 \begin_layout Plain Layout
18052 The font used for the label.
18054 \begin_inset CommandInset ref
18056 reference "subsec:Font-description"
18061 Note that this definition can never appear before
18062 \begin_inset Flex Code
18065 \begin_layout Plain Layout
18071 , lest it be ineffective.
18074 \begin_layout Description
18075 \begin_inset Flex Code
18078 \begin_layout Plain Layout
18085 \begin_inset Flex Code
18088 \begin_layout Plain Layout
18095 \begin_inset Quotes erd
18099 \begin_inset Quotes erd
18102 ] What will be displayed on the button or elsewhere as the inset label.
18104 \begin_inset Flex Code
18107 \begin_layout Plain Layout
18115 \begin_inset Flex Code
18118 \begin_layout Plain Layout
18124 ) modify this label on the fly.
18127 \begin_layout Description
18128 \begin_inset Flex Code
18131 \begin_layout Plain Layout
18137 Language dependent preamble; see
18138 \begin_inset CommandInset ref
18140 reference "subsec:I18n"
18147 \begin_layout Description
18148 \begin_inset Flex Code
18151 \begin_layout Plain Layout
18158 \begin_inset Flex Code
18161 \begin_layout Plain Layout
18167 ] The name of the corresponding \SpecialChar LaTeX
18169 Either the environment or command name.
18172 \begin_layout Description
18173 \begin_inset Flex Code
18176 \begin_layout Plain Layout
18183 \begin_inset Flex Code
18186 \begin_layout Plain Layout
18192 ] The optional parameter for the corresponding
18193 \begin_inset Flex Code
18196 \begin_layout Plain Layout
18202 stuff, including possible bracket pairs like
18203 \begin_inset Flex Code
18206 \begin_layout Plain Layout
18213 This parameter cannot be changed from within \SpecialChar LyX
18215 \begin_inset Flex Code
18218 \begin_layout Plain Layout
18224 for customizable parameters).
18225 It will be output as is after all \SpecialChar LaTeX
18227 \begin_inset Flex Code
18230 \begin_layout Plain Layout
18239 \begin_layout Description
18240 \begin_inset Flex Code
18243 \begin_layout Plain Layout
18250 \begin_inset Flex Code
18253 \begin_layout Plain Layout
18254 Command, Environment, None
18259 ] How the style should be translated into \SpecialChar LaTeX
18264 \begin_layout Plain Layout
18265 \begin_inset Flex Code
18268 \begin_layout Plain Layout
18274 is perhaps a bit misleading, since these rules apply to SGML classes too.
18275 Visit the SGML class files for specific examples.
18281 \begin_inset Separator latexpar
18288 \begin_layout Description
18289 \begin_inset Flex Code
18292 \begin_layout Plain Layout
18298 means nothing special
18301 \begin_layout Description
18302 \begin_inset Flex Code
18305 \begin_layout Plain Layout
18312 \begin_inset Flex Code
18315 \begin_layout Plain Layout
18322 {\SpecialChar ldots
18331 \begin_layout Description
18332 \begin_inset Flex Code
18335 \begin_layout Plain Layout
18342 \begin_inset Flex Code
18345 \begin_layout Plain Layout
18352 }\SpecialChar ldots
18367 \begin_layout Standard
18368 Putting the last few things together, the \SpecialChar LaTeX
18369 output will be either:
18372 \begin_layout LyX-Code
18375 LatexName[LatexParam]{\SpecialChar ldots
18379 \begin_layout Standard
18383 \begin_layout LyX-Code
18386 begin{LatexName}[LatexParam] \SpecialChar ldots
18392 \begin_layout Standard
18393 depending upon the \SpecialChar LaTeX
18398 \begin_layout Description
18399 \begin_inset Flex Code
18402 \begin_layout Plain Layout
18409 \begin_inset Flex Code
18412 \begin_layout Plain Layout
18418 ] A string that is put at the beginning of the layout content.
18419 A line break in the output can be indicated by
18420 \begin_inset Flex Code
18423 \begin_layout Plain Layout
18432 \begin_layout Description
18433 \begin_inset Flex Code
18436 \begin_layout Plain Layout
18443 \begin_inset Flex Code
18446 \begin_layout Plain Layout
18453 \begin_inset Flex Code
18456 \begin_layout Plain Layout
18463 \begin_inset Flex Code
18466 \begin_layout Plain Layout
18473 \begin_inset Flex Code
18476 \begin_layout Plain Layout
18482 (indicating a dummy definition ending definitions of charstyles, etc).
18483 This entry is required in and is only meaningful for Flex insets.
18484 Among other things, it determines on which menu this inset will appear.
18486 \begin_inset Flex Code
18489 \begin_layout Plain Layout
18496 \begin_inset Flex Code
18499 \begin_layout Plain Layout
18505 will automatically set
18506 \begin_inset Flex Code
18509 \begin_layout Plain Layout
18516 \change_inserted 424524441 1466537871
18518 \begin_inset Flex Code
18521 \begin_layout Plain Layout
18523 \change_inserted 424524441 1466537871
18533 \begin_inset Flex Code
18536 \begin_layout Plain Layout
18543 \change_inserted 424524441 1466537883
18545 \begin_inset Flex Code
18548 \begin_layout Plain Layout
18550 \change_inserted 424524441 1466537883
18559 \begin_inset Flex Code
18562 \begin_layout Plain Layout
18568 insets by setting it
18573 \begin_inset Flex Code
18576 \begin_layout Plain Layout
18586 \begin_layout Description
18587 \begin_inset Flex Code
18590 \begin_layout Plain Layout
18597 \begin_inset Flex Code
18600 \begin_layout Plain Layout
18609 \begin_inset space \thinspace{}
18613 \begin_inset Flex Code
18616 \begin_layout Plain Layout
18622 ] Whether multiple paragraphs are permitted in this inset.
18624 \begin_inset Flex Code
18627 \begin_layout Plain Layout
18633 to the same value and
18634 \begin_inset Flex Code
18637 \begin_layout Plain Layout
18643 to the opposite value.
18644 These can be reset to other values, if they are used
18649 \begin_inset Flex Code
18652 \begin_layout Plain Layout
18662 \begin_layout Description
18663 \begin_inset Flex Code
18666 \begin_layout Plain Layout
18673 \begin_inset Flex Code
18676 \begin_layout Plain Layout
18685 \begin_inset space \thinspace{}
18689 \begin_inset Flex Code
18692 \begin_layout Plain Layout
18698 ] Whether fragile commands in this inset should be
18699 \begin_inset Flex Code
18702 \begin_layout Plain Layout
18715 whether the command should itself be protected.) Default is false.
18718 \begin_layout Description
18719 \begin_inset Flex Code
18722 \begin_layout Plain Layout
18729 \begin_inset Flex Code
18732 \begin_layout Plain Layout
18738 ] Deletes an existing
18739 \begin_inset Flex Code
18742 \begin_layout Plain Layout
18751 \begin_layout Description
18752 \begin_inset Flex Code
18755 \begin_layout Plain Layout
18762 \begin_inset Flex Code
18765 \begin_layout Plain Layout
18772 \begin_inset Flex Code
18775 \begin_layout Plain Layout
18781 that has replaced this
18782 \begin_inset Flex Code
18785 \begin_layout Plain Layout
18792 This is used to rename an
18793 \begin_inset Flex Code
18796 \begin_layout Plain Layout
18802 , while keeping backward compatibility.
18805 \begin_layout Description
18806 \begin_inset Flex Code
18809 \begin_layout Plain Layout
18816 \begin_inset Flex Code
18819 \begin_layout Plain Layout
18828 \begin_inset space \thinspace{}
18832 \begin_inset Flex Code
18835 \begin_layout Plain Layout
18841 ] As with paragraph styles, see
18842 \begin_inset CommandInset ref
18844 reference "subsec:Paragraph-Styles"
18852 \begin_layout Description
18853 \begin_inset Flex Code
18856 \begin_layout Plain Layout
18863 \begin_inset Flex Code
18866 \begin_layout Plain Layout
18875 \begin_inset space \thinspace{}
18879 \begin_inset Flex Code
18882 \begin_layout Plain Layout
18888 ] As with paragraph styles, see
18889 \begin_inset CommandInset ref
18891 reference "subsec:Paragraph-Styles"
18899 \begin_layout Description
18900 \begin_inset Flex Code
18903 \begin_layout Plain Layout
18909 As with paragraph styles, see
18910 \begin_inset CommandInset ref
18912 reference "subsec:Paragraph-Styles"
18919 \begin_layout Description
18920 \begin_inset Flex Code
18923 \begin_layout Plain Layout
18930 \begin_inset Flex Code
18933 \begin_layout Plain Layout
18939 ] The prefix to use when creating labels referring to insets of this type.
18940 This allows the use of formatted references.
18943 \begin_layout Description
18944 \begin_inset Flex Code
18947 \begin_layout Plain Layout
18954 \begin_inset Flex Code
18957 \begin_layout Plain Layout
18963 ] As with paragraph styles, see
18964 \begin_inset CommandInset ref
18966 reference "subsec:Paragraph-Styles"
18973 \begin_layout Description
18974 \begin_inset Flex Code
18977 \begin_layout Plain Layout
18984 \begin_inset Flex Code
18987 \begin_layout Plain Layout
18996 \begin_inset space \thinspace{}
19000 \begin_inset Flex Code
19003 \begin_layout Plain Layout
19009 ] Resets the \SpecialChar LaTeX
19010 arguments of this layout (as defined via the
19011 \begin_inset Flex Code
19014 \begin_layout Plain Layout
19021 This is useful if you have copied a style via
19022 \begin_inset Flex Code
19025 \begin_layout Plain Layout
19031 , but you do not want to inherit its (required and optional) arguments.
19034 \begin_layout Description
19035 \begin_inset Flex Code
19038 \begin_layout Plain Layout
19045 \begin_inset Flex Code
19048 \begin_layout Plain Layout
19055 \begin_inset space \thinspace{}
19059 \begin_inset Flex Code
19062 \begin_layout Plain Layout
19070 ] Whether this inset should use the font of its surrounding environment
19072 Default is false: use the font of the surrounding environment.
19075 \begin_layout Description
19076 \begin_inset Flex Code
19079 \begin_layout Plain Layout
19086 \begin_inset Flex Code
19089 \begin_layout Plain Layout
19095 ] A string that is put at the end of the layout content.
19096 A line break in the output can be indicated by
19097 \begin_inset Flex Code
19100 \begin_layout Plain Layout
19109 \begin_layout Description
19110 \begin_inset Flex Code
19113 \begin_layout Plain Layout
19120 \begin_inset Flex Code
19123 \begin_layout Plain Layout
19130 \begin_inset space \thinspace{}
19134 \begin_inset Flex Code
19137 \begin_layout Plain Layout
19145 ] Allow spell-checking the contents of this inset.
19149 \begin_layout Subsection
19151 \begin_inset CommandInset label
19153 name "subsec:Counters"
19160 \begin_layout Standard
19161 It is necessary to define the counters (
19162 \begin_inset Flex Noun
19165 \begin_layout Plain Layout
19172 \begin_inset Flex Noun
19175 \begin_layout Plain Layout
19181 , \SpecialChar ldots
19182 ) in the text class itself.
19183 The standard counters are defined in the file
19184 \begin_inset Flex Code
19187 \begin_layout Plain Layout
19193 , so you may have to do no more than add
19196 \begin_layout LyX-Code
19197 Input stdcounters.inc
19200 \begin_layout Standard
19201 to your layout file to get them to work.
19202 But if you want to define custom counters, then you can do so.
19203 The counter declaration must begin with:
19206 \begin_layout LyX-Code
19207 Counter CounterName
19210 \begin_layout Standard
19212 \begin_inset Flex Code
19215 \begin_layout Plain Layout
19221 ' is replaced by the name of the counter.
19222 And it must end with
19223 \begin_inset Quotes eld
19227 \begin_inset Flex Code
19230 \begin_layout Plain Layout
19237 \begin_inset Quotes erd
19241 The following parameters can also be used:
19244 \begin_layout Description
19245 \begin_inset Flex Code
19248 \begin_layout Plain Layout
19255 \begin_inset Flex Code
19258 \begin_layout Plain Layout
19264 ] Sets the initial value for the counter, to which it will be reset whenever
19266 Normally, one will want the default, 1.
19269 \begin_layout Description
19270 \begin_inset Flex Code
19273 \begin_layout Plain Layout
19280 \begin_inset Flex Code
19283 \begin_layout Plain Layout
19290 \begin_inset Quotes erd
19294 \begin_inset Quotes erd
19297 ] When defined, this string defines how the counter is displayed.
19298 Setting this value sets
19299 \begin_inset Flex Code
19302 \begin_layout Plain Layout
19303 LabelStringAppendix
19309 The following special constructs can be used in the string:
19310 \begin_inset Separator latexpar
19317 \begin_layout Itemize
19318 \begin_inset Flex Code
19321 \begin_layout Plain Layout
19329 will be replaced by the expansion of the
19330 \begin_inset Flex Code
19333 \begin_layout Plain Layout
19340 \begin_inset Flex Code
19343 \begin_layout Plain Layout
19344 LabelStringAppendix
19350 \begin_inset Flex Code
19353 \begin_layout Plain Layout
19363 \begin_layout Itemize
19364 counter values can be expressed using \SpecialChar LaTeX
19366 \begin_inset Newline newline
19370 \begin_inset Flex Code
19373 \begin_layout Plain Layout
19390 \begin_inset Flex Code
19393 \begin_layout Plain Layout
19405 \begin_layout Plain Layout
19415 Actually, the situation is a bit more complicated: any
19434 other than those described below will produce arabic numerals.
19435 It would not be surprising to see this change in the future.
19441 \begin_inset Flex Code
19444 \begin_layout Plain Layout
19450 : 1, 2, 3,\SpecialChar ldots
19452 \begin_inset Flex Code
19455 \begin_layout Plain Layout
19461 for lower-case letters: a, b, c, \SpecialChar ldots
19463 \begin_inset Flex Code
19466 \begin_layout Plain Layout
19472 for upper-case letters: A, B, C, \SpecialChar ldots
19474 \begin_inset Flex Code
19477 \begin_layout Plain Layout
19483 for lower-case roman numerals: i, ii, iii, \SpecialChar ldots
19485 \begin_inset Flex Code
19488 \begin_layout Plain Layout
19494 for upper-case roman numerals: I, II, III\SpecialChar ldots
19496 \begin_inset Flex Code
19499 \begin_layout Plain Layout
19505 for hebrew numerals.
19509 \begin_layout Standard
19510 If LabelString is not defined, a default value is constructed as follows:
19511 if the counter has a master counter
19512 \begin_inset Flex Code
19515 \begin_layout Plain Layout
19522 \begin_inset Flex Code
19525 \begin_layout Plain Layout
19532 \begin_inset Newline newline
19536 \begin_inset Flex Code
19539 \begin_layout Plain Layout
19549 is used; otherwise the string
19550 \begin_inset Flex Code
19553 \begin_layout Plain Layout
19564 \begin_layout Description
19565 \begin_inset Flex Code
19568 \begin_layout Plain Layout
19569 LabelStringAppendix
19575 \begin_inset Flex Code
19578 \begin_layout Plain Layout
19585 \begin_inset Quotes erd
19589 \begin_inset Quotes erd
19593 \begin_inset Flex Code
19596 \begin_layout Plain Layout
19602 , but for use in the Appendix.
19605 \begin_layout Description
19606 \begin_inset Flex Code
19609 \begin_layout Plain Layout
19616 \begin_inset Flex Code
19619 \begin_layout Plain Layout
19626 \begin_inset Quotes erd
19630 \begin_inset Quotes erd
19633 ] A format for use with formatted references to this counter.
19634 For example, one might want to have references to section numbers appear
19636 \begin_inset Quotes eld
19640 \begin_inset Quotes erd
19644 The string should contain
19645 \begin_inset Quotes eld
19649 \begin_inset Quotes erd
19653 This will be replaced by the counter number itself.
19654 So, for sections, it would be: Section ##.
19657 \begin_layout Description
19658 \begin_inset Flex Code
19661 \begin_layout Plain Layout
19668 \begin_inset Flex Code
19671 \begin_layout Plain Layout
19678 \begin_inset Quotes erd
19682 \begin_inset Quotes erd
19685 ] If this is set to the name of another counter, the present counter will
19686 be reset every time the other one is increased.
19688 \begin_inset Flex Code
19691 \begin_layout Plain Layout
19698 \begin_inset Flex Code
19701 \begin_layout Plain Layout
19710 \begin_layout Subsection
19712 \begin_inset CommandInset label
19714 name "subsec:Font-description"
19721 \begin_layout Standard
19722 A font description looks like this:
19725 \begin_layout LyX-Code
19739 \begin_layout LyX-Code
19743 \begin_layout LyX-Code
19747 \begin_layout Standard
19748 The following commands are available:
19751 \begin_layout Description
19752 \begin_inset Flex Code
19755 \begin_layout Plain Layout
19762 \begin_inset Flex Code
19765 \begin_layout Plain Layout
19774 \begin_inset Flex Code
19777 \begin_layout Plain Layout
19784 \begin_inset Flex Code
19787 \begin_layout Plain Layout
19794 \begin_inset Flex Code
19797 \begin_layout Plain Layout
19804 \begin_inset Flex Code
19807 \begin_layout Plain Layout
19814 \begin_inset Flex Code
19817 \begin_layout Plain Layout
19824 \begin_inset Flex Code
19827 \begin_layout Plain Layout
19834 \begin_inset Flex Code
19837 \begin_layout Plain Layout
19844 \begin_inset Flex Code
19847 \begin_layout Plain Layout
19854 \begin_inset Flex Code
19857 \begin_layout Plain Layout
19864 \begin_inset Flex Code
19867 \begin_layout Plain Layout
19874 \begin_inset Flex Code
19877 \begin_layout Plain Layout
19884 \begin_inset Flex Code
19887 \begin_layout Plain Layout
19894 \begin_inset Flex Code
19897 \begin_layout Plain Layout
19904 \begin_inset Flex Code
19907 \begin_layout Plain Layout
19914 \begin_inset Flex Code
19917 \begin_layout Plain Layout
19924 \begin_inset Flex Code
19927 \begin_layout Plain Layout
19934 \begin_inset Flex Code
19937 \begin_layout Plain Layout
19944 \begin_inset Flex Code
19947 \begin_layout Plain Layout
19954 \begin_inset Flex Code
19957 \begin_layout Plain Layout
19966 \begin_layout Description
19967 \begin_inset Flex Code
19970 \begin_layout Plain Layout
19977 \begin_inset Flex Code
19980 \begin_layout Plain Layout
19989 \begin_inset Flex Code
19992 \begin_layout Plain Layout
19999 \begin_inset Flex Code
20002 \begin_layout Plain Layout
20011 \begin_layout Description
20012 \begin_inset Flex Code
20015 \begin_layout Plain Layout
20022 \begin_inset Flex Code
20025 \begin_layout Plain Layout
20031 ] Valid arguments are:
20032 \begin_inset Flex Code
20035 \begin_layout Plain Layout
20042 \begin_inset Flex Code
20045 \begin_layout Plain Layout
20052 \begin_inset Flex Code
20055 \begin_layout Plain Layout
20062 \begin_inset Flex Code
20065 \begin_layout Plain Layout
20072 \begin_inset Flex Code
20075 \begin_layout Plain Layout
20082 \begin_inset Flex Code
20085 \begin_layout Plain Layout
20092 \begin_inset Flex Code
20095 \begin_layout Plain Layout
20102 \begin_inset Flex Code
20105 \begin_layout Plain Layout
20112 \begin_inset Flex Code
20115 \begin_layout Plain Layout
20122 \begin_inset Flex Code
20125 \begin_layout Plain Layout
20132 \begin_inset Flex Code
20135 \begin_layout Plain Layout
20142 \begin_inset Flex Code
20145 \begin_layout Plain Layout
20152 Each of these turns on or off the corresponding attribute.
20154 \begin_inset Flex Code
20157 \begin_layout Plain Layout
20163 turns on emphasis, and
20164 \begin_inset Flex Code
20167 \begin_layout Plain Layout
20175 \begin_inset Newline newline
20178 If the latter seems puzzling, remember that the font settings for the present
20179 context are generally inherited from the surrounding context.
20181 \begin_inset Flex Code
20184 \begin_layout Plain Layout
20190 would turn off the emphasis that was anyway in effect, say, in a theorem
20194 \begin_layout Description
20195 \begin_inset Flex Code
20198 \begin_layout Plain Layout
20205 \begin_inset Flex Code
20208 \begin_layout Plain Layout
20217 \begin_inset Flex Code
20220 \begin_layout Plain Layout
20229 \begin_layout Description
20230 \begin_inset Flex Code
20233 \begin_layout Plain Layout
20240 \begin_inset Flex Code
20243 \begin_layout Plain Layout
20252 \begin_inset Flex Code
20255 \begin_layout Plain Layout
20262 \begin_inset Flex Code
20265 \begin_layout Plain Layout
20272 \begin_inset Flex Code
20275 \begin_layout Plain Layout
20284 \begin_layout Description
20285 \begin_inset Flex Code
20288 \begin_layout Plain Layout
20295 \begin_inset Flex Code
20298 \begin_layout Plain Layout
20305 \begin_inset Flex Code
20308 \begin_layout Plain Layout
20315 \begin_inset Flex Code
20318 \begin_layout Plain Layout
20327 \begin_inset Flex Code
20330 \begin_layout Plain Layout
20337 \begin_inset Flex Code
20340 \begin_layout Plain Layout
20347 \begin_inset Flex Code
20350 \begin_layout Plain Layout
20357 \begin_inset Flex Code
20360 \begin_layout Plain Layout
20367 \begin_inset Flex Code
20370 \begin_layout Plain Layout
20379 \begin_layout Subsection
20380 \begin_inset CommandInset label
20382 name "subsec:Citation-format-description"
20386 Citation format description
20389 \begin_layout Standard
20391 \begin_inset Flex Code
20394 \begin_layout Plain Layout
20400 blocks are used to describe how bibliographic information should be displayed,
20401 both within \SpecialChar LyX
20402 itself (in the citation dialog and in tooltips, for example)
20403 and in XHTML output.
20404 Such a block might look like this:
20407 \begin_layout LyX-Code
20411 \begin_layout LyX-Code
20415 \begin_layout LyX-Code
20419 \begin_layout LyX-Code
20423 \begin_layout Standard
20424 The individual lines define how the bibliographic information associated
20425 with an article or book, respectively, is to be displayed, and such a definitio
20426 n can be given for any `entry type' that might be present in a Bib\SpecialChar TeX
20429 defines a default format in the source code that will be used if no specific
20430 definition has been given.
20432 predefines several formats in the file
20433 \begin_inset Flex Code
20436 \begin_layout Plain Layout
20442 , which is included in most of \SpecialChar LyX
20443 's document classes.
20446 \begin_layout Standard
20447 The definitions use a simple language that allows Bib\SpecialChar TeX
20448 keys to be replaced
20450 Keys should be enclosed in
20451 \begin_inset Flex Code
20454 \begin_layout Plain Layout
20461 \begin_inset Flex Code
20464 \begin_layout Plain Layout
20471 So a simple definition might look like this:
20474 \begin_layout LyX-Code
20476 \begin_inset Quotes eld
20480 \begin_inset Quotes erd
20486 \begin_layout Standard
20487 This would print the author, followed by a comma, followed by the title,
20488 in quotes, followed by a period.
20491 \begin_layout Standard
20492 Of course, sometimes you may want to print a key only if it exists.
20493 This can be done by using a conditional construction, such as:
20494 \begin_inset Flex Code
20497 \begin_layout Plain Layout
20499 \begin_inset space ~
20509 \begin_inset Flex Code
20512 \begin_layout Plain Layout
20518 key exists, then print
20519 \begin_inset Quotes eld
20523 \begin_inset space ~
20527 \begin_inset Quotes erd
20530 followed by the volume key.
20531 It is also possible to have an else clause in the conditional, such as:
20532 \begin_inset Newline newline
20536 \begin_inset Flex Code
20539 \begin_layout Plain Layout
20540 {%author%[[%author%]][[%editor%, ed.]]}
20546 \begin_inset Newline newline
20550 \begin_inset Flex Code
20553 \begin_layout Plain Layout
20559 key is printed if it exists; otherwise, the editor key is printed, followed
20561 \begin_inset Quotes eld
20565 \begin_inset space ~
20569 \begin_inset Quotes erd
20572 Note that the key is again enclosed in
20573 \begin_inset Flex Code
20576 \begin_layout Plain Layout
20582 signs; the entire conditional is enclosed in braces; and the if and else
20583 clauses are enclosed in double brackets,
20584 \begin_inset Quotes eld
20588 \begin_inset Flex Code
20591 \begin_layout Plain Layout
20598 \begin_inset Quotes eld
20602 \begin_inset Quotes eld
20606 \begin_inset Flex Code
20609 \begin_layout Plain Layout
20616 \begin_inset Quotes erd
20620 There must be no space between any of these.
20623 \begin_layout Standard
20624 There is one other piece of syntax available in definitions, which looks
20626 \begin_inset Flex Code
20629 \begin_layout Plain Layout
20636 This defines a piece of formatting information that is to be used when
20638 \begin_inset Quotes eld
20642 \begin_inset Quotes erd
20646 Obviously, we do not want to output HTML tags when writing plain text,
20647 so they should be wrapped in
20648 \begin_inset Quotes eld
20652 \begin_inset Quotes erd
20656 \begin_inset Quotes eld
20660 \begin_inset Quotes erd
20666 \begin_layout Standard
20667 Two special sorts of definitions are also possible in a
20668 \begin_inset Flex Code
20671 \begin_layout Plain Layout
20678 An example of the first would be:
20681 \begin_layout LyX-Code
20683 \begin_inset Quotes eld
20687 \begin_inset Quotes erd
20693 \begin_layout Standard
20694 This is an abbreviation, or macro, and it can be used by treating it as
20696 \begin_inset Flex Code
20699 \begin_layout Plain Layout
20708 \begin_inset Flex Code
20711 \begin_layout Plain Layout
20717 exactly as it would treat its definition.
20718 So, let us issue the obvious
20726 \begin_layout LyX-Code
20730 \begin_layout Standard
20731 or anything like it.
20733 shouldn't go into an infinite loop, but it may go into a long one before
20737 \begin_layout Standard
20738 The second sort of special definition might look like this:
20741 \begin_layout LyX-Code
20745 \begin_layout Standard
20746 This defines a translatable piece of text, which allows relevant parts of
20747 the bibliography to be translated.
20748 It can be included in a definition by treating it as a key:
20749 \begin_inset Flex Code
20752 \begin_layout Plain Layout
20759 Several of these are predefined in
20760 \begin_inset Flex Code
20763 \begin_layout Plain Layout
20770 Note that these are not macros, in the sense just defined.
20771 They will not be expanded.
20774 \begin_layout Standard
20775 So here then is an example that use all these features:
20776 \begin_inset VSpace defskip
20782 \begin_layout Standard
20786 !authoredit {%author%[[%author%, ]][[{%editor%[[%editor%, %_edtext%, ]]}]]}
20789 \begin_layout Standard
20790 \begin_inset VSpace defskip
20793 This defines a macro that prints the author, followed by a comma, if the
20795 \begin_inset Flex Code
20798 \begin_layout Plain Layout
20804 key is defined, or else prints the name of the editor, followed by the
20806 \begin_inset Flex Code
20809 \begin_layout Plain Layout
20815 or its translation (it is by default
20816 \begin_inset Quotes eld
20820 \begin_inset Quotes erd
20824 \begin_inset Flex Code
20827 \begin_layout Plain Layout
20834 Note that this is in fact defined in
20835 \begin_inset Flex Code
20838 \begin_layout Plain Layout
20844 , so you can use it in your own definitions, or re-definitions, if you load
20848 \begin_layout Section
20849 \begin_inset CommandInset label
20851 name "sec:Tags-for-XHTML"
20855 Tags for XHTML output
20858 \begin_layout Standard
20859 As with \SpecialChar LaTeX
20860 or DocBook, the format of \SpecialChar LyX
20861 's XHTML output is also controlled by
20862 layout information.
20863 In general, \SpecialChar LyX
20864 provides sensible defaults and, as mentioned earlier, it will
20865 even construct default CSS style rules from the other layout tags.
20866 For example, \SpecialChar LyX
20867 will attempt to use the information provided in the
20868 \begin_inset Flex Code
20871 \begin_layout Plain Layout
20877 declaration for the Chapter style to write CSS that will appropriately
20878 format chapter headings.
20881 \begin_layout Standard
20882 In many cases, then, you may not have to do anything at all to get acceptable
20883 XHTML output for your own environments, custom insets, and so forth.
20884 But in some cases you will, and so \SpecialChar LyX
20885 provides a number of layout tags that
20886 can be used to customize the XHTML and CSS that are generated.
20889 \begin_layout Standard
20890 Note that there are two tags,
20891 \begin_inset Flex Code
20894 \begin_layout Plain Layout
20901 \begin_inset Flex Code
20904 \begin_layout Plain Layout
20910 that may appear outside style and inset declarations.
20912 \begin_inset CommandInset ref
20914 reference "subsec:General-text-class"
20918 for details on these.
20921 \begin_layout Subsection
20922 \begin_inset CommandInset label
20924 name "subsec:Paragraph-Style-XHTML"
20931 \begin_layout Standard
20932 The sort of XHTML \SpecialChar LyX
20933 outputs for a paragraph depends upon whether we are dealing
20934 with a normal paragraph, a command, or an environment, where this is itself
20935 determined by the contents of the corresponding
20936 \begin_inset Flex Code
20939 \begin_layout Plain Layout
20950 \begin_layout Standard
20951 For a command or normal paragraph, the output XHTML has the following form:
20954 \begin_layout LyX-Code
20956 \begin_inset Quotes erd
20960 \begin_inset Quotes erd
20966 \begin_layout LyX-Code
20968 \begin_inset Quotes erd
20972 \begin_inset Quotes erd
20978 \begin_layout LyX-Code
20979 Contents of the paragraph.
20982 \begin_layout LyX-Code
20986 \begin_layout Standard
20987 The label tags are of course omitted if the paragraph does not have a label.
20990 \begin_layout Standard
20991 For an environment that is not some sort of list, the XHTML takes this form:
20994 \begin_layout LyX-Code
20996 \begin_inset Quotes erd
21000 \begin_inset Quotes erd
21006 \begin_layout LyX-Code
21008 \begin_inset Quotes erd
21012 \begin_inset Quotes erd
21016 \begin_inset Quotes erd
21020 \begin_inset Quotes erd
21023 >Environment Label</labeltag>First paragraph.</itemtag>
21026 \begin_layout LyX-Code
21027 <itemtag>Second paragraph.</itemtag>
21030 \begin_layout LyX-Code
21034 \begin_layout Standard
21035 Note that the label is output only for the first paragraph, as it should
21036 be for a theorem, for example.
21040 \begin_layout Standard
21041 For a list, we have one of these forms:
21044 \begin_layout LyX-Code
21046 \begin_inset Quotes erd
21050 \begin_inset Quotes erd
21056 \begin_layout LyX-Code
21058 \begin_inset Quotes erd
21062 \begin_inset Quotes erd
21066 \begin_inset Quotes erd
21070 \begin_inset Quotes erd
21073 >List Label</labeltag>First item.</itemtag>
21076 \begin_layout LyX-Code
21078 \begin_inset Quotes erd
21082 \begin_inset Quotes erd
21086 \begin_inset Quotes erd
21090 \begin_inset Quotes erd
21093 >List Label</labeltag>Second item.</itemtag>
21096 \begin_layout LyX-Code
21100 \begin_layout LyX-Code
21104 \begin_layout LyX-Code
21106 \begin_inset Quotes erd
21110 \begin_inset Quotes erd
21116 \begin_layout LyX-Code
21118 \begin_inset Quotes erd
21122 \begin_inset Quotes erd
21125 >List Label</labeltag><itemtag attr=
21126 \begin_inset Quotes erd
21130 \begin_inset Quotes erd
21133 >First item.</itemtag>
21136 \begin_layout LyX-Code
21138 \begin_inset Quotes erd
21142 \begin_inset Quotes erd
21145 >List Label</labeltag><itemtag attr=
21146 \begin_inset Quotes erd
21150 \begin_inset Quotes erd
21153 >Second item.</itemtag>
21156 \begin_layout LyX-Code
21160 \begin_layout Standard
21161 Note the different orders of
21162 \begin_inset Flex Code
21165 \begin_layout Plain Layout
21172 \begin_inset Flex Code
21175 \begin_layout Plain Layout
21182 Which order we get depends upon the setting of
21183 \begin_inset Flex Code
21186 \begin_layout Plain Layout
21193 \begin_inset Flex Code
21196 \begin_layout Plain Layout
21202 is false (the default), you get the first of these, with the label within
21203 the item; if true, you get the second, with the label outside the item.
21206 \begin_layout Standard
21207 The specific tags and attributes output for each paragraph type can be controlle
21208 d by means of the layout tags we are about to describe.
21209 As mentioned earlier, however, \SpecialChar LyX
21210 uses sensible defaults for many of these,
21211 so you often may not need to do very much to get good XHTML output.
21212 Think of the available tags as there so you can tweak things to your liking.
21215 \begin_layout Description
21216 \begin_inset Flex Code
21219 \begin_layout Plain Layout
21226 \begin_inset Flex Code
21229 \begin_layout Plain Layout
21235 ] Specifies attribute information to be output with the main tag.
21237 \begin_inset Quotes eld
21241 \begin_inset Flex Code
21244 \begin_layout Plain Layout
21251 \begin_inset Quotes erd
21255 By default, \SpecialChar LyX
21257 \begin_inset Quotes eld
21261 \begin_inset Flex Code
21264 \begin_layout Plain Layout
21271 \begin_inset Quotes erd
21275 \begin_inset Flex Code
21278 \begin_layout Plain Layout
21284 is the \SpecialChar LyX
21285 name of the layout, made lowercase, for example: chapter.
21290 contain any style information.
21292 \begin_inset Flex Code
21295 \begin_layout Plain Layout
21304 \begin_layout Description
21305 \begin_inset Flex Code
21308 \begin_layout Plain Layout
21315 \begin_inset Flex Code
21318 \begin_layout Plain Layout
21328 ] Whether to output the default CSS information \SpecialChar LyX
21329 generates for this layout,
21330 even if additional information is explicitly provided via
21331 \begin_inset Flex Code
21334 \begin_layout Plain Layout
21342 \begin_inset Flex Code
21345 \begin_layout Plain Layout
21351 allows you to alter or augment the generated CSS, rather than to override
21354 \begin_inset Flex Code
21357 \begin_layout Plain Layout
21366 \begin_layout Description
21367 \begin_inset Flex Code
21370 \begin_layout Plain Layout
21377 \begin_inset Flex Code
21380 \begin_layout Plain Layout
21386 ] The tag to be used for individual paragraphs of environments, replacing
21388 \begin_inset Flex Code
21391 \begin_layout Plain Layout
21397 in the examples above.
21399 \begin_inset Flex Code
21402 \begin_layout Plain Layout
21411 \begin_layout Description
21412 \begin_inset Flex Code
21415 \begin_layout Plain Layout
21422 \begin_inset Flex Code
21425 \begin_layout Plain Layout
21431 ] Attributes for the item tag.
21433 \begin_inset Quotes eld
21437 \begin_inset Flex Code
21440 \begin_layout Plain Layout
21441 class=`layoutname_item'
21447 \begin_inset Quotes erd
21455 contain any style information.
21457 \begin_inset Flex Code
21460 \begin_layout Plain Layout
21469 \begin_layout Description
21470 \begin_inset Flex Code
21473 \begin_layout Plain Layout
21480 \begin_inset Flex Code
21483 \begin_layout Plain Layout
21489 ] The tag to be used for paragraph and item labels, replacing
21490 \begin_inset Flex Code
21493 \begin_layout Plain Layout
21499 in the examples above.
21501 \begin_inset Flex Code
21504 \begin_layout Plain Layout
21511 \begin_inset Flex Code
21514 \begin_layout Plain Layout
21521 \begin_inset Flex Code
21524 \begin_layout Plain Layout
21531 \begin_inset Flex Code
21534 \begin_layout Plain Layout
21535 Centered_Top_Environment
21540 , in which case it defaults to
21541 \begin_inset Flex Code
21544 \begin_layout Plain Layout
21553 \begin_layout Description
21554 \begin_inset Flex Code
21557 \begin_layout Plain Layout
21564 \begin_inset Flex Code
21567 \begin_layout Plain Layout
21573 ] Attributes for the label tag.
21575 \begin_inset Quotes eld
21579 \begin_inset Flex Code
21582 \begin_layout Plain Layout
21583 class=`layoutname_label'
21589 \begin_inset Quotes erd
21597 contain any style information.
21599 \begin_inset Flex Code
21602 \begin_layout Plain Layout
21611 \begin_layout Description
21612 \begin_inset Flex Code
21615 \begin_layout Plain Layout
21622 \begin_inset Flex Code
21625 \begin_layout Plain Layout
21635 ] Meaningful only for list-like environments, this tag controls whether
21636 the label tag is output before or inside the item tag.
21637 This is used, for example, in the description environment, where we want
21639 \begin_inset Flex Code
21642 \begin_layout Plain Layout
21643 <dt>\SpecialChar ldots
21644 </dt><dd>\SpecialChar ldots
21652 \begin_inset Flex Code
21655 \begin_layout Plain Layout
21661 : The label tag is output inside the item tag.
21664 \begin_layout Description
21665 \begin_inset Flex Code
21668 \begin_layout Plain Layout
21674 Information to be output in the
21675 \begin_inset Flex Code
21678 \begin_layout Plain Layout
21684 section when this style is used.
21685 This might, for example, be used to include a
21686 \begin_inset Flex Code
21689 \begin_layout Plain Layout
21696 \begin_inset Flex Code
21699 \begin_layout Plain Layout
21708 \begin_layout Description
21709 \begin_inset Flex Code
21712 \begin_layout Plain Layout
21718 CSS style information to be included when this style is used.
21719 Note that this will automatically be wrapped in a layout-generated
21720 \begin_inset Flex Code
21723 \begin_layout Plain Layout
21729 block, so only the CSS itself need be included.
21731 \begin_inset Flex Code
21734 \begin_layout Plain Layout
21743 \begin_layout Description
21744 \begin_inset Flex Code
21747 \begin_layout Plain Layout
21754 \begin_inset Flex Code
21757 \begin_layout Plain Layout
21763 ] The tag to be used for the main label, replacing
21764 \begin_inset Flex Code
21767 \begin_layout Plain Layout
21773 in the examples above.
21775 \begin_inset Flex Code
21778 \begin_layout Plain Layout
21787 \begin_layout Description
21788 \begin_inset Flex Code
21791 \begin_layout Plain Layout
21798 \begin_inset Flex Code
21801 \begin_layout Plain Layout
21811 ] Marks this style as the one to be used to generate the
21812 \begin_inset Flex Code
21815 \begin_layout Plain Layout
21821 tag for the XHTML file.
21822 By default, it is false.
21824 \begin_inset Flex Code
21827 \begin_layout Plain Layout
21833 file sets it to true for the
21834 \begin_inset Flex Code
21837 \begin_layout Plain Layout
21847 \begin_layout Subsection
21851 \begin_layout Standard
21852 The XHTML output of insets can also be controlled by information in layout
21857 \begin_layout Plain Layout
21858 At present, this is true only for
21859 \begin_inset Quotes eld
21863 \begin_inset Quotes erd
21866 insets (insets you can type into) and is not true for
21867 \begin_inset Quotes eld
21871 \begin_inset Quotes erd
21874 insets (insets that are associated with dialog boxes).
21879 Here, too, \SpecialChar LyX
21880 tries to provide sensible defaults, and it constructs default
21882 But everything can be customized.
21885 \begin_layout Standard
21886 The XHTML \SpecialChar LyX
21887 outputs for an inset has the following form:
21890 \begin_layout LyX-Code
21892 \begin_inset Quotes erd
21896 \begin_inset Quotes erd
21902 \begin_layout LyX-Code
21903 <labeltag>Label</labeltag>
21906 \begin_layout LyX-Code
21908 \begin_inset Quotes erd
21912 \begin_inset Quotes erd
21915 >Contents of the inset.</innertag>
21918 \begin_layout LyX-Code
21922 \begin_layout Standard
21923 If the inset permits multiple paragraphs—that is, if
21924 \begin_inset Flex Code
21927 \begin_layout Plain Layout
21933 is true—then the contents of the inset will itself be output as paragraphs
21934 formatted according to the styles used for those paragraphs (standard,
21935 quote, and the like).
21936 The label tag is of course omitted if the paragraph does not have a label
21937 and, at present, is always
21938 \begin_inset Flex Code
21941 \begin_layout Plain Layout
21948 The inner tag is optional and, by default, does not appear.
21951 \begin_layout Standard
21952 The specific tags and attributes output for each inset can be controlled
21953 by means of the following layout tags.
21956 \begin_layout Description
21957 \begin_inset Flex Code
21960 \begin_layout Plain Layout
21967 \begin_inset Flex Code
21970 \begin_layout Plain Layout
21976 ] Specifies attribute information to be output with the main tag.
21978 \begin_inset Quotes eld
21982 \begin_inset Flex Code
21985 \begin_layout Plain Layout
21986 class=`myinset' onclick=`\SpecialChar ldots
21993 \begin_inset Quotes erd
21997 By default, \SpecialChar LyX
21999 \begin_inset Quotes eld
22003 \begin_inset Flex Code
22006 \begin_layout Plain Layout
22013 \begin_inset Quotes erd
22017 \begin_inset Flex Code
22020 \begin_layout Plain Layout
22026 is the \SpecialChar LyX
22027 name of the inset, made lowercase and with non-alphanumeric characters
22028 converted to underscores, for example: footnote.
22031 \begin_layout Description
22032 \begin_inset Flex Code
22035 \begin_layout Plain Layout
22042 \begin_inset Flex Code
22045 \begin_layout Plain Layout
22055 ] Whether to output the default CSS information \SpecialChar LyX
22056 generates for this layout,
22057 even if additional information is explicitly provided via
22058 \begin_inset Flex Code
22061 \begin_layout Plain Layout
22069 \begin_inset Flex Code
22072 \begin_layout Plain Layout
22078 allows you to alter or augment the generated CSS, rather than to override
22083 \begin_layout Description
22084 \begin_inset Flex Code
22087 \begin_layout Plain Layout
22094 \begin_inset Flex Code
22097 \begin_layout Plain Layout
22103 ] Attributes for the inner tag.
22105 \begin_inset Quotes eld
22109 \begin_inset Flex Code
22112 \begin_layout Plain Layout
22113 class=`insetname_inner'
22119 \begin_inset Quotes erd
22125 \begin_layout Description
22126 \begin_inset Flex Code
22129 \begin_layout Plain Layout
22136 \begin_inset Flex Code
22139 \begin_layout Plain Layout
22145 ] The inner tag, replacing
22146 \begin_inset Flex Code
22149 \begin_layout Plain Layout
22155 in the examples above.
22156 By default, there is none.
22159 \begin_layout Description
22160 \begin_inset Flex Code
22163 \begin_layout Plain Layout
22170 \begin_inset Flex Code
22173 \begin_layout Plain Layout
22181 ] Whether this inset represents a standalone block of text (such as a footnote)
22182 or instead represents material that is included in the surrounding text
22183 (such as a branch).
22187 \begin_layout Description
22188 \begin_inset Flex Code
22191 \begin_layout Plain Layout
22198 \begin_inset Flex Code
22201 \begin_layout Plain Layout
22207 ] A label for this inset, possibly including a reference to a counter.
22208 For example, for footnote, it might be:
22209 \begin_inset Flex Code
22212 \begin_layout Plain Layout
22221 This is optional, and there is no default.
22224 \begin_layout Description
22225 \begin_inset Flex Code
22228 \begin_layout Plain Layout
22234 Information to be output in the
22235 \begin_inset Flex Code
22238 \begin_layout Plain Layout
22244 section when this style is used.
22245 This might, for example, be used to include a
22246 \begin_inset Flex Code
22249 \begin_layout Plain Layout
22256 \begin_inset Flex Code
22259 \begin_layout Plain Layout
22268 \begin_layout Description
22269 \begin_inset Flex Code
22272 \begin_layout Plain Layout
22278 CSS style information to be included when this style is used.
22279 Note that this will automatically be wrapped in a layout-generated
22280 \begin_inset Flex Code
22283 \begin_layout Plain Layout
22289 block, so only the CSS itself need be included.
22292 \begin_layout Description
22293 \begin_inset Flex Code
22296 \begin_layout Plain Layout
22303 \begin_inset Flex Code
22306 \begin_layout Plain Layout
22312 ] The tag to be used for the main label, replacing
22313 \begin_inset Flex Code
22316 \begin_layout Plain Layout
22322 in the examples above.
22323 The default depends upon the setting of
22324 \begin_inset Flex Code
22327 \begin_layout Plain Layout
22334 \begin_inset Flex Code
22337 \begin_layout Plain Layout
22343 is true, the default is
22344 \begin_inset Flex Code
22347 \begin_layout Plain Layout
22353 ; if it is false, the default is
22354 \begin_inset Flex Code
22357 \begin_layout Plain Layout
22366 \begin_layout Subsection
22370 \begin_layout Standard
22371 The XHTML output for floats too can be controlled by layout information.
22372 The output has the following form:
22375 \begin_layout LyX-Code
22377 \begin_inset Quotes erd
22381 \begin_inset Quotes erd
22387 \begin_layout LyX-Code
22388 Contents of the float.
22391 \begin_layout LyX-Code
22395 \begin_layout Standard
22396 The caption, if there is one, is a separate inset and will be output as
22398 Its appearance can be controlled via the InsetLayout for caption insets.
22402 \begin_layout Description
22403 \begin_inset Flex Code
22406 \begin_layout Plain Layout
22413 \begin_inset Flex Code
22416 \begin_layout Plain Layout
22422 ] Specifies attribute information to be output with the main tag.
22424 \begin_inset Quotes eld
22428 \begin_inset Flex Code
22431 \begin_layout Plain Layout
22432 class=`myfloat' onclick=`\SpecialChar ldots
22439 \begin_inset Quotes erd
22443 By default, \SpecialChar LyX
22445 \begin_inset Quotes eld
22449 \begin_inset Flex Code
22452 \begin_layout Plain Layout
22453 class=`float float-floattype'
22459 \begin_inset Quotes erd
22463 \begin_inset Flex Code
22466 \begin_layout Plain Layout
22472 is \SpecialChar LyX
22473 's name for this type of float, as determined by the float declaration
22475 \begin_inset CommandInset ref
22477 reference "subsec:Floats"
22481 ), though made lowercase and with non-alphanumeric characters converted
22482 to underscores, for example: float-table.
22485 \begin_layout Description
22486 \begin_inset Flex Code
22489 \begin_layout Plain Layout
22495 CSS style information to be included when this float is used.
22496 Note that this will automatically be wrapped in a layout-generated
22497 \begin_inset Flex Code
22500 \begin_layout Plain Layout
22506 block, so only the CSS itself need be included.
22509 \begin_layout Description
22510 \begin_inset Flex Code
22513 \begin_layout Plain Layout
22520 \begin_inset Flex Code
22523 \begin_layout Plain Layout
22529 ] The tag to be used for this float, replacing
22530 \begin_inset Quotes eld
22534 \begin_inset Flex Code
22537 \begin_layout Plain Layout
22544 \begin_inset Quotes erd
22547 in the example above.
22549 \begin_inset Flex Code
22552 \begin_layout Plain Layout
22558 and will rarely need changing.
22561 \begin_layout Subsection
22562 Bibliography formatting
22565 \begin_layout Standard
22566 The bibliography can be formatted using
22567 \begin_inset Flex Code
22570 \begin_layout Plain Layout
22578 \begin_inset CommandInset ref
22580 reference "subsec:Citation-format-description"
22587 \begin_layout Subsection
22592 \begin_layout Standard
22593 We have several times mentioned that \SpecialChar LyX
22594 will generate default CSS style rules
22595 for both insets and paragraph styles, based upon the other layout information
22597 In this section, we shall say a word about which layout information \SpecialChar LyX
22602 \begin_layout Standard
22603 At present, \SpecialChar LyX
22604 auto-generates CSS only for font information, making use of
22606 \begin_inset Flex Code
22609 \begin_layout Plain Layout
22616 \begin_inset Flex Code
22619 \begin_layout Plain Layout
22626 \begin_inset Flex Code
22629 \begin_layout Plain Layout
22636 \begin_inset Flex Code
22639 \begin_layout Plain Layout
22646 \begin_inset Flex Code
22649 \begin_layout Plain Layout
22656 \begin_inset CommandInset ref
22658 reference "subsec:Font-description"
22663 The translation is mostly straightforward and obvious.
22665 \begin_inset Quotes eld
22669 \begin_inset Flex Code
22672 \begin_layout Plain Layout
22679 \begin_inset Quotes erd
22683 \begin_inset Quotes eld
22687 \begin_inset Flex Code
22690 \begin_layout Plain Layout
22691 font-family: sans-serif;
22697 \begin_inset Quotes erd
22701 The correspondence of \SpecialChar LyX
22702 sizes and CSS sizes is a little less obvious but
22703 nonetheless intuitive.
22705 \begin_inset Flex Code
22708 \begin_layout Plain Layout
22715 \begin_inset Flex URL
22718 \begin_layout Plain Layout
22728 \begin_layout Chapter
22729 Including External Material
22730 \begin_inset CommandInset label
22732 name "chap:Including-External-Material"
22739 \begin_layout Standard
22740 \begin_inset Box Shadowbox
22750 height_special "totalheight"
22755 backgroundcolor "none"
22758 \begin_layout Plain Layout
22759 WARNING: This portion of the documentation has not been updated for some
22761 We certainly hope that it is still accurate, but there are no guarantees.
22769 \begin_layout Standard
22770 The use of material from sources external to \SpecialChar LyX
22771 is covered in detail in the
22777 This part of the manual covers what needs to happen behind the scenes for
22778 new sorts of material to be included.
22781 \begin_layout Section
22785 \begin_layout Standard
22786 The external material feature is based on the concept of a
22791 A template is a specification of how \SpecialChar LyX
22792 should interface with a certain kind
22794 As bundled, \SpecialChar LyX
22795 comes with predefined templates for Xfig figures, various
22796 raster format images, chess diagrams, and LilyPond music notation.
22797 You can check the actual list by using the menu
22798 \begin_inset Flex Noun
22801 \begin_layout Plain Layout
22802 Insert\SpecialChar menuseparator
22803 File\SpecialChar menuseparator
22810 Furthermore, it is possible to roll your own template to support a specific
22812 Later we'll describe in more detail what is involved, and hopefully you
22813 will submit all the templates you create so we can include them in a later
22818 \begin_layout Standard
22819 Another basic idea of the external material feature is to distinguish between
22820 the original file that serves as a base for final material and the produced
22821 file that is included in your exported or printed document.
22822 For example, consider the case of a figure produced with
22823 \begin_inset Flex Code
22826 \begin_layout Plain Layout
22833 The Xfig application itself works on an original file with the
22834 \begin_inset Flex Code
22837 \begin_layout Plain Layout
22844 Within Xfig, you create and change your figure, and when you are done,
22846 \begin_inset Flex Code
22849 \begin_layout Plain Layout
22856 When you want to include the figure in your document, you invoke
22857 \begin_inset Flex Code
22860 \begin_layout Plain Layout
22866 in order to create a PostScript file that can readily be included in your
22870 \begin_inset Flex Code
22873 \begin_layout Plain Layout
22879 file is the original file, and the PostScript file is the produced file.
22882 \begin_layout Standard
22883 This distinction is important in order to allow updating of the material
22884 while you are in the process of writing the document.
22885 Furthermore, it provides us with the flexibility that is needed to support
22886 multiple export formats.
22887 For instance, in the case of a plain text file, it is not exactly an award-winn
22888 ing idea to include the figure as raw PostScript.
22889 Instead, you would either prefer to just include a reference to the figure
22890 or try to invoke some graphics to ASCII converter to make the final result
22891 look similar to the real graphics.
22892 The external material management allows you to do this, because it is parametri
22893 zed on the different export formats that \SpecialChar LyX
22897 \begin_layout Standard
22898 Besides supporting the production of different products according to the
22899 exported format, it supports tight integration with editing and viewing
22901 In the case of an Xfig figure, you are able to invoke Xfig on the original
22902 file with a single click from within the external material dialog in \SpecialChar LyX
22904 and also preview the produced PostScript file with Ghostview with another
22906 No more fiddling around with the command line and/or file browsers to locate
22907 and manipulate the original or produced files.
22908 In this way, you are finally able to take full advantage of the many different
22909 applications that are relevant to use when you write your documents, and
22910 ultimately be more productive.
22913 \begin_layout Section
22914 The external template configuration file
22917 \begin_layout Standard
22918 It is relatively easy to add custom external template definitions to \SpecialChar LyX
22920 However, be aware that doing this in an careless manner most probably
22924 introduce an easily exploitable security hole.
22925 So before you do this, please read the discussion about security in
22926 \begin_inset CommandInset ref
22928 reference "sec:Security-discussion"
22935 \begin_layout Standard
22936 Having said that, we encourage you to submit any interesting templates that
22941 \begin_layout Standard
22942 The external templates are defined in the
22943 \begin_inset Flex Code
22946 \begin_layout Plain Layout
22947 LyXDir/lib/external_templates
22953 You can place your own version in
22954 \begin_inset Flex Code
22957 \begin_layout Plain Layout
22958 UserDir/external_templates
22966 \begin_layout Standard
22967 A typical template looks like this:
22970 \begin_layout LyX-Code
22974 \begin_layout LyX-Code
22975 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
22978 \begin_layout LyX-Code
22982 \begin_layout LyX-Code
22986 \begin_layout LyX-Code
22990 \begin_layout LyX-Code
22994 \begin_layout LyX-Code
22998 \begin_layout LyX-Code
22999 AutomaticProduction true
23002 \begin_layout LyX-Code
23006 \begin_layout LyX-Code
23010 \begin_layout LyX-Code
23011 Format \SpecialChar LaTeX
23015 \begin_layout LyX-Code
23016 TransformCommand Rotate RotationLatexCommand
23019 \begin_layout LyX-Code
23020 TransformCommand Resize ResizeLatexCommand
23023 \begin_layout LyX-Code
23024 Product "$$RotateFront$$ResizeFront
23027 \begin_layout LyX-Code
23032 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
23035 \begin_layout LyX-Code
23036 $$ResizeBack$$RotateBack"
23039 \begin_layout LyX-Code
23043 \begin_layout LyX-Code
23044 UpdateResult "$$AbsPath$$Basename.pstex_t"
23047 \begin_layout LyX-Code
23048 Requirement "graphicx"
23051 \begin_layout LyX-Code
23052 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
23055 \begin_layout LyX-Code
23056 ReferencedFile latex "$$AbsPath$$Basename.eps"
23059 \begin_layout LyX-Code
23060 ReferencedFile dvi "$$AbsPath$$Basename.eps"
23063 \begin_layout LyX-Code
23067 \begin_layout LyX-Code
23068 Format PDF\SpecialChar LaTeX
23072 \begin_layout LyX-Code
23073 TransformCommand Rotate RotationLatexCommand
23076 \begin_layout LyX-Code
23077 TransformCommand Resize ResizeLatexCommand
23080 \begin_layout LyX-Code
23081 Product "$$RotateFront$$ResizeFront
23084 \begin_layout LyX-Code
23089 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
23092 \begin_layout LyX-Code
23093 $$ResizeBack$$RotateBack"
23096 \begin_layout LyX-Code
23097 UpdateFormat pdftex
23100 \begin_layout LyX-Code
23101 UpdateResult "$$AbsPath$$Basename.pdftex_t"
23104 \begin_layout LyX-Code
23105 Requirement "graphicx"
23108 \begin_layout LyX-Code
23109 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
23112 \begin_layout LyX-Code
23113 ReferencedFile latex "$$AbsPath$$Basename.pdf"
23116 \begin_layout LyX-Code
23120 \begin_layout LyX-Code
23124 \begin_layout LyX-Code
23125 Product "$$Contents(
23127 "$$AbsPath$$Basename.asc
23132 \begin_layout LyX-Code
23133 UpdateFormat asciixfig
23136 \begin_layout LyX-Code
23137 UpdateResult "$$AbsPath$$Basename.asc"
23140 \begin_layout LyX-Code
23144 \begin_layout LyX-Code
23148 \begin_layout LyX-Code
23149 Product "<graphic fileref=
23151 "$$AbsOrRelPathMaster$$Basename.eps
23156 \begin_layout LyX-Code
23160 \begin_layout LyX-Code
23164 \begin_layout LyX-Code
23165 UpdateResult "$$AbsPath$$Basename.eps"
23168 \begin_layout LyX-Code
23169 ReferencedFile docbook "$$AbsPath$$Basename.eps"
23172 \begin_layout LyX-Code
23173 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
23176 \begin_layout LyX-Code
23180 \begin_layout LyX-Code
23181 Product "[XFig: $$FName]"
23184 \begin_layout LyX-Code
23188 \begin_layout LyX-Code
23192 \begin_layout Standard
23193 As you can see, the template is enclosed in
23194 \begin_inset Flex Code
23197 \begin_layout Plain Layout
23205 \begin_inset Flex Code
23208 \begin_layout Plain Layout
23215 It contains a header specifying some general settings and, for each supported
23216 primary document file format, a section
23217 \begin_inset Flex Code
23220 \begin_layout Plain Layout
23228 \begin_inset Flex Code
23231 \begin_layout Plain Layout
23240 \begin_layout Subsection
23241 The template header
23244 \begin_layout Description
23245 \begin_inset Flex Code
23248 \begin_layout Plain Layout
23249 AutomaticProduction
23250 \begin_inset space ~
23258 Whether the file represented by the template must be generated by \SpecialChar LyX
23260 This command must occur exactly once.
23263 \begin_layout Description
23264 \begin_inset Flex Code
23267 \begin_layout Plain Layout
23269 \begin_inset space ~
23277 A glob pattern that is used in the file dialog to filter out the desired
23279 If there is more than one possible file extension (e.
23280 \begin_inset space \thinspace{}
23284 \begin_inset space \space{}
23288 \begin_inset Flex Code
23291 \begin_layout Plain Layout
23298 \begin_inset Flex Code
23301 \begin_layout Plain Layout
23307 ), use something like
23308 \begin_inset Flex Code
23311 \begin_layout Plain Layout
23318 This command must occur exactly once.
23321 \begin_layout Description
23322 \begin_inset Flex Code
23325 \begin_layout Plain Layout
23327 \begin_inset space ~
23335 The text that is displayed on the button.
23336 This command must occur exactly once.
23339 \begin_layout Description
23340 \begin_inset Flex Code
23343 \begin_layout Plain Layout
23345 \begin_inset space ~
23349 \begin_inset space ~
23357 The help text that is used in the External dialog.
23358 Provide enough information to explain to the user just what the template
23359 can provide him with.
23360 This command must occur exactly once.
23363 \begin_layout Description
23364 \begin_inset Flex Code
23367 \begin_layout Plain Layout
23369 \begin_inset space ~
23377 The file format of the original file.
23378 This must be the name of a format that is known to \SpecialChar LyX
23380 \begin_inset CommandInset ref
23382 reference "sec:Formats"
23388 \begin_inset Quotes eld
23392 \begin_inset Flex Code
23395 \begin_layout Plain Layout
23402 \begin_inset Quotes erd
23405 if the template can handle original files of more than one format.
23407 will attempt to interrogate the file itself in order to deduce its format
23409 This command must occur exactly once.
23412 \begin_layout Description
23413 \begin_inset Flex Code
23416 \begin_layout Plain Layout
23418 \begin_inset space ~
23426 A unique name for the template.
23427 It must not contain substitution macros (see below).
23430 \begin_layout Description
23431 \begin_inset Flex Code
23434 \begin_layout Plain Layout
23436 \begin_inset space ~
23439 Rotate|Resize|Clip|Extra
23444 This command specifies which transformations are supported by this template.
23445 It may occur zero or more times.
23446 This command enables the corresponding tabs in the external dialog.
23448 \begin_inset Flex Code
23451 \begin_layout Plain Layout
23457 command must have either a corresponding
23458 \begin_inset Flex Code
23461 \begin_layout Plain Layout
23468 \begin_inset Flex Code
23471 \begin_layout Plain Layout
23478 \begin_inset Flex Code
23481 \begin_layout Plain Layout
23488 Otherwise the transformation will not be supported by that format.
23491 \begin_layout Subsection
23495 \begin_layout Description
23496 \begin_inset Flex Code
23499 \begin_layout Plain Layout
23501 \begin_inset space ~
23504 LaTeX|PDFLaTeX|PlainText|DocBook
23509 The primary document file format that this format definition is for.
23510 Not every template has a sensible representation in all document file formats.
23511 Please define nevertheless a
23512 \begin_inset Flex Code
23515 \begin_layout Plain Layout
23521 section for all templates.
23522 Use a dummy text when no representation is available.
23523 Then you can at least see a reference to the external material in the exported
23527 \begin_layout Description
23528 \begin_inset Flex Code
23531 \begin_layout Plain Layout
23533 \begin_inset space ~
23537 \begin_inset space ~
23545 This command defines an additional macro
23546 \begin_inset Flex Code
23549 \begin_layout Plain Layout
23555 for substitution in
23556 \begin_inset Flex Code
23559 \begin_layout Plain Layout
23567 \begin_inset Flex Code
23570 \begin_layout Plain Layout
23576 itself may contain substitution macros.
23577 The advantage over using
23578 \begin_inset Flex Code
23581 \begin_layout Plain Layout
23588 \begin_inset Flex Code
23591 \begin_layout Plain Layout
23597 is that the substituted value of
23598 \begin_inset Flex Code
23601 \begin_layout Plain Layout
23607 is sanitized so that it is a valid optional argument in the document format.
23608 This command may occur zero or more times.
23611 \begin_layout Description
23612 \begin_inset Flex Code
23615 \begin_layout Plain Layout
23617 \begin_inset space ~
23625 The text that is inserted in the exported document.
23626 This is actually the most important command and can be quite complex.
23627 This command must occur exactly once.
23630 \begin_layout Description
23631 \begin_inset Flex Code
23634 \begin_layout Plain Layout
23636 \begin_inset space ~
23644 This command specifies a preamble snippet that will be included in the
23647 It has to be defined using
23648 \begin_inset Flex Code
23651 \begin_layout Plain Layout
23659 \begin_inset Flex Code
23662 \begin_layout Plain Layout
23669 This command may occur zero or more times.
23672 \begin_layout Description
23673 \begin_inset Flex Code
23676 \begin_layout Plain Layout
23678 \begin_inset space ~
23682 \begin_inset space ~
23690 This command denotes files that are created by the conversion process and
23691 are needed for a particular export format.
23692 If the filename is relative, it is interpreted relative to the master document.
23693 This command may be given zero or more times.
23696 \begin_layout Description
23697 \begin_inset Flex Code
23700 \begin_layout Plain Layout
23702 \begin_inset space ~
23710 The name of a required \SpecialChar LaTeX
23712 The package is included via
23713 \begin_inset Flex Code
23716 \begin_layout Plain Layout
23724 in the \SpecialChar LaTeX
23726 This command may occur zero or more times.
23729 \begin_layout Description
23730 \begin_inset Flex Code
23733 \begin_layout Plain Layout
23735 \begin_inset space ~
23739 \begin_inset space ~
23742 RotationLatexCommand
23747 This command specifies that the built in \SpecialChar LaTeX
23748 command should be used for rotation.
23749 This command may occur once or not at all.
23752 \begin_layout Description
23753 \begin_inset Flex Code
23756 \begin_layout Plain Layout
23758 \begin_inset space ~
23762 \begin_inset space ~
23770 This command specifies that the built in \SpecialChar LaTeX
23771 command should be used for resizing.
23772 This command may occur once or not at all.
23775 \begin_layout Description
23776 \begin_inset Flex Code
23779 \begin_layout Plain Layout
23781 \begin_inset space ~
23785 \begin_inset space ~
23788 RotationLatexOption
23793 This command specifies that rotation is done via an optional argument.
23794 This command may occur once or not at all.
23797 \begin_layout Description
23798 \begin_inset Flex Code
23801 \begin_layout Plain Layout
23803 \begin_inset space ~
23807 \begin_inset space ~
23815 This command specifies that resizing is done via an optional argument.
23816 This command may occur once or not at all.
23819 \begin_layout Description
23820 \begin_inset Flex Code
23823 \begin_layout Plain Layout
23825 \begin_inset space ~
23829 \begin_inset space ~
23837 This command specifies that clipping is done via an optional argument.
23838 This command may occur once or not at all.
23841 \begin_layout Description
23842 \begin_inset Flex Code
23845 \begin_layout Plain Layout
23847 \begin_inset space ~
23851 \begin_inset space ~
23859 This command specifies that an extra optional argument is used.
23860 This command may occur once or not at all.
23863 \begin_layout Description
23864 \begin_inset Flex Code
23867 \begin_layout Plain Layout
23869 \begin_inset space ~
23877 The file format of the converted file.
23878 This must be the name of a format that is known to \SpecialChar LyX
23880 \begin_inset Flex Noun
23883 \begin_layout Plain Layout
23884 Tools\SpecialChar menuseparator
23885 Preferences\SpecialChar menuseparator
23886 File Handling\SpecialChar menuseparator
23893 This command must occur exactly once.
23894 If the resulting file format is PDF, you need to specify the format
23895 \begin_inset Flex Code
23898 \begin_layout Plain Layout
23905 This is the PDF format used for including graphics.
23906 The other defined PDF formats are for document export.
23909 \begin_layout Description
23910 \begin_inset Flex Code
23913 \begin_layout Plain Layout
23915 \begin_inset space ~
23923 The file name of the converted file.
23924 The file name must be absolute.
23925 This command must occur exactly once.
23928 \begin_layout Subsection
23929 Preamble definitions
23932 \begin_layout Standard
23933 The external template configuration file may contain additional preamble
23934 definitions enclosed by
23935 \begin_inset Flex Code
23938 \begin_layout Plain Layout
23946 \begin_inset Flex Code
23949 \begin_layout Plain Layout
23956 They can be used by the templates in the
23957 \begin_inset Flex Code
23960 \begin_layout Plain Layout
23969 \begin_layout Section
23970 The substitution mechanism
23973 \begin_layout Standard
23974 When the external material facility invokes an external program, it is done
23975 on the basis of a command defined in the template configuration file.
23976 These commands can contain various macros that are expanded before execution.
23977 Execution always take place in the directory of the containing document.
23980 \begin_layout Standard
23981 Also, whenever external material is to be displayed, the name will be produced
23982 by the substitution mechanism, and most other commands in the template
23983 definition support substitution as well.
23986 \begin_layout Standard
23987 The available macros are the following:
23990 \begin_layout Description
23991 \begin_inset Flex Code
23994 \begin_layout Plain Layout
23995 $$AbsOrRelPathMaster
24000 The file path, absolute or relative to the master \SpecialChar LyX
24004 \begin_layout Description
24005 \begin_inset Flex Code
24008 \begin_layout Plain Layout
24009 $$AbsOrRelPathParent
24014 The file path, absolute or relative to the \SpecialChar LyX
24018 \begin_layout Description
24019 \begin_inset Flex Code
24022 \begin_layout Plain Layout
24028 The absolute file path.
24031 \begin_layout Description
24032 \begin_inset Flex Code
24035 \begin_layout Plain Layout
24041 The filename without path and without the extension.
24044 \begin_layout Description
24045 \begin_inset Flex Code
24048 \begin_layout Plain Layout
24050 \begin_inset Quotes eld
24054 \begin_inset Quotes erd
24062 This macro will expand to the contents of the file with the name
24063 \begin_inset Flex Code
24066 \begin_layout Plain Layout
24075 \begin_layout Description
24076 \begin_inset Flex Code
24079 \begin_layout Plain Layout
24085 The file extension (including the dot).
24088 \begin_layout Description
24089 \begin_inset Flex Code
24092 \begin_layout Plain Layout
24098 This will be the string
24099 \begin_inset Quotes eld
24103 \begin_inset Quotes erd
24106 if the file is in JPEG format, otherwise it will be the string
24107 \begin_inset Quotes eld
24111 \begin_inset Quotes erd
24115 This is useful to avoid uneeded conversions for output formats that support
24116 both PNG and JPEG fomats.
24117 The predefined RasterImage template uses this macro for the pdf\SpecialChar TeX
24122 \begin_layout Description
24123 \begin_inset Flex Code
24126 \begin_layout Plain Layout
24132 The filename of the file specified in the external material dialog.
24133 This is either an absolute name, or it is relative to the \SpecialChar LyX
24137 \begin_layout Description
24138 \begin_inset Flex Code
24141 \begin_layout Plain Layout
24148 \begin_inset Flex Code
24151 \begin_layout Plain Layout
24157 (absolute name or relative to the \SpecialChar LyX
24161 \begin_layout Description
24162 \begin_inset Flex Code
24165 \begin_layout Plain Layout
24171 The file path, relative to the master \SpecialChar LyX
24175 \begin_layout Description
24176 \begin_inset Flex Code
24179 \begin_layout Plain Layout
24185 The file path, relative to the \SpecialChar LyX
24189 \begin_layout Description
24190 \begin_inset Flex Code
24193 \begin_layout Plain Layout
24199 This macro will expand to the absolute path of the system directory.
24200 This is typically used to point to the various helper scripts that are
24201 bundled with \SpecialChar LyX
24205 \begin_layout Description
24206 \begin_inset Flex Code
24209 \begin_layout Plain Layout
24215 A name and full path to a temporary file which will be automatically deleted
24216 whenever the containing document is closed, or the external material insertion
24220 \begin_layout Standard
24221 All path macros contain a trailing directory separator, so you can construct
24223 \begin_inset space \thinspace{}
24227 \begin_inset space \space{}
24230 the absolute filename with
24231 \begin_inset Flex Code
24234 \begin_layout Plain Layout
24235 $$AbsPath$$Basename$$Extension
24243 \begin_layout Standard
24244 The macros above are substituted in all commands unless otherwise noted.
24246 \begin_inset Flex Code
24249 \begin_layout Plain Layout
24255 supports additionally the following substitutions if they are enabled by
24257 \begin_inset Flex Code
24260 \begin_layout Plain Layout
24267 \begin_inset Flex Code
24270 \begin_layout Plain Layout
24279 \begin_layout Description
24280 \begin_inset Flex Code
24283 \begin_layout Plain Layout
24289 The front part of the resize command.
24292 \begin_layout Description
24293 \begin_inset Flex Code
24296 \begin_layout Plain Layout
24302 The back part of the resize command.
24305 \begin_layout Description
24306 \begin_inset Flex Code
24309 \begin_layout Plain Layout
24315 The front part of the rotation command.
24318 \begin_layout Description
24319 \begin_inset Flex Code
24322 \begin_layout Plain Layout
24328 The back part of the rotation command.
24331 \begin_layout Standard
24332 The value string of the
24333 \begin_inset Flex Code
24336 \begin_layout Plain Layout
24342 command supports additionally the following substitutions if they are enabled
24344 \begin_inset Flex Code
24347 \begin_layout Plain Layout
24354 \begin_inset Flex Code
24357 \begin_layout Plain Layout
24366 \begin_layout Description
24367 \begin_inset Flex Code
24370 \begin_layout Plain Layout
24379 \begin_layout Description
24380 \begin_inset Flex Code
24383 \begin_layout Plain Layout
24392 \begin_layout Description
24393 \begin_inset Flex Code
24396 \begin_layout Plain Layout
24405 \begin_layout Description
24406 \begin_inset Flex Code
24409 \begin_layout Plain Layout
24415 The rotation option.
24418 \begin_layout Standard
24419 You may ask why there are so many path macros.
24420 There are mainly two reasons:
24423 \begin_layout Enumerate
24424 Relative and absolute file names should remain relative or absolute, respectivel
24426 Users may have reasons to prefer either form.
24427 Relative names are useful for portable documents that should work on different
24428 machines, for example.
24429 Absolute names may be required by some programs.
24432 \begin_layout Enumerate
24434 treats relative file names differently than \SpecialChar LyX
24435 and other programs in nested
24437 For \SpecialChar LyX
24438 , a relative file name is always relative to the document that contains
24440 For \SpecialChar LaTeX
24441 , it is always relative to the master document.
24442 These two definitions are identical if you have only one document, but
24443 differ if you have a master document that includes part documents.
24444 That means that relative filenames must be transformed when presented to
24447 Fortunately \SpecialChar LyX
24448 does this automatically for you if you choose the right macros.
24451 \begin_layout Standard
24452 So which path macro should be used in new template definitions? The rule
24456 \begin_layout Itemize
24458 \begin_inset Flex Code
24461 \begin_layout Plain Layout
24467 if an absolute path is required.
24470 \begin_layout Itemize
24472 \begin_inset Flex Code
24475 \begin_layout Plain Layout
24476 $$AbsOrRelPathMaster
24481 if the substituted string is some kind of \SpecialChar LaTeX
24485 \begin_layout Itemize
24487 \begin_inset Flex Code
24490 \begin_layout Plain Layout
24491 $$AbsOrRelPathParent
24496 in order to preserve the user's choice.
24499 \begin_layout Standard
24500 There are special cases where this rule does not work and e.
24501 \begin_inset space \thinspace{}
24505 \begin_inset space \space{}
24508 relative names are needed, but normally it will work just fine.
24509 One example for such a case is the command
24510 \begin_inset Flex Code
24513 \begin_layout Plain Layout
24514 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
24519 in the XFig template above: We can't use the absolute name because the
24521 \begin_inset Flex Code
24524 \begin_layout Plain Layout
24530 files needs the relative name in order to rewrite the file content.
24533 \begin_layout Section
24534 Security discussion
24535 \begin_inset CommandInset label
24537 name "sec:Security-discussion"
24544 \begin_layout Standard
24545 The external material feature interfaces with a lot of external programs
24546 and does so automatically, so we have to consider the security implications
24548 In particular, since you have the option of including your own filenames
24549 and/or parameter strings and those are expanded into a command, it seems
24550 that it would be possible to create a malicious document which executes
24551 arbitrary commands when a user views or prints the document.
24552 This is something we definitely want to avoid.
24555 \begin_layout Standard
24556 However, since the external program commands are specified in the template
24557 configuration file only, there are no security issues if \SpecialChar LyX
24558 is properly configure
24559 d with safe templates only.
24560 This is so because the external programs are invoked with the
24561 \begin_inset Flex Code
24564 \begin_layout Plain Layout
24570 -system call rather than the
24571 \begin_inset Flex Code
24574 \begin_layout Plain Layout
24580 system-call, so it's not possible to execute arbitrary commands from the
24581 filename or parameter section via the shell.
24584 \begin_layout Standard
24585 This also implies that you are restricted in what command strings you can
24586 use in the external material templates.
24587 In particular, pipes and redirection are not readily available.
24588 This has to be so if \SpecialChar LyX
24589 should remain safe.
24590 If you want to use some of the shell features, you should write a safe
24591 script to do this in a controlled manner, and then invoke the script from
24592 the command string.
24596 \begin_layout Standard
24597 It is possible to design a template that interacts directly with the shell,
24598 but since this would allow a malicious user to execute arbitrary commands
24599 by writing clever filenames and/or parameters, we generally recommend that
24600 you only use safe scripts that work with the
24601 \begin_inset Flex Code
24604 \begin_layout Plain Layout
24610 system call in a controlled manner.
24611 Of course, for use in a controlled environment, it can be tempting to just
24612 fall back to use ordinary shell scripts.
24613 If you do so, be aware that you
24617 provide an easily exploitable security hole in your system.
24618 Of course it stands to reason that such unsafe templates will never be
24619 included in the standard \SpecialChar LyX
24620 distribution, although we do encourage people
24621 to submit new templates in the open source tradition.
24622 But \SpecialChar LyX
24623 as shipped from the official distribution channels will never have
24627 \begin_layout Standard
24628 Including external material provides a lot of power, and you have to be
24629 careful not to introduce security hazards with this power.
24630 A subtle error in a single line in an innocent looking script can open
24631 the door to huge security problems.
24632 So if you do not fully understand the issues, we recommend that you consult
24633 a knowledgeable security professional or the \SpecialChar LyX
24634 development team if you have
24635 any questions about whether a given template is safe or not.
24636 And do this before you use it in an uncontrolled environment.
24639 \begin_layout Chapter
24641 List of supported \SpecialChar LyX
24642 functions to be used in layouts
24643 \begin_inset CommandInset label
24645 name "chap:List-of-functions"
24652 \begin_layout Standard
24654 \begin_inset Tabular
24655 <lyxtabular version="3" rows="11" columns="8">
24656 <features tabularvalignment="middle">
24657 <column alignment="left" valignment="top">
24658 <column alignment="left" valignment="top">
24659 <column alignment="left" valignment="top">
24660 <column alignment="left" valignment="top">
24661 <column alignment="left" valignment="top">
24662 <column alignment="left" valignment="top">
24663 <column alignment="left" valignment="top">
24664 <column alignment="left" valignment="top">
24666 <cell alignment="left" valignment="top" usebox="none">
24669 \begin_layout Plain Layout
24675 <cell alignment="left" valignment="top" usebox="none">
24678 \begin_layout Plain Layout
24684 <cell alignment="left" valignment="top" usebox="none">
24687 \begin_layout Plain Layout
24693 <cell alignment="left" valignment="top" usebox="none">
24696 \begin_layout Plain Layout
24702 <cell alignment="center" valignment="top" usebox="none">
24705 \begin_layout Plain Layout
24711 <cell alignment="center" valignment="top" usebox="none">
24714 \begin_layout Plain Layout
24720 <cell alignment="center" valignment="top" usebox="none">
24723 \begin_layout Plain Layout
24729 <cell alignment="center" valignment="top" usebox="none">
24732 \begin_layout Plain Layout
24740 <cell alignment="left" valignment="top" usebox="none">
24743 \begin_layout Plain Layout
24749 <cell alignment="left" valignment="top" usebox="none">
24752 \begin_layout Plain Layout
24758 <cell alignment="left" valignment="top" usebox="none">
24761 \begin_layout Plain Layout
24767 <cell alignment="left" valignment="top" usebox="none">
24770 \begin_layout Plain Layout
24776 <cell alignment="center" valignment="top" usebox="none">
24779 \begin_layout Plain Layout
24785 <cell alignment="center" valignment="top" usebox="none">
24788 \begin_layout Plain Layout
24794 <cell alignment="center" valignment="top" usebox="none">
24797 \begin_layout Plain Layout
24803 <cell alignment="center" valignment="top" usebox="none">
24806 \begin_layout Plain Layout
24814 <cell alignment="left" valignment="top" usebox="none">
24817 \begin_layout Plain Layout
24823 <cell alignment="left" valignment="top" usebox="none">
24826 \begin_layout Plain Layout
24832 <cell alignment="left" valignment="top" usebox="none">
24835 \begin_layout Plain Layout
24841 <cell alignment="left" valignment="top" usebox="none">
24844 \begin_layout Plain Layout
24850 <cell alignment="center" valignment="top" usebox="none">
24853 \begin_layout Plain Layout
24859 <cell alignment="center" valignment="top" usebox="none">
24862 \begin_layout Plain Layout
24868 <cell alignment="center" valignment="top" usebox="none">
24871 \begin_layout Plain Layout
24877 <cell alignment="center" valignment="top" usebox="none">
24880 \begin_layout Plain Layout
24888 <cell alignment="left" valignment="top" usebox="none">
24891 \begin_layout Plain Layout
24897 <cell alignment="left" valignment="top" usebox="none">
24900 \begin_layout Plain Layout
24906 <cell alignment="left" valignment="top" usebox="none">
24909 \begin_layout Plain Layout
24915 <cell alignment="left" valignment="top" usebox="none">
24918 \begin_layout Plain Layout
24924 <cell alignment="center" valignment="top" usebox="none">
24927 \begin_layout Plain Layout
24933 <cell alignment="center" valignment="top" usebox="none">
24936 \begin_layout Plain Layout
24942 <cell alignment="center" valignment="top" usebox="none">
24945 \begin_layout Plain Layout
24951 <cell alignment="center" valignment="top" usebox="none">
24954 \begin_layout Plain Layout
24962 <cell alignment="left" valignment="top" usebox="none">
24965 \begin_layout Plain Layout
24971 <cell alignment="left" valignment="top" usebox="none">
24974 \begin_layout Plain Layout
24980 <cell alignment="left" valignment="top" usebox="none">
24983 \begin_layout Plain Layout
24989 <cell alignment="left" valignment="top" usebox="none">
24992 \begin_layout Plain Layout
24998 <cell alignment="center" valignment="top" usebox="none">
25001 \begin_layout Plain Layout
25007 <cell alignment="center" valignment="top" usebox="none">
25010 \begin_layout Plain Layout
25016 <cell alignment="center" valignment="top" usebox="none">
25019 \begin_layout Plain Layout
25025 <cell alignment="center" valignment="top" usebox="none">
25028 \begin_layout Plain Layout
25036 <cell alignment="left" valignment="top" usebox="none">
25039 \begin_layout Plain Layout
25045 <cell alignment="left" valignment="top" usebox="none">
25048 \begin_layout Plain Layout
25054 <cell alignment="left" valignment="top" usebox="none">
25057 \begin_layout Plain Layout
25063 <cell alignment="left" valignment="top" usebox="none">
25066 \begin_layout Plain Layout
25072 <cell alignment="center" valignment="top" usebox="none">
25075 \begin_layout Plain Layout
25081 <cell alignment="center" valignment="top" usebox="none">
25084 \begin_layout Plain Layout
25090 <cell alignment="center" valignment="top" usebox="none">
25093 \begin_layout Plain Layout
25099 <cell alignment="center" valignment="top" usebox="none">
25102 \begin_layout Plain Layout
25110 <cell alignment="left" valignment="top" usebox="none">
25113 \begin_layout Plain Layout
25119 <cell alignment="left" valignment="top" usebox="none">
25122 \begin_layout Plain Layout
25128 <cell alignment="left" valignment="top" usebox="none">
25131 \begin_layout Plain Layout
25137 <cell alignment="left" valignment="top" usebox="none">
25140 \begin_layout Plain Layout
25146 <cell alignment="center" valignment="top" usebox="none">
25149 \begin_layout Plain Layout
25155 <cell alignment="center" valignment="top" usebox="none">
25158 \begin_layout Plain Layout
25164 <cell alignment="center" valignment="top" usebox="none">
25167 \begin_layout Plain Layout
25173 <cell alignment="center" valignment="top" usebox="none">
25176 \begin_layout Plain Layout
25184 <cell alignment="left" valignment="top" usebox="none">
25187 \begin_layout Plain Layout
25193 <cell alignment="left" valignment="top" usebox="none">
25196 \begin_layout Plain Layout
25202 <cell alignment="left" valignment="top" usebox="none">
25205 \begin_layout Plain Layout
25211 <cell alignment="left" valignment="top" usebox="none">
25214 \begin_layout Plain Layout
25220 <cell alignment="center" valignment="top" usebox="none">
25223 \begin_layout Plain Layout
25229 <cell alignment="center" valignment="top" usebox="none">
25232 \begin_layout Plain Layout
25238 <cell alignment="center" valignment="top" usebox="none">
25241 \begin_layout Plain Layout
25247 <cell alignment="center" valignment="top" usebox="none">
25250 \begin_layout Plain Layout
25258 <cell alignment="left" valignment="top" usebox="none">
25261 \begin_layout Plain Layout
25267 <cell alignment="left" valignment="top" usebox="none">
25270 \begin_layout Plain Layout
25276 <cell alignment="left" valignment="top" usebox="none">
25279 \begin_layout Plain Layout
25285 <cell alignment="left" valignment="top" usebox="none">
25288 \begin_layout Plain Layout
25294 <cell alignment="center" valignment="top" usebox="none">
25297 \begin_layout Plain Layout
25303 <cell alignment="center" valignment="top" usebox="none">
25306 \begin_layout Plain Layout
25312 <cell alignment="center" valignment="top" usebox="none">
25315 \begin_layout Plain Layout
25321 <cell alignment="center" valignment="top" usebox="none">
25324 \begin_layout Plain Layout
25332 <cell alignment="left" valignment="top" usebox="none">
25335 \begin_layout Plain Layout
25341 <cell alignment="left" valignment="top" usebox="none">
25344 \begin_layout Plain Layout
25350 <cell alignment="left" valignment="top" usebox="none">
25353 \begin_layout Plain Layout
25359 <cell alignment="left" valignment="top" usebox="none">
25362 \begin_layout Plain Layout
25368 <cell alignment="center" valignment="top" usebox="none">
25371 \begin_layout Plain Layout
25377 <cell alignment="center" valignment="top" usebox="none">
25380 \begin_layout Plain Layout
25386 <cell alignment="center" valignment="top" usebox="none">
25389 \begin_layout Plain Layout
25395 <cell alignment="center" valignment="top" usebox="none">
25398 \begin_layout Plain Layout
25406 <cell alignment="center" valignment="top" usebox="none">
25409 \begin_layout Plain Layout
25415 <cell alignment="center" valignment="top" usebox="none">
25418 \begin_layout Plain Layout
25424 <cell alignment="center" valignment="top" usebox="none">
25427 \begin_layout Plain Layout
25433 <cell alignment="center" valignment="top" usebox="none">
25436 \begin_layout Plain Layout
25442 <cell alignment="center" valignment="top" usebox="none">
25445 \begin_layout Plain Layout
25451 <cell alignment="center" valignment="top" usebox="none">
25454 \begin_layout Plain Layout
25460 <cell alignment="center" valignment="top" usebox="none">
25463 \begin_layout Plain Layout
25469 <cell alignment="center" valignment="top" usebox="none">
25472 \begin_layout Plain Layout
25486 \begin_layout Chapter
25487 Names of available colors to be used in layouts
25488 \begin_inset CommandInset label
25490 name "chap:Names-of-colors"
25497 \begin_layout Standard
25498 The colors listed here are the standard colors and the those that you can
25499 adjust in the \SpecialChar LyX
25503 \begin_layout Description
25516 No particular color – clear or default
25519 \begin_layout Description
25523 \begin_layout Description
25527 \begin_layout Description
25531 \begin_layout Description
25535 \begin_layout Description
25539 \begin_layout Description
25543 \begin_layout Description
25547 \begin_layout Description
25551 \begin_layout Description
25552 added_space Added space marker color
25555 \begin_layout Description
25556 addedtext Added text color
25559 \begin_layout Description
25560 appendix Appendix marker color
25563 \begin_layout Description
25564 background Background color
25567 \begin_layout Description
25568 bottomarea Bottom area color
25571 \begin_layout Description
25572 branchlabel Label color for branches
25575 \begin_layout Description
25576 buttonbg Color used for button background
25579 \begin_layout Description
25580 buttonhoverbg Color used for button background under focus
25583 \begin_layout Description
25584 buttonframe Color for inset button frames
25587 \begin_layout Description
25588 changebar Changebar color
25591 \begin_layout Description
25592 changedtextauthor1 Changed text color author 1
25595 \begin_layout Description
25596 changedtextauthor2 Changed text color author 2
25599 \begin_layout Description
25600 changedtextauthor3 Changed text color author 3
25603 \begin_layout Description
25604 changedtextauthor4 Changed text color author 4
25607 \begin_layout Description
25608 changedtextauthor5 Changed text color author 5
25611 \begin_layout Description
25612 collapsable_inset_frame Collapsable insets framecolor
25615 \begin_layout Description
25616 collapsable_inset_text Collapsable insets text color
25619 \begin_layout Description
25620 command Text color for command insets
25623 \begin_layout Description
25624 commandbg Background color for command insets
25627 \begin_layout Description
25628 commandframe Frame color for command insets
25631 \begin_layout Description
25632 comment color for comments
25635 \begin_layout Description
25636 commentbg Background color of comments
25639 \begin_layout Description
25640 cursor Cursor color
25643 \begin_layout Description
25644 deletedtext Deleted text color
25647 \begin_layout Description
25648 deletedtextmodifier Deleted text modifying color
25651 \begin_layout Description
25652 depthbar Color for the depth bars in the margin
25655 \begin_layout Description
25656 eolmarker End of line marker color
25659 \begin_layout Description
25660 error Color of the \SpecialChar LaTeX
25664 \begin_layout Description
25665 footlabel Label color for footnotes
25668 \begin_layout Description
25669 graphicsbg Graphics inset background color
25672 \begin_layout Description
25673 greyedout Label color for greyedout insets
25676 \begin_layout Description
25677 greyedoutbg Background color of greyedout inset
25680 \begin_layout Description
25681 greyedouttext Color for greyedout inset text
25684 \begin_layout Description
25685 indexlabel Label color for index insets
25688 \begin_layout Description
25689 ignore The color is ignored
25692 \begin_layout Description
25693 inherit The color is inherited
25696 \begin_layout Description
25697 inlinecompletion Inline completion color
25700 \begin_layout Description
25701 insetbg Inset marker background color
25704 \begin_layout Description
25705 insetframe Inset marker frame color
25708 \begin_layout Description
25709 language Color for marking foreign language words
25712 \begin_layout Description
25713 latex Text color in \SpecialChar LaTeX
25717 \begin_layout Description
25718 listingsbg Background color of listings inset
25721 \begin_layout Description
25722 marginlabel Label color for margin notes
25725 \begin_layout Description
25726 math Math inset text color
25729 \begin_layout Description
25730 mathbg Math inset background color
25733 \begin_layout Description
25734 mathcorners Math inset frame color not under focus
25737 \begin_layout Description
25738 mathframe Math inset frame color under focus
25741 \begin_layout Description
25742 mathline Math line color
25745 \begin_layout Description
25746 mathmacrobg Macro math inset background color
25749 \begin_layout Description
25750 mathmacroblend Macro math blended color
25753 \begin_layout Description
25754 mathmacroframe Macro math frame color
25757 \begin_layout Description
25758 mathmacrohoverbg Macro math inset background color hovered
25761 \begin_layout Description
25762 mathmacrolabel Macro math label color
25765 \begin_layout Description
25766 mathmacronewarg Macro template color for new parameters
25769 \begin_layout Description
25770 mathmacrooldarg Macro template color for old parameters
25773 \begin_layout Description
25774 newpage New page color
25777 \begin_layout Description
25778 nonunique_inlinecompletion Inline completion color for the non-unique part
25781 \begin_layout Description
25782 notebg Background color of notes
25785 \begin_layout Description
25786 notelabel Label color for notes
25789 \begin_layout Description
25790 pagebreak Page break/line break color
25793 \begin_layout Description
25794 paragraphmarker Color used for the pilcrow sign to mark the end of a paragraph
25797 \begin_layout Description
25798 phantomtext Text color for phantom insets
25801 \begin_layout Description
25802 preview The color used for previews
25805 \begin_layout Description
25806 previewframe Preview frame color
25809 \begin_layout Description
25810 regexpframe Color for regexp frame
25813 \begin_layout Description
25814 selection Background color of selected text
25817 \begin_layout Description
25818 selectiontext Foreground color of selected text
25821 \begin_layout Description
25822 shadedbg Background color of shaded box
25825 \begin_layout Description
25826 special Special chars text color
25829 \begin_layout Description
25830 tabularline Table line color
25833 \begin_layout Description
25834 tabularonoffline Table line color
25837 \begin_layout Description
25838 urllabel Label color for URL insets
25841 \begin_layout Description
25842 urltext Color for URL inset text